2006-05-16 20:30:14

by George Nychis

[permalink] [raw]
Subject: need help booting from SATA in 2.4.32

Hi,

I've booted from a SATA drive in 2.4.32 before, but for some reason
2.4.32 will not recognize this disk. It is recognized when I boot 2.6.9
though.

It uses the ata_piix module in both kernels. Whenever I boot 2.6.9 I see:
----------------------------------------------------------------------
SCSI subsystem initialized
ACPI: PCI interrupt 0000:00:1f.2[B] -> GSI 7 (level, low) -> IRQ 7
ata: 0x170 IDE port busy
ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xBFA0 irq 14
ata1: dev 0 ATA, max UDMA/100, 78140160 sectors:
ata1(0): applying bridge limits
ata1: dev 0 configured for UDMA/100
scsi0 : ata_piix
Vendor: ATA Model: FUJITSU MHV2040A Rev: 0000
Type: Direct-Access ANSI SCSI revision: 05
SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
SCSI device sda: drive cache: write back
sda: sda1 sda2 sda3 sda4 < sda5 >
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
------------------------------------------------------------------------

However in 2.4.32 all i see is:
----------------------------
SCSI subsystem initialized
----------------------------

I am positive that my 2.4.32 has been compiled with ata_piix as a
module, and it does reside in /lib/modules/2.4.32/kernel/driver/scsi/

Any clues?

Thanks!
George


2006-05-16 20:39:23

by Willy Tarreau

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32

On Tue, May 16, 2006 at 04:31:52PM -0400, George Nychis wrote:
> Hi,
>
> I've booted from a SATA drive in 2.4.32 before, but for some reason
> 2.4.32 will not recognize this disk. It is recognized when I boot 2.6.9
> though.
>
> It uses the ata_piix module in both kernels. Whenever I boot 2.6.9 I see:
> ----------------------------------------------------------------------
> SCSI subsystem initialized
> ACPI: PCI interrupt 0000:00:1f.2[B] -> GSI 7 (level, low) -> IRQ 7
> ata: 0x170 IDE port busy
> ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xBFA0 irq 14
> ata1: dev 0 ATA, max UDMA/100, 78140160 sectors:
> ata1(0): applying bridge limits
> ata1: dev 0 configured for UDMA/100
> scsi0 : ata_piix
> Vendor: ATA Model: FUJITSU MHV2040A Rev: 0000
> Type: Direct-Access ANSI SCSI revision: 05
> SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
> SCSI device sda: drive cache: write back
> sda: sda1 sda2 sda3 sda4 < sda5 >
> Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
> device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
> ------------------------------------------------------------------------
>
> However in 2.4.32 all i see is:
> ----------------------------
> SCSI subsystem initialized
> ----------------------------
>
> I am positive that my 2.4.32 has been compiled with ata_piix as a
> module, and it does reside in /lib/modules/2.4.32/kernel/driver/scsi/
>
> Any clues?

