Appears the diff didn't get attached.
Here it is.
Sorry!

---Andrew Sherrod <ixk...@yahoo.com> wrote:
>
> 
> As I now have upgraded at last, I tested the 3.0
> version of the patch. It does appear to make the
> system recognize the proper disk geometry where the
> standard wd.c does not report the proper size.
> Attached is the diff and 2 dmesgs, before and after.
> 
> (Sorry for the length of the dmesg, haven't compeltely
> configured the kernel yet.)
> 
> Any thoughts on the patch?
> 
> Andrew Sherrod
> 
> 
> 
> ---Andrew Sherrod <ixk...@yahoo.com> wrote:
> >
> > I have found several people using IDE disks on newer Award BIOSes have 
> > trouble getting the boot-time probes and installation routines to recognize 
> > the correct disk geometry.
> > 
> > If anyone is running 3.0 (or 2.2.x) on a machine with Award BIOS using IDE 
> > drives with LBA turned off in the kernel configuration, and if you have 
> > trouble getting dmesg/boot probes to recognize the proper disk size, could 
> > you test the attached patch for me?
> > 
> > I would also like to find testers with ANY BIOS that reports a disk size 
> > too small. I think my patch will correct most problems with IDE geometry 
> > showing as smaller than it actually is. (I don't make any claims about 
> > geometries being reported as too large, or SCSI disks...)
> > 
> > Thanks to anyone who can help.
> > 
> > Andrew Sherrod
> > 
> > P.S. I know this is not a really big problem, but it always seemed a bit 
> > insulting that FreeBSD had to rely on DOS boot sectors to get the correct 
> > disk geometry. I would rather that we could identify the correct geometry 
> > without having to rely on another OS.
> > 
> > And, face it, for newbies and those not terribly computer literate, getting 
> > the right geometry during installation is a very nice feature. It is rather 
> > disheartening for a new-comer to find out that their new operating system 
> > can't even identify the correct disk geometry. 
> > 
> > 
> > 
> > 
> > _________________________________________________________
> > DO YOU YAHOO!?
> > Get your free @yahoo.com address at http://mail.yahoo.com
> > >
> > -------------------------------------------------
> > PR: i386/9431
> > -------------------------------------------------
> > 
> > -------------------------------------------------
> > Patch for 2.2.8 (May also workfor 2.2.6/2.2.7)
> > -------------------------------------------------
> > 
> > *** wd.c.2_2_8      Wed Jan 13 21:07:30 1999
> > --- wd.c.original.2_2_8     Wed Jan 13 21:08:24 1999
> > ***************
> > *** 113,122 ****
> >   #define WDOPT_FORCEHD(x)  (((x)&0x0f00)>>8) 
> >   #define WDOPT_MULTIMASK   0x00ff 
> >    
> > - /* This bit mask is used to determine if the drive supports LBA 
> > addressing. */ 
> > -  
> > - #define WDCAP_LBA         0x02 
> > -  
> >   /* 
> >    * This biotab field doubles as a field for the physical unit number on 
> >    * the controller. 
> > --- 113,118 ----
> > ***************
> > *** 1731,1745 ****
> >     du->dk_dd.d_nsectors = wp->wdp_sectors; 
> >     du->dk_dd.d_secpercyl = du->dk_dd.d_ntracks * du->dk_dd.d_nsectors; 
> >     du->dk_dd.d_secperunit = du->dk_dd.d_secpercyl * 
> > du->dk_dd.d_ncylinders; 
> > !  
> > !        /* Check for BIOS LBA flag. This should allow kernel to determine 
> > !      actual disk geometry for diffiuclt BIOSes.   
> > !      This will likely only be of use during initial installation, or 
> > !      perhaps when configuring a new drive. Otherwise, the disk geometry 
> > !      should already be known. -A. Sherrod 01/13/1999*/ 
> > !  
> > !   if ( ( (wp->wdp_capability&WDCAP_LBA) || 
> > !            (wp->wdp_cylinders == 16383 ) ) && 
> >               du->dk_dd.d_secperunit < wp->wdp_lbasize) {  
> >             du->dk_dd.d_secperunit = wp->wdp_lbasize; 
> >             du->dk_dd.d_ncylinders =  
> > --- 1727,1733 ----
> >     du->dk_dd.d_nsectors = wp->wdp_sectors; 
> >     du->dk_dd.d_secpercyl = du->dk_dd.d_ntracks * du->dk_dd.d_nsectors; 
> >     du->dk_dd.d_secperunit = du->dk_dd.d_secpercyl * 
> > du->dk_dd.d_ncylinders; 
> > !   if (wp->wdp_cylinders == 16383 && 
> >               du->dk_dd.d_secperunit < wp->wdp_lbasize) {  
> >             du->dk_dd.d_secperunit = wp->wdp_lbasize; 
> >             du->dk_dd.d_ncylinders =  
> > 
> > -------------------------------------------------
> > Patch for 3.0
> > -------------------------------------------------
> > 
> >  *** wd.c.3_0   Wed Jan 13 12:07:46 1999
> >       --- wd.c.original.3_0  Wed Jan 13 11:17:54 1999
> >       ***************
> >       *** 130,140 ****
> >          */
> >         #define      id_physid id_scsiid
> >         
> >       - /* This bitmask is used to determine if the BIOS flags showing LBA 
> > support
> >       -    are active or inactive */
> >       -    
> >       - #define WDCAP_LBA    0x02
> >       - 
> >         /*
> >          * Drive states.  Used to initialize drive.
> >          */
> >       --- 130,135 ----
> >       ***************
> >       *** 1954,1973 ****
> >                              du->dk_dd.d_ntracks * du->dk_dd.d_nsectors;
> >                      du->dk_dd.d_secperunit = 
> >                              du->dk_dd.d_secpercyl * du->dk_dd.d_ncylinders;
> >       !                      
> >       !              /* If BIOS specifies LBA mode is supported, but LBA 
> > flags
> >       !                 are not set, check if wdp_lbasize is larger than
> >       !                 CHS size. If so, use the lba_size. 
> >       !                 This should fix problems with certain BIOSes (e.g. 
> > Award)
> >       !                 which do not report the correct size when using only
> >       !                 CHS calculations.
> >       !                 This will not force the use of LBA mode. It is only
> >       !                 used to determine disk geometry.
> >       !                 
> >       !                                      -A. Sherrod 01/13/1999 */      
> >                  
> >       !                      
> >       !              if ( ( (wp->wdp_capabilities & WDCAP_LBA) ||
> >       !                   (wp->wdp_cylinders == 16383) ) &&
> >                          du->dk_dd.d_secperunit < wp->wdp_lbasize) {
> >                              du->dk_dd.d_secperunit = wp->wdp_lbasize;
> >                              du->dk_dd.d_ncylinders = 
> >       --- 1949,1955 ----
> >                              du->dk_dd.d_ntracks * du->dk_dd.d_nsectors;
> >                      du->dk_dd.d_secperunit = 
> >                              du->dk_dd.d_secpercyl * du->dk_dd.d_ncylinders;
> >       !              if (wp->wdp_cylinders == 16383 &&
> >                          du->dk_dd.d_secperunit < wp->wdp_lbasize) {
> >                              du->dk_dd.d_secperunit = wp->wdp_lbasize;
> >                              du->dk_dd.d_ncylinders = 
> > 
> > -------------------------------------------------
> > dmesg from 2.2.8 system before patch
> > -------------------------------------------------
> > 
> > 
> >       Copyright (c) 1992-1998 FreeBSD Inc.
> >       Copyright (c) 1982, 1986, 1989, 1991, 1993
> >              The Regents of the University of California.  All rights 
> > reserved.
> >       
> >       FreeBSD 2.2.8-RELEASE #6: Wed Jan 13 21:11:20 EST 1999
> >           r...@hal9000.yaldabaoth.com:/usr/src/sys/compile/HAL
> >       CPU: AMD-K6(tm) 3D processor (350.80-MHz 586-class CPU)
> >         Origin = "AuthenticAMD"  Id = 0x580  Stepping=0
> >         Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
> >       real memory  = 201326592 (196608K bytes)
> >       avail memory = 194924544 (190356K bytes)
> >       Probing for devices on PCI bus 0:
> >       chip0 <generic PCI bridge (vendor=1106 device=0597 subclass=0)> rev 4 
> > on pci0:0:0
> >       chip1 <generic PCI bridge (vendor=1106 device=8598 subclass=4)> rev 0 
> > on pci0:1:0
> >       chip2 <generic PCI bridge (vendor=1106 device=0586 subclass=1)> rev 
> > 65 on pci0:7:0
> >       pci0:7:1: VIA Technologies, device=0x0571, class=storage (ide) [no 
> > driver assigned]
> >       chip3 <generic PCI bridge (vendor=1106 device=3040 subclass=0)> rev 
> > 16 on pci0:7:3
> >       xl0 <3Com 3c905B Fast Etherlink XL 10/100BaseTX> rev 48 int a irq 11 
> > on pci0:10:0
> >       xl0: Ethernet address: 00:10:5a:20:9b:68
> >       xl0: autoneg not complete, no carrier (forcing half-duplex, 10Mbps)
> >       Probing for devices on PCI bus 1:
> >       Probing for devices on the ISA bus:
> >       sc0 at 0x60-0x6f irq 1 on motherboard
> >       sc0: VGA color <16 virtual consoles, flags=0x0>
> >       sio0: configured irq 4 not in bitmap of probed irqs 0
> >       sio0 at 0x3f8-0x3ff irq 4 on isa
> >       sio0: type 8250
> >       sio1 at 0x2f8-0x2ff irq 3 on isa
> >       sio1: type 16550A
> >       lpt0 at 0x378-0x37f irq 7 on isa
> >       lpt0: Interrupt-driven port
> >       lp0: TCP/IP capable interface
> >       psm0 at 0x60-0x64 irq 12 on motherboard
> >       psm0: model Generic PS/2 mouse, device ID 0
> >       fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
> >       fdc0: FIFO enabled, 8 bytes threshold
> >       fd0: 1.44MB 3.5in
> >       wdc0 at 0x1f0-0x1f7 irq 14 on isa
> >       wdc0: unit 0 (wd0): <QUANTUM FIREBALL SE8.4A>
> >       wd0: 8063MB (16514064 sectors), 16383 cyls, 16 heads, 63 S/T, 512 B/S
> >       wdc0: unit 1 (wd1): <WDC AC33100H>
> >       wd1: 2014MB (4124736 sectors), 4092 cyls, 16 heads, 63 S/T, 512 B/S
> >       wdc1 at 0x170-0x177 irq 15 on isa
> >       wdc1: unit 0 (wd2): <Maxtor 84320D4>
> >       wd2: 1888MB (3866940 sectors), 4092 cyls, 15 heads, 63 S/T, 512 B/S
> >       wdc1: unit 1 (atapi): <FX322M/w03>, removable, intr, dma, iordis
> >       wcd0: 5512KB/sec, 256KB cache, audio play, 255 volume levels, 
> > ejectable tray
> >       wcd0: no disc inside, unlocked
> >       mcd0 not found at 0x300
> >       npx0 flags 0x1 on motherboard
> >       npx0: INT 16 interface
> >       
> > -------------------------------------------------
> > dmesg from 2.2.8 system after patch
> > -------------------------------------------------
> > 
> > 
> >       Copyright (c) 1992-1998 FreeBSD Inc.
> >       Copyright (c) 1982, 1986, 1989, 1991, 1993
> >              The Regents of the University of California.  All rights 
> > reserved.
> >       
> >       FreeBSD 2.2.8-RELEASE #7: Wed Jan 13 21:26:09 EST 1999
> >           r...@hal9000.yaldabaoth.com:/usr/src/sys/compile/HAL
> >       CPU: AMD-K6(tm) 3D processor (350.80-MHz 586-class CPU)
> >         Origin = "AuthenticAMD"  Id = 0x580  Stepping=0
> >         Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
> >       real memory  = 201326592 (196608K bytes)
> >       avail memory = 194924544 (190356K bytes)
> >       Probing for devices on PCI bus 0:
> >       chip0 <generic PCI bridge (vendor=1106 device=0597 subclass=0)> rev 4 
> > on pci0:0:0
> >       chip1 <generic PCI bridge (vendor=1106 device=8598 subclass=4)> rev 0 
> > on pci0:1:0
> >       chip2 <generic PCI bridge (vendor=1106 device=0586 subclass=1)> rev 
> > 65 on pci0:7:0
> >       pci0:7:1: VIA Technologies, device=0x0571, class=storage (ide) [no 
> > driver assigned]
> >       chip3 <generic PCI bridge (vendor=1106 device=3040 subclass=0)> rev 
> > 16 on pci0:7:3
> >       xl0 <3Com 3c905B Fast Etherlink XL 10/100BaseTX> rev 48 int a irq 11 
> > on pci0:10:0
> >       xl0: Ethernet address: 00:10:5a:20:9b:68
> >       xl0: autoneg not complete, no carrier (forcing half-duplex, 10Mbps)
> >       Probing for devices on PCI bus 1:
> >       Probing for devices on the ISA bus:
> >       sc0 at 0x60-0x6f irq 1 on motherboard
> >       sc0: VGA color <16 virtual consoles, flags=0x0>
> >       sio0: configured irq 4 not in bitmap of probed irqs 0
> >       sio0 at 0x3f8-0x3ff irq 4 on isa
> >       sio0: type 8250
> >       sio1 at 0x2f8-0x2ff irq 3 on isa
> >       sio1: type 16550A
> >       lpt0 at 0x378-0x37f irq 7 on isa
> >       lpt0: Interrupt-driven port
> >       lp0: TCP/IP capable interface
> >       psm0 at 0x60-0x64 irq 12 on motherboard
> >       psm0: model Generic PS/2 mouse, device ID 0
> >       fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
> >       fdc0: FIFO enabled, 8 bytes threshold
> >       fd0: 1.44MB 3.5in
> >       wdc0 at 0x1f0-0x1f7 irq 14 on isa
> >       wdc0: unit 0 (wd0): <QUANTUM FIREBALL SE8.4A>
> >       wd0: 8063MB (16514064 sectors), 16383 cyls, 16 heads, 63 S/T, 512 B/S
> >       wdc0: unit 1 (wd1): <WDC AC33100H>
> >       wd1: 3020MB (6185088 sectors), 6136 cyls, 16 heads, 63 S/T, 512 B/S
> >       wdc1 at 0x170-0x177 irq 15 on isa
> >       wdc1: unit 0 (wd2): <Maxtor 84320D4>
> >       wd2: 4120MB (8439184 sectors), 8930 cyls, 15 heads, 63 S/T, 512 B/S
> >       wdc1: unit 1 (atapi): <FX322M/w03>, removable, intr, dma, iordis
> >       wcd0: 5512KB/sec, 256KB cache, audio play, 255 volume levels, 
> > ejectable tray
> >       wcd0: no disc inside, unlocked
> >       mcd0 not found at 0x300
> >       npx0 flags 0x1 on motherboard
> >       npx0: INT 16 interface
> > 
> 
> _________________________________________________________
> DO YOU YAHOO!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> >
> >
> Copyright (c) 1992-1998 FreeBSD Inc.
> Copyright (c) 1982, 1986, 1989, 1991, 1993
>       The Regents of the University of California. All rights reserved.
> FreeBSD 3.0-RELEASE #11: Mon Jan 18 19:53:18 EST 1999
>     r...@hal9000.no_net.none:/usr/src/sys/compile/HAL_NEW
> Timecounter "i8254"  frequency 1193182 Hz  cost 3863 ns
> CPU: AMD-K6(tm) 3D processor (350.80-MHz 586-class CPU)
>   Origin = "AuthenticAMD"  Id = 0x580  Stepping=0
>   Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
> real memory  = 201326592 (196608K bytes)
> avail memory = 192839680 (188320K bytes)
> Probing for devices on PCI bus 0:
> chip0: <VIA 82C597 (Apollo VP3) system controller> rev 0x04 on pci0.0.0
> chip1: <PCI to PCI bridge (vendor=1106 device=8598)> rev 0x00 on pci0.1.0
> chip2: <VIA 82C586 PCI-ISA bridge> rev 0x41 on pci0.7.0
> ide_pci0: <VIA 82C586x (Apollo) Bus-master IDE controller> rev 0x06 on 
> pci0.7.1
> chip3: <VIA 82C586B ACPI interface> rev 0x10 on pci0.7.3
> xl0: <3Com 3c905B Fast Etherlink XL 10/100BaseTX> rev 0x30 int a irq 11 on 
> pci0.10.0
> xl0: Ethernet address: 00:10:5a:20:9b:68
> xl0: autoneg not complete, no carrier (forcing half-duplex, 10Mbps)
> Probing for devices on PCI bus 1:
> Probing for devices on the ISA bus:
> sc0 at 0x60-0x6f irq 1 on motherboard
> sc0: VGA color <16 virtual consoles, flags=0x0>
> ed0 not found at 0x280
> fe0 not found at 0x300
> sio0: configured irq 4 not in bitmap of probed irqs 0
> sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
> sio0: type 8250
> sio1 at 0x2f8-0x2ff irq 3 on isa
> sio1: type 16550A
> lpt0 at 0x378-0x37f irq 7 on isa
> lpt0: Interrupt-driven port
> lp0: TCP/IP capable interface
> psm0 at 0x60-0x64 irq 12 on motherboard
> psm0: model Generic PS/2 mouse, device ID 0
> fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
> fdc0: FIFO enabled, 8 bytes threshold
> fd0: 1.44MB 3.5in
> wdc0 at 0x1f0-0x1f7 irq 14 on isa
> wdc0: unit 0 (wd0): <QUANTUM FIREBALL SE8.4A>
> wd0: 8063MB (16514064 sectors), 16383 cyls, 16 heads, 63 S/T, 512 B/S
> wdc0: unit 1 (wd1): <WDC AC33100H>
> wd1: 2014MB (4124736 sectors), 4092 cyls, 16 heads, 63 S/T, 512 B/S
> wdc1 at 0x170-0x177 irq 15 on isa
> wdc1: unit 0 (wd2): <Maxtor 84320D4>
> wd2: 1888MB (3866940 sectors), 4092 cyls, 15 heads, 63 S/T, 512 B/S
> wdc1: unit 1 (atapi): <FX322M/w03>, removable, intr, dma, iordis
> wcd0: 5512Kb/sec, 256Kb cache, audio play, 255 volume levels, ejectable tray
> wcd0: no disc inside, unlocked
> wt0 not found at 0x300
> mcd0 not found at 0x300
> matcdc0 not found at 0x230
> scd0 not found at 0x230
> ie0: unknown board_id: f000
> ie0 not found at 0x300
> ep0 not found at 0x300
> ex0 not found
> le0 not found at 0x300
> lnc0 not found at 0x280
> ze0 not found at 0x300
> zp0 not found at 0x300
> cs0 not found at 0x300
> adv0 not found at 0x330
> bt0 not found at 0x134
> aha0 not found at 0x134
> npx0 on motherboard
> npx0: INT 16 interface
> changing root device to wd0s1a
> fd0c: hard error writing fsbn 1 of 1-3 (No status)
> fd0c: hard error writing fsbn 761 (No status)
> fd0c: hard error writing fsbn 10 of 10-12 (No status)
> fd0c: hard error writing fsbn 22 (No status)
> >
> Copyright (c) 1992-1998 FreeBSD Inc.
> Copyright (c) 1982, 1986, 1989, 1991, 1993
>       The Regents of the University of California. All rights reserved.
> FreeBSD 3.0-RELEASE #10: Mon Jan 18 19:47:08 EST 1999
>     r...@hal9000.no_net.none:/usr/src/sys/compile/HAL_NEW
> Timecounter "i8254"  frequency 1193182 Hz  cost 3863 ns
> CPU: AMD-K6(tm) 3D processor (350.80-MHz 586-class CPU)
>   Origin = "AuthenticAMD"  Id = 0x580  Stepping=0
>   Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
> real memory  = 201326592 (196608K bytes)
> avail memory = 192839680 (188320K bytes)
> Probing for devices on PCI bus 0:
> chip0: <VIA 82C597 (Apollo VP3) system controller> rev 0x04 on pci0.0.0
> chip1: <PCI to PCI bridge (vendor=1106 device=8598)> rev 0x00 on pci0.1.0
> chip2: <VIA 82C586 PCI-ISA bridge> rev 0x41 on pci0.7.0
> ide_pci0: <VIA 82C586x (Apollo) Bus-master IDE controller> rev 0x06 on 
> pci0.7.1
> chip3: <VIA 82C586B ACPI interface> rev 0x10 on pci0.7.3
> xl0: <3Com 3c905B Fast Etherlink XL 10/100BaseTX> rev 0x30 int a irq 11 on 
> pci0.10.0
> xl0: Ethernet address: 00:10:5a:20:9b:68
> xl0: autoneg not complete, no carrier (forcing half-duplex, 10Mbps)
> Probing for devices on PCI bus 1:
> Probing for devices on the ISA bus:
> sc0 at 0x60-0x6f irq 1 on motherboard
> sc0: VGA color <16 virtual consoles, flags=0x0>
> ed0 not found at 0x280
> fe0 not found at 0x300
> sio0: configured irq 4 not in bitmap of probed irqs 0
> sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
> sio0: type 8250
> sio1 at 0x2f8-0x2ff irq 3 on isa
> sio1: type 16550A
> lpt0 at 0x378-0x37f irq 7 on isa
> lpt0: Interrupt-driven port
> lp0: TCP/IP capable interface
> psm0 at 0x60-0x64 irq 12 on motherboard
> psm0: model Generic PS/2 mouse, device ID 0
> fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
> fdc0: FIFO enabled, 8 bytes threshold
> fd0: 1.44MB 3.5in
> wdc0 at 0x1f0-0x1f7 irq 14 on isa
> wdc0: unit 0 (wd0): <QUANTUM FIREBALL SE8.4A>
> wd0: 8063MB (16514064 sectors), 16383 cyls, 16 heads, 63 S/T, 512 B/S
> Using A. Sherrod's patch of 01/18/1999.
> wdc0: unit 1 (wd1): <WDC AC33100H>
> wd1: 3020MB (6185088 sectors), 6136 cyls, 16 heads, 63 S/T, 512 B/S
> Using A. Sherrod's patch of 01/18/1999.
> wdc1 at 0x170-0x177 irq 15 on isa
> wdc1: unit 0 (wd2): <Maxtor 84320D4>
> wd2: 4120MB (8439184 sectors), 8930 cyls, 15 heads, 63 S/T, 512 B/S
> Using A. Sherrod's patch of 01/18/1999.
> wdc1: unit 1 (atapi): <FX322M/w03>, removable, intr, dma, iordis
> wcd0: 5512Kb/sec, 256Kb cache, audio play, 255 volume levels, ejectable tray
> wcd0: no disc inside, unlocked
> wt0 not found at 0x300
> mcd0 not found at 0x300
> matcdc0 not found at 0x230
> scd0 not found at 0x230
> ie0: unknown board_id: f000
> ie0 not found at 0x300
> ep0 not found at 0x300
> ex0 not found
> le0 not found at 0x300
> lnc0 not found at 0x280
> ze0 not found at 0x300
> zp0 not found at 0x300
> cs0 not found at 0x300
> adv0 not found at 0x330
> bt0 not found at 0x134
> aha0 not found at 0x134
> npx0 on motherboard
> npx0: INT 16 interface
> changing root device to wd0s1a
> 

_________________________________________________________
DO YOU YAHOO!?
Get your free @yahoo.com address at http://mail.yahoo.com
*** wd.c        Mon Jan 18 19:39:22 1999
--- wd.c.original       Mon Jan 18 18:24:14 1999
***************
*** 120,131 ****
  #define WDOPT_MULTIMASK       0x00ff
  
  /*
- * This define is used to determine if the drive is LBA capable
- */
- 
- #define WDCAP_LBA     0x02
- 
- /*
   * This biotab field doubles as a field for the physical unit number on
   * the controller.
   */
--- 120,125 ----
***************
*** 516,523 ****
                               du->dk_dd.d_nsectors,
                               du->dk_dd.d_secsize);
  
-                       printf("Using A. Sherrod's patch of 01/18/1999.\n");
- 
                        if (bootverbose) {
                            wp = &du->dk_params;
                            printf( "wd%d: ATA INQUIRE valid = %04x, "
--- 510,515 ----
***************
*** 1940,1960 ****
                        du->dk_dd.d_ntracks * du->dk_dd.d_nsectors;
                du->dk_dd.d_secperunit = 
                        du->dk_dd.d_secpercyl * du->dk_dd.d_ncylinders;
! 
!               /*
!               * tThe following change determines if the disk
!               * is LBA capable. If it is, and the lba size is
!               * larger than the CHS size, use the LBA size.
!               * This should allow certain difficult BIOSES
!               * (eg. Award) which do not report the correct
!               * CHS size to still give an accurate measure
!               * of disk size,w ithout forcing the user to
!               * enable LBA mode.
!               * A. Sherrod (01/18/1999)
!               */
! 
!               if ( ( (wp->wdp_capability & WDCAP_LBA) ||
!                  (wp->wdp_cylinders == 16383) ) &&
                    du->dk_dd.d_secperunit < wp->wdp_lbasize) {
                        du->dk_dd.d_secperunit = wp->wdp_lbasize;
                        du->dk_dd.d_ncylinders = 
--- 1932,1938 ----
                        du->dk_dd.d_ntracks * du->dk_dd.d_nsectors;
                du->dk_dd.d_secperunit = 
                        du->dk_dd.d_secpercyl * du->dk_dd.d_ncylinders;
!               if (wp->wdp_cylinders == 16383 &&
                    du->dk_dd.d_secperunit < wp->wdp_lbasize) {
                        du->dk_dd.d_secperunit = wp->wdp_lbasize;
                        du->dk_dd.d_ncylinders = 

Reply via email to