Skip to contentSkip to conversation

Different geometry settings for identical drives

DISCUSSION Petr Vandrovec 2 participants 2 messages May 30, 2003

lore
Share & tools
lore
#0 lore raw
Quoted 13 lines · Jeffrey Baker

hda: host protected area => 1
hda: setmax LBA 234441648, native 234375000
hda: 234375000 sectors (120000 MB) w/8192KiB Cache, CHS=232514/16/63, UDMA(100)
hdc: attached ide-disk driver.
hdc: host protected area => 1
hdc: setmax LBA 234441648, native 234375000
hdc: 234375000 sectors (120000 MB) w/8192KiB Cache, CHS=232514/16/63, UDMA(100)
hdd: attached ide-cdrom driver.
hdd: ATAPI 24X CD-ROM drive, 128kB Cache, UDMA(33)

The result is that hda works fine but hdc doesn't. When I try to mke2fs on the latter I see:

Quoted 6 lines

hdc: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdc: dma_intr: error=0x10 { SectorIdNotFound }, LBAsect=234441583, sector=232343808

You can see that LBAsect (234441583) is higher than the "native" sectors quoted by the kernel (234375000, difference 66583 sectors). Why are these two disks being addressed differently?

As far as I can tell, it has nothing to do with disk geometry.

Someone just cut couple of sectors at the end from disk, you compiled your kernel without CONFIG_IDEDISK_STROKE, but still kernel for some reason reports block size as if idedisk_set_max_address() was invoked.

I do not see how this could happen with 2.4.21-rc3... Can you recheck that you are using 2.4.21-rc3 without any additional patches?
Petr Vandrovec [email protected]

#1 lore raw
Quoted 22 lines · Petr Vandrovec
Quoted 13 lines · Jeffrey Baker

hda: host protected area => 1
hda: setmax LBA 234441648, native 234375000
hda: 234375000 sectors (120000 MB) w/8192KiB Cache, CHS=232514/16/63, UDMA(100)
hdc: attached ide-disk driver.
hdc: host protected area => 1
hdc: setmax LBA 234441648, native 234375000
hdc: 234375000 sectors (120000 MB) w/8192KiB Cache, CHS=232514/16/63, UDMA(100)
hdd: attached ide-cdrom driver.
hdd: ATAPI 24X CD-ROM drive, 128kB Cache, UDMA(33)

The result is that hda works fine but hdc doesn't. When I try to mke2fs on the latter I see:

Quoted 6 lines

hdc: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdc: dma_intr: error=0x10 { SectorIdNotFound }, LBAsect=234441583, sector=232343808

You can see that LBAsect (234441583) is higher than the "native" sectors quoted by the kernel (234375000, difference 66583 sectors). Why are these two disks being addressed differently?

Quoted 8 lines

As far as I can tell, it has nothing to do with disk geometry.

Someone just cut couple of sectors at the end from disk, you compiled your kernel without CONFIG_IDEDISK_STROKE, but still kernel for some reason reports block size as if idedisk_set_max_address() was invoked.

I do not see how this could happen with 2.4.21-rc3... Can you recheck that you are using 2.4.21-rc3 without any additional patches?

I'm running 2.4.21-rc3 with the latest patch from ftp.x86-64.org:

prime:/usr/src# uname -r
2.4.21-rc3

The x86-64.org patch doesn't touch much outside of arch/x86_64. You are right that CONFIG_IDE_STROKE is off:

prime:/usr/src/linux# grep IDE .config | sort | tac  
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_IDEDMA_AUTO=y
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE_MODES=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_IDEFLOPPY=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDE=y
# IDE, ATA and ATAPI Block devices
# CONFIG_VIDEO_SELECT is not set
# CONFIG_VIDEO_DEV is not set
# CONFIG_PARIDE is not set
# CONFIG_IDE_TASK_IOCTL is not set
# CONFIG_IDE_CHIPSETS is not set
# CONFIG_IDEPCI_SHARE_IRQ is not set
# CONFIG_IDEDMA_PCI_WIP is not set
# CONFIG_IDEDMA_ONLYDISK is not set
# CONFIG_IDEDMA_IVB is not set
# CONFIG_IDEDISK_STROKE is not set
# CONFIG_IDEDISK_MULTI_MODE is not set
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
# CONFIG_BLK_DEV_IDECS is not set
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_AMD74XX_OVERRIDE is not set
# ATA/IDE/MFM/RLL support

-jwb