Could you retry with it statically linked in the kernel ? I vaguely
remember that if the original PIIX4 driver registers the device first,
then ata_piix cannot get it. You could also ensure that you have
properly removed CONFIG_IDE_PIIX4 (I believe it's called like this).

> Thanks!
> George

Regards,
Willy

2006-05-16 21:18:10

by George Nychis

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32



Willy Tarreau wrote:
> On Tue, May 16, 2006 at 04:31:52PM -0400, George Nychis wrote:
>> Hi,
>>
>> I've booted from a SATA drive in 2.4.32 before, but for some reason
>> 2.4.32 will not recognize this disk. It is recognized when I boot 2.6.9
>> though.
>>
>> It uses the ata_piix module in both kernels. Whenever I boot 2.6.9 I see:
>> ----------------------------------------------------------------------
>> SCSI subsystem initialized
>> ACPI: PCI interrupt 0000:00:1f.2[B] -> GSI 7 (level, low) -> IRQ 7
>> ata: 0x170 IDE port busy
>> ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xBFA0 irq 14
>> ata1: dev 0 ATA, max UDMA/100, 78140160 sectors:
>> ata1(0): applying bridge limits
>> ata1: dev 0 configured for UDMA/100
>> scsi0 : ata_piix
>> Vendor: ATA Model: FUJITSU MHV2040A Rev: 0000
>> Type: Direct-Access ANSI SCSI revision: 05
>> SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
>> SCSI device sda: drive cache: write back
>> sda: sda1 sda2 sda3 sda4 < sda5 >
>> Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
>> device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
>> ------------------------------------------------------------------------
>>
>> However in 2.4.32 all i see is:
>> ----------------------------
>> SCSI subsystem initialized
>> ----------------------------
>>
>> I am positive that my 2.4.32 has been compiled with ata_piix as a
>> module, and it does reside in /lib/modules/2.4.32/kernel/driver/scsi/
>>
>> Any clues?
>
> Could you retry with it statically linked in the kernel ? I vaguely
> remember that if the original PIIX4 driver registers the device first,
> then ata_piix cannot get it. You could also ensure that you have
> properly removed CONFIG_IDE_PIIX4 (I believe it's called like this).
>
>> Thanks!
>> George
>
> Regards,
> Willy
>
>

Thanks for the help Willy,

I think you're on to something. I noticed this during the 2.4.32 kernel
bootup:
-----------------------------------------------------------------
hda: FUJITSU MHV2040AH, ATA DISK drive
hda: attached ide-disk driver.
hda: host protected area => 1
hda: 78140160 sectors (40008 MB) w/8192KiB Cache, CHS=4864/255/63
-----------------------------------------------------------------

However i can't find CONFIG_IDE_PIIX4 in .config anyhwere. I did find
CONFIG_BLK_DEV_PIIX so i tried disabling it, but the device still
registered under hda.

If i build it statically, i get this error trying to boot:
----------------------------------------------------------------------
kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
Kernel panic: VFS: Unable to mount root fs on 00:00
----------------------------------------------------------------------

AND it still finds the drive as /dev/hda

Therefore I built it as a module and put "alias scsi_hostadapter
ata_piix" in /etc/modules.conf" to atleast eliminate the
scsi_hostadapter thing

This is FC3, and my root is actually an LVM, so i get:
NVS: Cannot open root device "VolGroup00/LogVol00" or 00:00

So i'm thinking once the drive shows up as /dev/sda, the LVM will be
proper, and VolGroup00/LogVol00 will show up.

Any more ideas?

Thanks!
George

2006-05-17 03:48:21

by Willy Tarreau

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32

On Tue, May 16, 2006 at 05:18:06PM -0400, George Nychis wrote:
>
>
> Willy Tarreau wrote:
> > On Tue, May 16, 2006 at 04:31:52PM -0400, George Nychis wrote:
> >> Hi,
> >>
> >> I've booted from a SATA drive in 2.4.32 before, but for some reason
> >> 2.4.32 will not recognize this disk. It is recognized when I boot 2.6.9
> >> though.
> >>
> >> It uses the ata_piix module in both kernels. Whenever I boot 2.6.9 I see:
> >> ----------------------------------------------------------------------
> >> SCSI subsystem initialized
> >> ACPI: PCI interrupt 0000:00:1f.2[B] -> GSI 7 (level, low) -> IRQ 7
> >> ata: 0x170 IDE port busy
> >> ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xBFA0 irq 14
> >> ata1: dev 0 ATA, max UDMA/100, 78140160 sectors:
> >> ata1(0): applying bridge limits
> >> ata1: dev 0 configured for UDMA/100
> >> scsi0 : ata_piix
> >> Vendor: ATA Model: FUJITSU MHV2040A Rev: 0000
> >> Type: Direct-Access ANSI SCSI revision: 05
> >> SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
> >> SCSI device sda: drive cache: write back
> >> sda: sda1 sda2 sda3 sda4 < sda5 >
> >> Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
> >> device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
> >> ------------------------------------------------------------------------
> >>
> >> However in 2.4.32 all i see is:
> >> ----------------------------
> >> SCSI subsystem initialized
> >> ----------------------------
> >>
> >> I am positive that my 2.4.32 has been compiled with ata_piix as a
> >> module, and it does reside in /lib/modules/2.4.32/kernel/driver/scsi/
> >>
> >> Any clues?
> >
> > Could you retry with it statically linked in the kernel ? I vaguely
> > remember that if the original PIIX4 driver registers the device first,
> > then ata_piix cannot get it. You could also ensure that you have
> > properly removed CONFIG_IDE_PIIX4 (I believe it's called like this).
> >
> >> Thanks!
> >> George
> >
> > Regards,
> > Willy
> >
> >
>
> Thanks for the help Willy,
>
> I think you're on to something. I noticed this during the 2.4.32 kernel
> bootup:
> -----------------------------------------------------------------
> hda: FUJITSU MHV2040AH, ATA DISK drive
> hda: attached ide-disk driver.
> hda: host protected area => 1
> hda: 78140160 sectors (40008 MB) w/8192KiB Cache, CHS=4864/255/63
> -----------------------------------------------------------------
>
> However i can't find CONFIG_IDE_PIIX4 in .config anyhwere. I did find
> CONFIG_BLK_DEV_PIIX so i tried disabling it, but the device still
> registered under hda.

OK, you correctly removed the one I was thinking about. You should also
remove other CONFIG_BLK_DEB_IDE* and CONFIG_IDEDMA*, because there is
also a generic PCI support for IDE controllers. Most probably your
drive has been detected on a generic PCI controller. At least, just for
a test, completely disable IDE to be sure, and enable ata_piix. As long
as you'll not see your disk as sda, it will not work.

> If i build it statically, i get this error trying to boot:
> ----------------------------------------------------------------------
> kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
> Kernel panic: VFS: Unable to mount root fs on 00:00
> ----------------------------------------------------------------------
>
> AND it still finds the drive as /dev/hda
>
> Therefore I built it as a module and put "alias scsi_hostadapter
> ata_piix" in /etc/modules.conf" to atleast eliminate the
> scsi_hostadapter thing
>
> This is FC3, and my root is actually an LVM, so i get:
> NVS: Cannot open root device "VolGroup00/LogVol00" or 00:00
>
> So i'm thinking once the drive shows up as /dev/sda, the LVM will be
> proper, and VolGroup00/LogVol00 will show up.

I don't know, I'm a terrible loser when it comes to LVM unfortunately.
I just hope you're right :-)

> Any more ideas?
>
> Thanks!
> George

Regards,
willy

2006-05-17 13:28:56

by George Nychis

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32



Willy Tarreau wrote:
> On Tue, May 16, 2006 at 05:18:06PM -0400, George Nychis wrote:
>>
>> Willy Tarreau wrote:
>>> On Tue, May 16, 2006 at 04:31:52PM -0400, George Nychis wrote:
>>>> Hi,
>>>>
>>>> I've booted from a SATA drive in 2.4.32 before, but for some reason
>>>> 2.4.32 will not recognize this disk. It is recognized when I boot 2.6.9
>>>> though.
>>>>
>>>> It uses the ata_piix module in both kernels. Whenever I boot 2.6.9 I see:
>>>> ----------------------------------------------------------------------
>>>> SCSI subsystem initialized
>>>> ACPI: PCI interrupt 0000:00:1f.2[B] -> GSI 7 (level, low) -> IRQ 7
>>>> ata: 0x170 IDE port busy
>>>> ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xBFA0 irq 14
>>>> ata1: dev 0 ATA, max UDMA/100, 78140160 sectors:
>>>> ata1(0): applying bridge limits
>>>> ata1: dev 0 configured for UDMA/100
>>>> scsi0 : ata_piix
>>>> Vendor: ATA Model: FUJITSU MHV2040A Rev: 0000
>>>> Type: Direct-Access ANSI SCSI revision: 05
>>>> SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
>>>> SCSI device sda: drive cache: write back
>>>> sda: sda1 sda2 sda3 sda4 < sda5 >
>>>> Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
>>>> device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
>>>> ------------------------------------------------------------------------
>>>>
>>>> However in 2.4.32 all i see is:
>>>> ----------------------------
>>>> SCSI subsystem initialized
>>>> ----------------------------
>>>>
>>>> I am positive that my 2.4.32 has been compiled with ata_piix as a
>>>> module, and it does reside in /lib/modules/2.4.32/kernel/driver/scsi/
>>>>
>>>> Any clues?
>>> Could you retry with it statically linked in the kernel ? I vaguely
>>> remember that if the original PIIX4 driver registers the device first,
>>> then ata_piix cannot get it. You could also ensure that you have
>>> properly removed CONFIG_IDE_PIIX4 (I believe it's called like this).
>>>
>>>> Thanks!
>>>> George
>>> Regards,
>>> Willy
>>>
>>>
>> Thanks for the help Willy,
>>
>> I think you're on to something. I noticed this during the 2.4.32 kernel
>> bootup:
>> -----------------------------------------------------------------
>> hda: FUJITSU MHV2040AH, ATA DISK drive
>> hda: attached ide-disk driver.
>> hda: host protected area => 1
>> hda: 78140160 sectors (40008 MB) w/8192KiB Cache, CHS=4864/255/63
>> -----------------------------------------------------------------
>>
>> However i can't find CONFIG_IDE_PIIX4 in .config anyhwere. I did find
>> CONFIG_BLK_DEV_PIIX so i tried disabling it, but the device still
>> registered under hda.
>
> OK, you correctly removed the one I was thinking about. You should also
> remove other CONFIG_BLK_DEB_IDE* and CONFIG_IDEDMA*, because there is
> also a generic PCI support for IDE controllers. Most probably your
> drive has been detected on a generic PCI controller. At least, just for
> a test, completely disable IDE to be sure, and enable ata_piix. As long
> as you'll not see your disk as sda, it will not work.
>
>> If i build it statically, i get this error trying to boot:
>> ----------------------------------------------------------------------
>> kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
>> Kernel panic: VFS: Unable to mount root fs on 00:00
>> ----------------------------------------------------------------------
>>
>> AND it still finds the drive as /dev/hda
>>
>> Therefore I built it as a module and put "alias scsi_hostadapter
>> ata_piix" in /etc/modules.conf" to atleast eliminate the
>> scsi_hostadapter thing
>>
>> This is FC3, and my root is actually an LVM, so i get:
>> NVS: Cannot open root device "VolGroup00/LogVol00" or 00:00
>>
>> So i'm thinking once the drive shows up as /dev/sda, the LVM will be
>> proper, and VolGroup00/LogVol00 will show up.
>
> I don't know, I'm a terrible loser when it comes to LVM unfortunately.
> I just hope you're right :-)
>
>> Any more ideas?
>>
>> Thanks!
>> George
>
> Regards,
> willy
>
>

Good suggestion on disabling IDE, it does not show up as SATA, it simply
doesn't show up... after some googling, it seems as though no one has
gotten it as SATA in 2.4:
http://wip.powerblogs.com/posts/1124302626.shtml
http://www.linuxquestions.org/questions/showthread.php?t=400521

Ok so, lets just assume we can't get SATA, and lets just try to get it
to boot as /dev/hda ... so now i know nothing about LVM, can anyone
provide me any insight on how to get this to boot with LVM?

So in 2.6.9, it loads VolGroup00/LogVol00 from /dev/sda5 which shows up
in fdisk as LVM. How can i get this to load from /dev/hda5 instead?

Thanks!
George

2006-05-17 13:34:58

by Lennart Sorensen

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32

On Wed, May 17, 2006 at 09:29:07AM -0400, George Nychis wrote:
> Good suggestion on disabling IDE, it does not show up as SATA, it simply
> doesn't show up... after some googling, it seems as though no one has
> gotten it as SATA in 2.4:
> http://wip.powerblogs.com/posts/1124302626.shtml
> http://www.linuxquestions.org/questions/showthread.php?t=400521
>
> Ok so, lets just assume we can't get SATA, and lets just try to get it
> to boot as /dev/hda ... so now i know nothing about LVM, can anyone
> provide me any insight on how to get this to boot with LVM?
>
> So in 2.6.9, it loads VolGroup00/LogVol00 from /dev/sda5 which shows up
> in fdisk as LVM. How can i get this to load from /dev/hda5 instead?

You don't. SATA is using scsi style interface now, and with Alan Cox's
current work, IDE drives soon will too. It will all go through libata
and show up as scsi disks.

It will be nice to have everything nice and consistent (except for the
few oddball raid cards that insist on being completely different) for
accessing disks.

SATA is not IDE, so why expect it to show up as an old style IDE disk?

Len Sorensen

2006-05-17 13:40:42

by George Nychis

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32



Lennart Sorensen wrote:
> On Wed, May 17, 2006 at 09:29:07AM -0400, George Nychis wrote:
>> Good suggestion on disabling IDE, it does not show up as SATA, it simply
>> doesn't show up... after some googling, it seems as though no one has
>> gotten it as SATA in 2.4:
>> http://wip.powerblogs.com/posts/1124302626.shtml
>> http://www.linuxquestions.org/questions/showthread.php?t=400521
>>
>> Ok so, lets just assume we can't get SATA, and lets just try to get it
>> to boot as /dev/hda ... so now i know nothing about LVM, can anyone
>> provide me any insight on how to get this to boot with LVM?
>>
>> So in 2.6.9, it loads VolGroup00/LogVol00 from /dev/sda5 which shows up
>> in fdisk as LVM. How can i get this to load from /dev/hda5 instead?
>
> You don't. SATA is using scsi style interface now, and with Alan Cox's
> current work, IDE drives soon will too. It will all go through libata
> and show up as scsi disks.
>
> It will be nice to have everything nice and consistent (except for the
> few oddball raid cards that insist on being completely different) for
> accessing disks.
>
> SATA is not IDE, so why expect it to show up as an old style IDE disk?

Because it does......

on bootup the *same* exact drive in 2.4.32 shows up as /dev/hda

It has the exact same volume information as my drive that shows up in
2.6.9 as /dev/sda

2006-05-17 14:25:27

by Willy Tarreau

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32

On Wed, May 17, 2006 at 09:29:07AM -0400, George Nychis wrote:
>
>
> Willy Tarreau wrote:
> > On Tue, May 16, 2006 at 05:18:06PM -0400, George Nychis wrote:
> >>
> >> Willy Tarreau wrote:
> >>> On Tue, May 16, 2006 at 04:31:52PM -0400, George Nychis wrote:
> >>>> Hi,
> >>>>
> >>>> I've booted from a SATA drive in 2.4.32 before, but for some reason
> >>>> 2.4.32 will not recognize this disk. It is recognized when I boot 2.6.9
> >>>> though.
> >>>>
> >>>> It uses the ata_piix module in both kernels. Whenever I boot 2.6.9 I see:
> >>>> ----------------------------------------------------------------------
> >>>> SCSI subsystem initialized
> >>>> ACPI: PCI interrupt 0000:00:1f.2[B] -> GSI 7 (level, low) -> IRQ 7
> >>>> ata: 0x170 IDE port busy
> >>>> ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xBFA0 irq 14
> >>>> ata1: dev 0 ATA, max UDMA/100, 78140160 sectors:
> >>>> ata1(0): applying bridge limits
> >>>> ata1: dev 0 configured for UDMA/100
> >>>> scsi0 : ata_piix
> >>>> Vendor: ATA Model: FUJITSU MHV2040A Rev: 0000
> >>>> Type: Direct-Access ANSI SCSI revision: 05
> >>>> SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
> >>>> SCSI device sda: drive cache: write back
> >>>> sda: sda1 sda2 sda3 sda4 < sda5 >
> >>>> Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
> >>>> device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
> >>>> ------------------------------------------------------------------------
> >>>>
> >>>> However in 2.4.32 all i see is:
> >>>> ----------------------------
> >>>> SCSI subsystem initialized
> >>>> ----------------------------
> >>>>
> >>>> I am positive that my 2.4.32 has been compiled with ata_piix as a
> >>>> module, and it does reside in /lib/modules/2.4.32/kernel/driver/scsi/
> >>>>
> >>>> Any clues?
> >>> Could you retry with it statically linked in the kernel ? I vaguely
> >>> remember that if the original PIIX4 driver registers the device first,
> >>> then ata_piix cannot get it. You could also ensure that you have
> >>> properly removed CONFIG_IDE_PIIX4 (I believe it's called like this).
> >>>
> >>>> Thanks!
> >>>> George
> >>> Regards,
> >>> Willy
> >>>
> >>>
> >> Thanks for the help Willy,
> >>
> >> I think you're on to something. I noticed this during the 2.4.32 kernel
> >> bootup:
> >> -----------------------------------------------------------------
> >> hda: FUJITSU MHV2040AH, ATA DISK drive
> >> hda: attached ide-disk driver.
> >> hda: host protected area => 1
> >> hda: 78140160 sectors (40008 MB) w/8192KiB Cache, CHS=4864/255/63
> >> -----------------------------------------------------------------
> >>
> >> However i can't find CONFIG_IDE_PIIX4 in .config anyhwere. I did find
> >> CONFIG_BLK_DEV_PIIX so i tried disabling it, but the device still
> >> registered under hda.
> >
> > OK, you correctly removed the one I was thinking about. You should also
> > remove other CONFIG_BLK_DEB_IDE* and CONFIG_IDEDMA*, because there is
> > also a generic PCI support for IDE controllers. Most probably your
> > drive has been detected on a generic PCI controller. At least, just for
> > a test, completely disable IDE to be sure, and enable ata_piix. As long
> > as you'll not see your disk as sda, it will not work.
> >
> >> If i build it statically, i get this error trying to boot:
> >> ----------------------------------------------------------------------
> >> kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
> >> Kernel panic: VFS: Unable to mount root fs on 00:00
> >> ----------------------------------------------------------------------
> >>
> >> AND it still finds the drive as /dev/hda
> >>
> >> Therefore I built it as a module and put "alias scsi_hostadapter
> >> ata_piix" in /etc/modules.conf" to atleast eliminate the
> >> scsi_hostadapter thing
> >>
> >> This is FC3, and my root is actually an LVM, so i get:
> >> NVS: Cannot open root device "VolGroup00/LogVol00" or 00:00
> >>
> >> So i'm thinking once the drive shows up as /dev/sda, the LVM will be
> >> proper, and VolGroup00/LogVol00 will show up.
> >
> > I don't know, I'm a terrible loser when it comes to LVM unfortunately.
> > I just hope you're right :-)
> >
> >> Any more ideas?
> >>
> >> Thanks!
> >> George
> >
> > Regards,
> > willy
> >
> >
>
> Good suggestion on disabling IDE, it does not show up as SATA, it simply
> doesn't show up... after some googling, it seems as though no one has
> gotten it as SATA in 2.4:
> http://wip.powerblogs.com/posts/1124302626.shtml
> http://www.linuxquestions.org/questions/showthread.php?t=400521

I don't agree, I have one machine running 2.4.32 + a few patches to get it
up to date with 2.4.33-pre as of 2006/01. And it is running quite well with
ata_piix :

# dmesg |grep ata
libata version 1.20 loaded.
ata1: SATA max UDMA/133 cmd 0x24F8 ctl 0x2812 bmdma 0x24D0 irq 18
ata2: SATA max UDMA/133 cmd 0x2800 ctl 0x2816 bmdma 0x24D8 irq 18
ata1: dev 0 cfg 49:2f00 82:3069 83:5801 84:4003 85:3069 86:1001 87:4003 88:203f
ata1: dev 0 ATA-6, max UDMA/100, 156301488 sectors: LBA
ata1: dev 0 configured for UDMA/100
ata2: SATA port has no device.
scsi0 : ata_piix
scsi1 : ata_piix

# grep -i piix /proc/ikconfig/config
CONFIG_BLK_DEV_PIIX=y
CONFIG_SCSI_ATA_PIIX=y
CONFIG_I2C_PIIX4=m

So it seems like even BLK_DEV_PIIX was enabled without problem. However, as
you can see, the ata_piix driver was slightly more recent than in 2.4.32 :

@@ -32,12 +50,13 @@
#include <linux/libata.h>

#define DRV_NAME "ata_piix"
-#define DRV_VERSION "1.03"
+#define DRV_VERSION "1.05"

So I would suggest that you retry with the most recent 2.4.33-pre, it *must*
work.

> Ok so, lets just assume we can't get SATA, and lets just try to get it
> to boot as /dev/hda ... so now i know nothing about LVM, can anyone
> provide me any insight on how to get this to boot with LVM?

I don't know, but let's first get SATA working. Fixing low level first
is the only solution to progress in a diagnostic.

> So in 2.6.9, it loads VolGroup00/LogVol00 from /dev/sda5 which shows up
> in fdisk as LVM. How can i get this to load from /dev/hda5 instead?
>
> Thanks!
> George

Regards,
Willy

2006-05-17 15:13:04

by George Nychis

[permalink] [raw]
Subject: help booting from SATA in 2.4.32.. initrd not loading



Willy Tarreau wrote:
> On Wed, May 17, 2006 at 09:29:07AM -0400, George Nychis wrote:
>>
>> Willy Tarreau wrote:
>>> On Tue, May 16, 2006 at 05:18:06PM -0400, George Nychis wrote:
>>>> Willy Tarreau wrote:
>>>>> On Tue, May 16, 2006 at 04:31:52PM -0400, George Nychis wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I've booted from a SATA drive in 2.4.32 before, but for some reason
>>>>>> 2.4.32 will not recognize this disk. It is recognized when I boot 2.6.9
>>>>>> though.
>>>>>>
>>>>>> It uses the ata_piix module in both kernels. Whenever I boot 2.6.9 I see:
>>>>>> ----------------------------------------------------------------------
>>>>>> SCSI subsystem initialized
>>>>>> ACPI: PCI interrupt 0000:00:1f.2[B] -> GSI 7 (level, low) -> IRQ 7
>>>>>> ata: 0x170 IDE port busy
>>>>>> ata1: SATA max UDMA/133 cmd 0x1F0 ctl 0x3F6 bmdma 0xBFA0 irq 14
>>>>>> ata1: dev 0 ATA, max UDMA/100, 78140160 sectors:
>>>>>> ata1(0): applying bridge limits
>>>>>> ata1: dev 0 configured for UDMA/100
>>>>>> scsi0 : ata_piix
>>>>>> Vendor: ATA Model: FUJITSU MHV2040A Rev: 0000
>>>>>> Type: Direct-Access ANSI SCSI revision: 05
>>>>>> SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
>>>>>> SCSI device sda: drive cache: write back
>>>>>> sda: sda1 sda2 sda3 sda4 < sda5 >
>>>>>> Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
>>>>>> device-mapper: 4.1.0-ioctl (2003-12-10) initialised: [email protected]
>>>>>> ------------------------------------------------------------------------
>>>>>>
>>>>>> However in 2.4.32 all i see is:
>>>>>> ----------------------------
>>>>>> SCSI subsystem initialized
>>>>>> ----------------------------
>>>>>>
>>>>>> I am positive that my 2.4.32 has been compiled with ata_piix as a
>>>>>> module, and it does reside in /lib/modules/2.4.32/kernel/driver/scsi/
>>>>>>
>>>>>> Any clues?
>>>>> Could you retry with it statically linked in the kernel ? I vaguely
>>>>> remember that if the original PIIX4 driver registers the device first,
>>>>> then ata_piix cannot get it. You could also ensure that you have
>>>>> properly removed CONFIG_IDE_PIIX4 (I believe it's called like this).
>>>>>
>>>>>> Thanks!
>>>>>> George
>>>>> Regards,
>>>>> Willy
>>>>>
>>>>>
>>>> Thanks for the help Willy,
>>>>
>>>> I think you're on to something. I noticed this during the 2.4.32 kernel
>>>> bootup:
>>>> -----------------------------------------------------------------
>>>> hda: FUJITSU MHV2040AH, ATA DISK drive
>>>> hda: attached ide-disk driver.
>>>> hda: host protected area => 1
>>>> hda: 78140160 sectors (40008 MB) w/8192KiB Cache, CHS=4864/255/63
>>>> -----------------------------------------------------------------
>>>>
>>>> However i can't find CONFIG_IDE_PIIX4 in .config anyhwere. I did find
>>>> CONFIG_BLK_DEV_PIIX so i tried disabling it, but the device still
>>>> registered under hda.
>>> OK, you correctly removed the one I was thinking about. You should also
>>> remove other CONFIG_BLK_DEB_IDE* and CONFIG_IDEDMA*, because there is
>>> also a generic PCI support for IDE controllers. Most probably your
>>> drive has been detected on a generic PCI controller. At least, just for
>>> a test, completely disable IDE to be sure, and enable ata_piix. As long
>>> as you'll not see your disk as sda, it will not work.
>>>
>>>> If i build it statically, i get this error trying to boot:
>>>> ----------------------------------------------------------------------
>>>> kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
>>>> Kernel panic: VFS: Unable to mount root fs on 00:00
>>>> ----------------------------------------------------------------------
>>>>
>>>> AND it still finds the drive as /dev/hda
>>>>
>>>> Therefore I built it as a module and put "alias scsi_hostadapter
>>>> ata_piix" in /etc/modules.conf" to atleast eliminate the
>>>> scsi_hostadapter thing
>>>>
>>>> This is FC3, and my root is actually an LVM, so i get:
>>>> NVS: Cannot open root device "VolGroup00/LogVol00" or 00:00
>>>>
>>>> So i'm thinking once the drive shows up as /dev/sda, the LVM will be
>>>> proper, and VolGroup00/LogVol00 will show up.
>>> I don't know, I'm a terrible loser when it comes to LVM unfortunately.
>>> I just hope you're right :-)
>>>
>>>> Any more ideas?
>>>>
>>>> Thanks!
>>>> George
>>> Regards,
>>> willy
>>>
>>>
>> Good suggestion on disabling IDE, it does not show up as SATA, it simply
>> doesn't show up... after some googling, it seems as though no one has
>> gotten it as SATA in 2.4:
>> http://wip.powerblogs.com/posts/1124302626.shtml
>> http://www.linuxquestions.org/questions/showthread.php?t=400521
>
> I don't agree, I have one machine running 2.4.32 + a few patches to get it
> up to date with 2.4.33-pre as of 2006/01. And it is running quite well with
> ata_piix :
>
> # dmesg |grep ata
> libata version 1.20 loaded.
> ata1: SATA max UDMA/133 cmd 0x24F8 ctl 0x2812 bmdma 0x24D0 irq 18
> ata2: SATA max UDMA/133 cmd 0x2800 ctl 0x2816 bmdma 0x24D8 irq 18
> ata1: dev 0 cfg 49:2f00 82:3069 83:5801 84:4003 85:3069 86:1001 87:4003 88:203f
> ata1: dev 0 ATA-6, max UDMA/100, 156301488 sectors: LBA
> ata1: dev 0 configured for UDMA/100
> ata2: SATA port has no device.
> scsi0 : ata_piix
> scsi1 : ata_piix
>
> # grep -i piix /proc/ikconfig/config
> CONFIG_BLK_DEV_PIIX=y
> CONFIG_SCSI_ATA_PIIX=y
> CONFIG_I2C_PIIX4=m
>
> So it seems like even BLK_DEV_PIIX was enabled without problem. However, as
> you can see, the ata_piix driver was slightly more recent than in 2.4.32 :
>
> @@ -32,12 +50,13 @@
> #include <linux/libata.h>
>
> #define DRV_NAME "ata_piix"
> -#define DRV_VERSION "1.03"
> +#define DRV_VERSION "1.05"
>
> So I would suggest that you retry with the most recent 2.4.33-pre, it *must*
> work.
>
>> Ok so, lets just assume we can't get SATA, and lets just try to get it
>> to boot as /dev/hda ... so now i know nothing about LVM, can anyone
>> provide me any insight on how to get this to boot with LVM?
>
> I don't know, but let's first get SATA working. Fixing low level first
> is the only solution to progress in a diagnostic.
>
>> So in 2.6.9, it loads VolGroup00/LogVol00 from /dev/sda5 which shows up
>> in fdisk as LVM. How can i get this to load from /dev/hda5 instead?
>>
>> Thanks!
>> George
>
> Regards,
> Willy
>
>

Okay new news... it turns out that initrd is not running before my
system is trying to mount the root partition, i have no clue why because
in my grub.conf i have initrd set to my initrd

Since my root partition is logical, which needs to be loaded with
vgscan/vgchange in initrd, and initrd is not run before it tries to
mount root... it simply can't

I've never seen this before so i'm not quite sure, maybe someone else
has seen this before?

Thanks!
George

2006-05-17 15:53:38

by Lennart Sorensen

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32

On Wed, May 17, 2006 at 09:40:52AM -0400, George Nychis wrote:
> Because it does......
>
> on bootup the *same* exact drive in 2.4.32 shows up as /dev/hda
>
> It has the exact same volume information as my drive that shows up in
> 2.6.9 as /dev/sda

Yes I do remember a few sata controllers had some support in 2.4, which
was dropped from 2.6 early on when libata came in.

It is very unlikely you will ever see that again in the future.

Len Sorensen

2006-05-17 17:30:04

by George Nychis

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32 / LVM



Lennart Sorensen wrote:
> On Wed, May 17, 2006 at 09:40:52AM -0400, George Nychis wrote:
>> Because it does......
>>
>> on bootup the *same* exact drive in 2.4.32 shows up as /dev/hda
>>
>> It has the exact same volume information as my drive that shows up in
>> 2.6.9 as /dev/sda
>
> Yes I do remember a few sata controllers had some support in 2.4, which
> was dropped from 2.6 early on when libata came in.
>
> It is very unlikely you will ever see that again in the future.
>
> Len Sorensen
>

I see... well I am finally getting it to boot, i did not have initrd
support built into the 2.4.32 kernel, but now i'm getting LVM errors:

Scanning logical volumes
/bin/vgscan.lvm1: execvp failed: No such file or directory
ERROR: /bin/vgscan exited abnormally!
Activating logical volumes
/bin/vgchange.lvm1: execvp failed: No such file or directory
ERROR: /bin/vgchange exited abnormally!

I know nothing about LVM so... i'm pretty clueless for now

2006-05-17 20:38:15

by Willy Tarreau

[permalink] [raw]
Subject: Re: need help booting from SATA in 2.4.32 / LVM

On Wed, May 17, 2006 at 01:30:18PM -0400, George Nychis wrote:
>
>
> Lennart Sorensen wrote:
> > On Wed, May 17, 2006 at 09:40:52AM -0400, George Nychis wrote:
> >> Because it does......
> >>
> >> on bootup the *same* exact drive in 2.4.32 shows up as /dev/hda
> >>
> >> It has the exact same volume information as my drive that shows up in
> >> 2.6.9 as /dev/sda
> >
> > Yes I do remember a few sata controllers had some support in 2.4, which
> > was dropped from 2.6 early on when libata came in.
> >
> > It is very unlikely you will ever see that again in the future.
> >
> > Len Sorensen
> >
>
> I see... well I am finally getting it to boot, i did not have initrd
> support built into the 2.4.32 kernel, but now i'm getting LVM errors:

Cool, that's fine !

> Scanning logical volumes
> /bin/vgscan.lvm1: execvp failed: No such file or directory
> ERROR: /bin/vgscan exited abnormally!
> Activating logical volumes
> /bin/vgchange.lvm1: execvp failed: No such file or directory
> ERROR: /bin/vgchange exited abnormally!
>
> I know nothing about LVM so... i'm pretty clueless for now

It's pretty clear to me that /bin/vgscan is a wrapper to either vgscan.lvm1
or vgscan.lvm2 depending on what it supported in the kernel. 2.4 only
supports LVM1 in mainline. There are patches to support LVM2 on 2.4,
but to be honnest, I'm not sure about the exhaustive list. All I know
is that you have to start with the device mapper :

http://w.ods.org/linux/kernel/2.4/lkup/device-mapper.html

I hope it will help you
Willy