Description of problem: Fedora Core Linux 1 does include the "advansys" SCSI module, but it's in with the "unsupported" modules rather than the main group of kernel modules. As a result of this, it isn't included in the boot disk, nor the block device drivers disk, nor even the boot.iso image, which contains all of the "main" kernel modules. As a result of this, it is not possible to use any of these install media to install or upgrade a system where an important filesystem resides on a disk connected to the Advansys SCSI card. The same problem would apply to systems using other "unsupported" hardware. Version-Release number of selected component (if applicable): How reproducible: Every time. Steps to Reproduce: 1. Attempt install/upgrade on system with only SCSI disks attached to "unsupported" SCSI controller. Actual results: On attempting installation, no disks can be found so it is not possible to continue with installation. Expected results: There ahould be a way of accessing the modules that appear in the "unsupported" area of the kernel RPM. Perhaps an additional "unsupported" driver disk? I think the ISO boot image should include the "unsupported" modules as well as the "supported" modules. After all, the kernel, once installed, runs just fine. Additional info: I managed to work around this problem by creating my own ramdisk image with the advansys module included and using that as the starting point for the installation.
Here is the workaround approach I used to upgrade my Red Hat Linux 9 box with an Advansys SCSI card to Fedora Core Linux 1. The approach I used uses the existing system to host the install media, but it could be modified to use install media burned to a CD. The first step is to find a good starting port for a custom install image. I chose the boot.iso image, found in the "images" directory on CD 1. # mkdir /mnt/disc1 # mount -r -o loop yarrow-i386-disc1.iso /mnt/disc1 # cd /mnt/disc1/images # mkdir /mnt/boot.iso # mount -r -o loop boot.iso /mnt/boot.iso # cd /mnt/boot.iso # cd isolinux # ls boot.cat general.msg isolinux.bin memtest param.msg snake.msg TRANS.TBL boot.msg initrd.img isolinux.cfg options.msg rescue.msg splash.lss vmlinuz The files we need from here are vmlinuz (the kernel) and initrd.img (the ramdisk). # mkdir /tmp/boot # cp -p vmlinuz initrd.img /tmp/boot # cd /tmp/boot We're also going to need an advansys.o module that will load in this kernel. The kernel in the installer is kernel-2.4.22-1.2115.nptl.i586.rpm so we need to install this RPM and grab the kernel module from it. # rpm -ivh /mnt/disc1/Fedora/RPMS/kernel-2.4.22-1.2115.nptl.i586.rpm # cp -p /lib/modules/2.4.22-1.2115.nptl/unsupported/drivers/scsi/advansys.o . You can leave this kernel installed if you wish (a Red Hat 9 box will run quite happily with it), or you can remove it: # rpm -e kernel-2.4.22-1.2115.nptl If you remove it, you'll need to remake the links for System.map, vmlinuz and possibly module-info in the /boot directory. The ramdisk image is compressed, so it needs to be uncompressed before we can mount it. # mv initrd.img initrd.img.gz # gunzip initrd.img # mkdir /mnt/initrd # mount -o loop initrd.img /mnt/initrd The bit we need to fiddle with is the modules directory: # cp -rp /mnt/initrd/modules . # gunzip -c modules/modules.cgz | cpio -t > modules-list 11795 blocks # gunzip -c modules/modules.cgz | cpio -i -d 11795 blocks # mv advansys.o 2.4.22-1.2115.nptl/i586 # echo 2.4.22-1.2115.nptl/i586/advansys.o >> modules-list # cpio -o --format=crc < modules-list | gzip -c -9 > modules.cgz 11988 blocks # mv modules.cgz modules mv: overwrite `modules/modules.cgz'? y # cd modules At this point some file editing is necessary. Add the following entry in the appropriate place in module-info (between the acenic & aha152x entries): advansys scsi "Advansys SCSI Cards" modules.dep doesn't need editing as the following line is already there: advansys: scsi_mod pcitable should have the following lines (from /usr/share/hwdata/pcitable) added: 0x10cd 0x1200 "advansys" "Advanced System Products|ASC1200 [(abp940) Fast SCSI-II]" 0x10cd 0x1300 "advansys" "Advanced System Products|ABP940-U / ABP960-U" 0x10cd 0x2300 "advansys" "Advanced System Products|ABP940-UW" 0x10cd 0x2500 "advansys" "Advanced System Products|ABP940-U2W" after this line: 0x10c3 0x1100 "e100" "Samsung Semiconductors, Inc.|Smartether100 SC1100 LAN Adapter (i82557B)" This should provide for autodetection of the Advansys SCSI card. The modules directory can now be moved back into the ramdisk image. # cd .. # rm -rf /mnt/initrd/modules # mv modules /mnt/initrd # sync # umount /mnt/initrd # gzip -9 initrd.img # mv initrd.img.gz initrd-advansys.img We're now ready to set up the bootloader to offer the customised install image as a boot option. I use grub, as follows: # mv initrd-advansys.img /boot # mv vmlinuz /boot/install-kernel Add the following entries to /etc/grub.conf: title Fedora Core 1 Install root (hd0,0) kernel /boot/install-kernel ramdisk_size=8192 initrd /boot/initrd-advansys.img title Fedora Core 1 Install (text) root (hd0,0) kernel /boot/install-kernel text ramdisk_size=8192 initrd /boot/initrd-advansys.img title Fedora Core 1 Install (expert) root (hd0,0) kernel /boot/install-kernel expert ramdisk_size=8192 initrd /boot/initrd-advansys.img title Fedora Core 1 Install (lowres) root (hd0,0) kernel /boot/install-kernel lowres ramdisk_size=8192 initrd /boot/initrd-advansys.img The root () lines should be copied from your existing grub.conf entries so that the /boot partition is identified correctly. Finally, unmount the images and clean up: # umount /mnt/boot.iso # umount /mnt/disc1 # cd .. # rm -rf boot You should now be able to boot your machine and choose one of the installer options above, with auto-detection of the Advansys SCSI card.
This is intentional. 'unsupported' hardware means that it's not supported for installatoin as well.