Bug 103746

Summary: Firewire (IEEE1394) harddisc not automatically mounted to /media (module sbp2 not loaded)
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Tobias Burnus <burnus>
Component: HotplugAssignee: Hannes Reinecke <hare>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Blocker    
Priority: P1 - Urgent CC: behlert, dkukawka, ihno, ksievers, martin, realraccoon
Version: Beta 1   
Target Milestone: ---   
Hardware: Other   
OS: All   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Some hwinfo
bug103746.tar.bz2
bug103746.tar.bz2

Description Tobias Burnus 2005-08-10 06:57:17 UTC
If I connect my harddisc to 9.3 and ohci1394 is loaded (e.g. via modprobe or
automatically) then the module sbp2 needed for my IEEE1394 disc is loaded too.

In 10.0b1 at startup I have the following modules:
  video1394              19020  0
  ohci1394               33076  1 video1394
  raw1394                27628  0
  ieee1394               97080  3 video1394,ohci1394,raw1394
if I now connect the harddisc, nothing happens and hwinfo --disk does not show
anything of that disc.
After a modprobe sbp2, I can access the disc at /media/ieee1394disk

Expected: If I plugin the harddisc, I don't have to hunt for the right module,
but - using subfs or not - I can access the disc (/media/* or /dev/sda1).
Comment 1 Tobias Burnus 2005-08-10 06:59:58 UTC
Created attachment 45464 [details]
Some hwinfo
Comment 2 Martin Møller 2005-08-18 21:14:19 UTC
I have this problem as well. YaST saw the Firewire disk just fine during
installation, but afterwards, the sbp2 module was no longer loaded and the disk
was unaccessible until I loaded it manually. This is *bad*.

This is with SL10 Beta2, by the way.
Comment 3 Olaf Hering 2005-08-19 11:36:06 UTC
Created attachment 46681 [details]
bug103746.tar.bz2
Comment 4 Danny Al-Gaaf 2005-09-01 11:51:37 UTC
Is there any fix? This don't work with Beta4. No support for Firewire. Also if 
you load sbp2. 
Comment 5 Stefan Behlert 2005-09-02 09:13:06 UTC
Well, I tested here and it is sometimes working if you manually load sbp2. 
The problem is in my opinion that udev doesn't get any 'firewire got 
connected' event. 
At least udevmonitor shows nothing if you connect a firewire-HD, but 
in /var/log/messages you can see: 
Sep  2 11:09:02 linux kernel: ieee1394: Node changed: 0-00:1023 -> 0-01:1023 
Sep  2 11:09:02 linux kernel: ieee1394: Node resumed: ID:BUS[0-01:1023]  
GUID[00050001e01ebc22] 
Sep  2 11:09:02 linux kernel: ieee1394: The root node is not cycle master 
capable; selecting a new root node and re 
setting... 
Sep  2 11:09:02 linux kernel: ieee1394: Node changed: 0-01:1023 -> 0-00:1023 
Sep  2 11:09:02 linux kernel: ieee1394: Node changed: 0-00:1023 -> 0-01:1023 
 
Comment 6 Olaf Hering 2005-09-02 12:09:48 UTC
Created attachment 48591 [details]
bug103746.tar.bz2
Comment 7 Olaf Hering 2005-09-02 12:11:56 UTC
==> debug.01139.ieee1394.add.8211 <==
set -- ieee1394
UDEV_LOG='7'
ACTION='add'
DEVPATH='/class/ieee1394/00010410100036e0-0'
SUBSYSTEM='ieee1394'
SEQNUM='1139'
PHYSDEVPATH='/devices/pci0001:10/0001:10:0d.0/0001:11:0a.0/fw-host0/00010410100036e0/00010410100036e0-0'
PHYSDEVBUS='ieee1394'
VENDOR_ID='000000'
MODEL_ID='001010'
GUID='00010410100036e0'
SPECIFIER_ID='00609e'
VERSION='010483'
UDEVD_EVENT='1'
nectarine:~/bug103746/events # grep sbp2
/lib/modules/2.6.13-20050901172817-default/modules.alias 
alias ieee1394:ven*mo*sp0000609Ever00010483* sbp2
Comment 8 Olaf Hering 2005-09-02 12:28:21 UTC
Index: linux-2.6.13/drivers/ieee1394/nodemgr.c
===================================================================
--- linux-2.6.13.orig/drivers/ieee1394/nodemgr.c
+++ linux-2.6.13/drivers/ieee1394/nodemgr.c
@@ -1094,6 +1094,11 @@ do {                                                    
        \
        PUT_ENVP("GUID=%016Lx", (unsigned long long)ud->ne->guid);
        PUT_ENVP("SPECIFIER_ID=%06x", ud->specifier_id);
        PUT_ENVP("VERSION=%06x", ud->version);
+       PUT_ENVP("MODALIAS=ieee1394:ven%08xmo%08xsp%08xver%08x",
+                       ud->vendor_id,
+                       ud->model_id,
+                       ud->specifier_id,
+                       ud->version);
 
 #undef PUT_ENVP
 
Comment 9 Olaf Hering 2005-09-02 12:31:51 UTC
printf 'ieee1394:ven%08Xmo%08Xsp%08Xver%08X' '0x000000' '0x001010' '0x00609e'
'0x010483' ; echo 

modprobe -v ieee1394:ven00000000mo00001010sp0000609Ever00010483

this works, must be uppercase X
Comment 10 Olaf Hering 2005-09-02 13:51:09 UTC
patch commited, joy and happieness.

+- add patches.fixes/ieee1394-MODALIAS.patch
+  provide MODALIAS= for ieee1394 devices (#103746)