Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4e5200334e03e5620aa19d538300c13db270a063
Commit:     4e5200334e03e5620aa19d538300c13db270a063
Parent:     e41bd3e854e3536de847d5831c0e25a47f394885
Author:     Mark Lord <[EMAIL PROTECTED]>
AuthorDate: Tue Dec 11 12:58:05 2007 -0500
Committer:  Jeff Garzik <[EMAIL PROTECTED]>
CommitDate: Mon Dec 17 20:33:12 2007 -0500

    sata_mv: improve warnings about Highpoint RocketRAID 23xx cards
    
    Improve the existing boot/load time warnings from sata_mv
    for Highpoint RocketRAID 23xx cards, based on new knowledge
    about where the BIOS likes to overwrite sectors with metadata.
    
    Harmless to us, but very useful for end users.
    
    Signed-off-by: Mark Lord <[EMAIL PROTECTED]>
    Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>
---
 drivers/ata/sata_mv.c |   30 +++++++++++++++++++++++++-----
 1 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
index fe0105d..37b850a 100644
--- a/drivers/ata/sata_mv.c
+++ b/drivers/ata/sata_mv.c
@@ -2506,11 +2506,31 @@ static int mv_chip_id(struct ata_host *host, unsigned 
int board_idx)
                if (pdev->vendor == PCI_VENDOR_ID_TTI &&
                    (pdev->device == 0x2300 || pdev->device == 0x2310))
                {
-                       printk(KERN_WARNING "sata_mv: Highpoint RocketRAID BIOS"
-                               " will CORRUPT DATA on attached drives when"
-                               " configured as \"Legacy\".  BEWARE!\n");
-                       printk(KERN_WARNING "sata_mv: Use BIOS \"JBOD\" volumes"
-                               " instead for safety.\n");
+                       /*
+                        * 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.
+                        */
+                       printk(KERN_WARNING DRV_NAME ": Highpoint RocketRAID"
+                               " BIOS CORRUPTS DATA on all attached drives,"
+                               " regardless of if/how they are configured."
+                               " BEWARE!\n");
+                       printk(KERN_WARNING DRV_NAME ": 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");
                }
        case chip_6042:
                hpriv->ops = &mv6xxx_ops;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to