From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003 Description of problem: boot device and all disks are scsi (aic7xxx). (modules.conf has alias scsi_hostadapter aic7xxx I have a USB hard disk. On original Red Hat 8.0 kernel 2.4.18-14, the aic7xxx is detected as SCSI0, and the usb hard disk is detected as SCSI1. Moreover, I can boot with the USB hard disk connected and turned on, or turned off, with complete success. With eratta kernel 2.4.18-17.8.0, the USB hard disk is detected as SCSI0, and the aic7xxx is detected as SCSI1 - this is not so terrible with all partitions labeled, however, the unlabeled swap partition will not be where it's supposed to because of the SCSI id renumbering. moreover, if the hard disk is turned off, the boot process will hang indefinately at: Initializing USB HID Interface forcing a reset (hard reboot - 3 finger salute is ineffective at this point). Note: under Red Hat 7.3, the equivalent eratta kernel does not have these symptoms (i.e. the usb device remains as SCSI1) Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. obtain a USB hard disk, and a scsi based system. 2. install Red Hat 8.0 3. apply kernel eratta 2.4.18-17.8.0 4. plug in usb hard disk 5a) reboot with hard disk turned off. - observe that the usb hard disk is detected as SCSI0:0 and that the scsi disk is detected as SCSI1:0 - observe that the boot process hangs after displaying Initializing USB HID Interface 5b) reboot with hard disk turned on. - observe that the usb hard disk is detected as SCSI0:0 and that the scsi disk is detected as SCSI1:0 - observe that the boot process continues as per normal (but the swap partition will be flagged as "not found" due to the scsi renumbering) Initializing USB HID Interface Actual Results: scsi devices are renumbered system hangs during reboot if hard disk is switched off Expected Results: usb hard disk should remain as scsi1 system should not hang during reboot Additional info:
This also affects people that have a USB CompactFlash reader, whether the reader has a flash card in it at boot-time or not...
Just wanted to add me-too to this bug. For some reason, 8.0 ships with no SMP kernel for Pentium, so I downloaded and installed the errata kernel 2.4.18- 19.8.0.i586, both smp and non-smp. I have a dual Pentium 233MMX, with a USB Compact Flash/SmartMedia external dual-format card reader (SanDisk.) The stock 8.0 kernel puts things in the right order, but both errata kernels put the USB device first, then the SCSI hard disks. Of course, all the mount partitions are now in the wrong place, so booting is a mess.
Bizzare. I'll try to look when I can. BTW, 7.x and 8.0 versions are built from the absolutely identical RPMs, only the version string is changed. I do not see how they can behave differently. Another thing, aic7xxx must come from the initrd, so it's guaranteed to get scsi0. Are you guys sure you're not rebuilding kernels from source?
stock kernel (from red hat rpm). yes it's strange, (but it is fully reproduceable :)
Can someone do this (as root), and send me the terminal session log: gzip -cd < /boot/initrd-2.4.18-17.8.0.img > /boot/initrd-2.4.18-17.8.0.bin mkdir /mnt/initrd mount -t ext2 -o loop /boot/initrd-2.4.18-17.8.0.bin /mnt/initrd find /mnt/initrd -name 'usb-storage*' umount /mnt/initrd The suspicion here is that mkinitrd sneaks usb-storage into initrd somehow. The kernels are truly identical across 7.x and 8.0, but initrd is generated during the installation (rpm -i or up2date -u). So, mkinitrd may see "scsi" devices and decide to grab all HBA drivers. Or something... I need to look at the source for mkinitrd closer, but first let's get the data.
I'm running 2.4.18-19.8.0, but my initrd has usb-storage.o in it...
Bill Nottingham says he made Phoebe mkinitrd not to include usb-storage. Root on usb-storage is not going to work without special hackery anyway (due to delays incured by khubd, root mount always fails). The workaround is to unplug the USB device and do rmmod usb-storage, then do "mkinitrd /boot/xxx.img 2.4.18-19.8.0" to re-generate the image. After than, substitute xxx.img in grub.conf, test that it works ok, and it it worked, "mv xxx.img initrd-2.4.18-19.8.0.img". Mind if I close this as Fixed in Rawhide?
I personally don't mind, but then, I'm not the original submitter... ;-)
I tried Pete Zaitcev's suggestion (Additional Comment #5 From Pete Zaitcev). Indeed there is a /mnt/floppy/lib/usb-storage.o (I mounted on /mnt/floppy), which certainly explains the situation. I probably had the sandisk reader plugged in (and the usb-storage modules loaded) when I installed the eratta kernel.
OK, closing as "fixed in rawhide", which actually means Phoebe2. Not sure if Bill will backport it to RH8.0 though.