Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 105602

Summary: firewire-connected external disks are not seen by anaconda
Product: [Fedora] Fedora Reporter: Alexandre Oliva <oliva>
Component: kudzuAssignee: Bill Nottingham <notting>
Status: CLOSED CURRENTRELEASE QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: katzj, rvokal, stcullen
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-03-11 18:00:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
patch that enables installing from/to firewire disks none

Description Alexandre Oliva 2003-09-25 21:42:19 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030703

Description of problem:
Anaconda loads the ieee1394 and uhci1394 modules, but apparently not the sbp2
module, needed for my external firewire enclosure to work.  Even if it did load
sbp2 (I can do it by hand, but i have to use insmod sbp2.o, modprobe sbp2
doesn't work!?!), it would have to run rescan-scsi-bus.sh to get the scsi device
to be enabled, and to create the corresponding /dev/sda* devices, none of which
it seems to do.

Even if I do it all myself before getting the installation started, anaconda
still doesn't offer sda as one of the disks it can install to.  I suppose the
modules are being loaded too late, or something.  I wonder if we should have
these modules in initrd, loaded by linuxrc, when some command-line flag is given
to the kernel (e.g., firewire-storage or usb-storage).

Comment 1 Alexandre Oliva 2003-09-25 22:16:47 UTC
FWIW, a USB disk isn't seen by anaconda either.

Comment 2 Michael Fulbright 2003-09-26 16:26:18 UTC
We have never allowed you to install to a usb-storage or sbp2 device.

I understand the firewire stuff is pretty horked in the kernel at the moment.

Comment 3 Tom Cullen 2003-09-28 04:00:50 UTC
SBP2-related devices that worked fine in RH9 (all releases) refuse to function 
in RH 9.0.93 and Fedora Core 0.94.

Affect the following machine:
SONY Picturebook C1MW (This machine has external firewire DVD/CD-RW drive)
Fedora Core 0.94 and RH 9.0.93 will boot, and will not let you proceed past 
adding additional drivers for USB & UHCI. I *DID* manage to install on this 
machine using iso's on a small partion. KUDZU will not detect this external 
firewire drive during boot, and actually hangs the machine. KUDZU run in a term 
also hangs, but not the entire machine. Additionally, insmod and modprobe do 
not "see" the drive. Maybe I'm just plain silly for attempting an install on 
this machine, but I've been able to get everything to work except for the 
camera and this firewire port.

Comment 4 Alexandre Oliva 2003-09-28 06:57:35 UTC
Tom, you probably want to have a look at bugs 103821.

Michael, do you mean anaconda actually active refuses to have even RAID members
in external storage devices?  I hope you'd agree that this can be a very useful
thing to do.  I don't actually see why anaconda would refuse to enable someone
to create filesystems in external disks.  I realize additional magic might be
necessary to get them to be usable for the root filesystem, but this hopefully
wouldn't be too hard either.  Anyway, this report is not about not being able to
install root filesystems in external devices, it's about raid devices that work
perfectly well after installation not being recognized by the raid detection
code in anaconda, and this probably has to do with its not seeing (or refusing
to see) USB or Firewire disks.  If it actively refuses to consider them, would
you please provide me with a pointer to the code, such that I could try to work
around that somehow?  Thanks,

Comment 5 Jeremy Katz 2003-09-29 20:53:13 UTC
Yes, USB and Firewire are completely thrown out of consideration as disks for
the system in anaconda except in expert mode (see isys/isys.py:driveIsRemovable()).

Of course, the whole thing is more complicated now (and somewhat validated ;) by
the rescan-scsi-bus nonsense you have to do for firewire disks :/

Going to add something so that firewire cds can at least be used as install
sources again, though.

Comment 6 Alexandre Oliva 2003-10-18 21:39:36 UTC
Thanks for the pointer to driveIsRemovable(), now I see that, if I enter expert
mode, it *will* indeed enable me to install to removable drives, and this
actually works if I connect the external disk enclosure as USB, but not as
Firewire, even if I load the modules and rescan the bus as quickly as possible
after it gives me a shell prompt on VT2.  I've managed to do it all before
anaconda switches to VT7 for the graphical install, but it seems to not be early
enough.  There seems to be some probing and disk enumeration that takes place
far too early in the process for me to be able to get the scsi device for the
firewire disk in place in time for it to be considered and, if I miss this
window of opportunity, the disk won't be reconsidered, ever.  Any ideas on how
to overcome this?  I suppose I could use USB for installs and be done with it,
but USB 1.1 (the best I have on this laptop) is painfully slow :-(

Comment 7 Alexandre Oliva 2003-10-25 19:54:02 UTC
Created attachment 95481 [details]
patch that enables installing from/to firewire disks

This patch should enable the anaconda loader to install from firewire CDs, as
well as to firewire hard disks (only in expert mode, like any other removable
storage).

Comment 8 Alexandre Oliva 2004-02-16 21:44:19 UTC
Most of the patch is no longer needed for FC2, but the bit that loads
the sbp2 module is still necessary.  It does work to modprobe sbp2 to
install into firewire hard disks, with kickstart or in VT2, but if you
need sbp2 loaded to get to stage2 (e.g., if your CD-ROM is a firewire
device; not my case, but...), there's no way to do it.  Pretty please,
with sugar on top? :-)

Comment 9 Jeremy Katz 2004-02-18 01:00:53 UTC
Nope, kudzu needs to be fixed to probe it right since it can...

Instead of /proc/bus/ieee1394, you now have to recurse into the
directory structure of /sys/bus/ieee1394

Comment 10 Alexandre Oliva 2004-02-18 04:57:07 UTC
Well, it didn't work in kernel 2.4 the way it was, so why do you
expect changing kudzu so as to probe it elsewhere would fix the problem?

Comment 11 Jeremy Katz 2004-02-18 15:41:51 UTC
No, it worked that way in 2.4 until the big "let's break firewire in
2.4" bit ;-)  And I've verified that grokking through
/sys/bus/ieee1394 after just loading the ohci1394 host adapter does in
fact show the drive which needs sbp2.

Hence, fixing the kudzu probe will fix the problem. 

Comment 12 Alexandre Oliva 2004-02-18 21:39:51 UTC
Well...  When I tried to add just rescan-scsi-bus to the firewire
start up code for FC1 in the installer, it wasn't enough.  And I see
/etc/rc.sysinit explicitly modprobes sbp2.

Comment 13 Jeremy Katz 2004-02-18 22:59:46 UTC
I was looking explicitly within the installer environement and poking
around loading modules by hand...  trust me here :-)