ibm x345 w/ serveraid-5i + freebsd ips driver dramas

Clive Lin clive at tongi.org
Sun Sep 21 06:05:59 PDT 2003


On Mon, Sep 15, 2003 at 08:00:46AM +1000, Andrew Snow wrote:
> Problem 2: (the biggest problem)
> 
> While the drive size is reported correctly, the geometry is wrong...
> 472 cyls/254 heads/63 sectors = 7552944 sectors (3687MB) ?!
> 
> When setting the BIOS to "non-extended" (2GB max) support mode, freebsd 
> then thinks this is the geometry:
> 1846 cyls/128 heads/32 sectors = 7561216 sectors (3692MB).
> 
> So I tested a few alternate geometries instead and even though there 
> were no error messages, it seemed to get reset to what FreeBSD was 
> reporting, no matter how many ways I tried to use the fdisk utility.

Hi,

    I have a quick fix for this problem.

--- sys/dev/ips/ips_disk.c~~    Sun Sep 21 19:04:44 2003
+++ sys/dev/ips/ips_disk.c      Sun Sep 21 20:29:18 2003
@@ -139,7 +139,7 @@
                dsc->ipsd_disk.d_fwsectors = IPS_COMP_SECTORS;
        }
        dsc->ipsd_disk.d_sectorsize = IPS_BLKSIZE;
-       dsc->ipsd_disk.d_mediasize = totalsectors * IPS_BLKSIZE;
+       dsc->ipsd_disk.d_mediasize = (long long) totalsectors * IPS_BLKSIZE;
        disk_create(dsc->unit, &dsc->ipsd_disk, 0, NULL, NULL);
 
        device_printf(dev, "Logical Drive  (%dMB)\n",

    The (long long) casting might not be suitable on other
platform. It works for me on a dual XEON x225 box, which has a
ServeRAID 5i.

Regards,
Clive



More information about the freebsd-scsi mailing list