======Hardware - Highpoint - RocketRAID - Notes======
=====2314=====
Tested on PCLinuxOS 2022.12:
* RocketRAID 2314 firmware v1.12.
* RocketRAID 2314 is recognised out-of-the-box without installing additional drivers.
* Disks attached to RocketRAID are recognised.
* After creating a RAID0+1 array on the RocketRAID PCLinuxOS still sees the individual drives instead of the RAID set.
* dmesg shows: sata_mv: Highpoint RocketRAID BIOS CORRUPTS DATA on all attached
drives, regardless of if/how they are configured. BEWARE!
sata_mv: For data safety, do not use sectors 8-9 on "Legacy" drives,
and avoid the final two gigabytes on all RocketRAID BIOS initialized
drives.
As stated: use partitions up until the last 2 GB of the disk.
Rationale:
* Re: sata_mv and Highpoint RocketRAID 230x, corruption?
2010-10-20 20:03 sata_mv and Highpoint RocketRAID 230x, corruption? Mathias Burén
@ 2010-10-23 1:59 ` Mark Lord
2010-10-23 2:21 ` Daniel Taylor
2010-10-23 12:57 ` Mathias Burén
0 siblings, 2 replies; 12+ messages in thread
From: Mark Lord @ 2010-10-23 1:59 UTC (permalink / raw)
To: Mathias Burén; +Cc: linux-kernel
On 10-10-20 04:03 PM, Mathias Burén wrote:
..
> I'm currently not using the BIOS of the raid controller for anything
> else then staggered disk spinup. The HDD partitions start at sector
> 2048 (to get a 1MB alignment since they're 4k sector drives, WD20EARS)
> and end at the last sector.
> What I'm worried about is the corruption mentioned in dmesg, is this
> explained somewhere in more detail? Google didn't reveal much. Am I in
> danger?
Yes. Just repartition the drives to avoid the final 2GB of each drive,
and then you'll be safe.
The RocketRaid BIOS that I examined here a couple of years ago,
liked to write "metadata" over top of whatever was in certain sectors
near the end of the drive. EVEN FOR NON-RAID DRIVES.
I think it was the last even (power-of-two) multiple of 1GB or something,
so if you leave the final 2GB untouched, you're guaranteed to avoid it.
Thus the recommendation.
Cheers
[[https://lore.kernel.org/lkml/AANLkTik02CcVyzn+fMH+VxuUmwwNLZq9qM0MPz81E+1h@mail.gmail.com/T/|linux-kernel.vger.kernel.org archive mirror - * sata_mv and Highpoint RocketRAID 230x, corruption?]]
From https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/ata/sata_mv.c:
case chip_7042:
hp_flags |= MV_HP_PCIE | MV_HP_CUT_THROUGH;
if (pdev->vendor == PCI_VENDOR_ID_TTI &&
(pdev->device == 0x2300 || pdev->device == 0x2310))
{
/*
* Highpoint RocketRAID PCIe 23xx series cards:
*
* Unconfigured drives are treated as "Legacy"
* by the BIOS, and it overwrites sector 8 with
* a "Lgcy" metadata block prior to Linux boot.
*
* Configured drives (RAID or JBOD) leave sector 8
* alone, but instead overwrite a high numbered
* sector for the RAID metadata. This sector can
* be determined exactly, by truncating the physical
* drive capacity to a nice even GB value.
*
* RAID metadata is at: (dev->n_sectors & ~0xfffff)
*
* Warn the user, lest they think we're just buggy.
*/
dev_warn(&pdev->dev, "Highpoint RocketRAID"
" BIOS CORRUPTS DATA on all attached drives,"
" regardless of if/how they are configured."
" BEWARE!\n");
dev_warn(&pdev->dev, "For data safety, do not"
" use sectors 8-9 on \"Legacy\" drives,"
" and avoid the final two gigabytes on"
" all RocketRAID BIOS initialized drives.\n");
}