Bug 104654

Summary: pre-beta2: no disk detected
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Stanislav Visnovsky <visnov>
Component: InstallationAssignee: Steffen Winterfeldt <snwint>
Status: RESOLVED FIXED QA Contact: Klaus Kämpf <kkaempf>
Severity: Blocker    
Priority: P5 - None CC: adrian.schroeter, aj, jsrain, locilka, mvidner, snwint
Version: Beta 1   
Target Milestone: ---   
Hardware: i386   
OS: All   
Whiteboard:
Found By: Development Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: y2log
boot.msg

Description Stanislav Visnovsky 2005-08-15 10:43:48 UTC
Seems like STABLE does not detect disks at all. This is a blocker for 
installation. 
 
SCR::Read (.probe.disk) returns empty list. 
 
I can attach logs if needed.
Comment 1 Andreas Jaeger 2005-08-15 11:26:31 UTC
Worked fine for me - I installed on x86-64 this morning (stable autobuild tree).
Comment 2 Martin Vidner 2005-08-15 11:30:06 UTC
So what exact versions of hwinfo and yast2-core did you use? 
Comment 3 Lukas Ocilka 2005-08-15 12:57:17 UTC
After some debugging we have found that it depends on the "D-BUS daemon".

When the D-BUS is running, probing doesn't work, when we shut it down, it starts
to work.

How to reproduce:
rcdbus stop
rcdbus status
echo "\`Read(.probe.disk)" | /usr/lib/YaST2/bin/y2base stdio scr
/ works /

rcdbus stop
rcdbus status
echo "\`Read(.probe.disk)" | /usr/lib/YaST2/bin/y2base stdio scr
/ doesn't work /

I can provide all strace logs but.... it is a lot of data :)))) and easy to
reproduce (with stable) or with Beta1 with new hwinfo installed (both works that
way).
Comment 4 Lukas Ocilka 2005-08-15 12:58:21 UTC
er, sorry

the second is:
... rcdbus start

;)
Comment 5 Steffen Winterfeldt 2005-08-15 13:13:05 UTC
Hm, works fine for me in both cases. You might try the latest hwinfo from 
/work/built/mbuild/ligeti-snwint-4/ 
Comment 6 Steffen Winterfeldt 2005-08-15 13:18:36 UTC
BTW, does 'hwinfo --disk' work? 
Comment 7 Lukas Ocilka 2005-08-15 14:14:48 UTC
Yes, hwinfo --disk works well. ... or returns something I'd expect as an output :)))
Please, try it on root@liche.suse.cz
Comment 8 Steffen Winterfeldt 2005-08-15 15:24:48 UTC
I see no problems on my test machines. Maybe your yast was compiled against  
a different libhd version?  
Comment 9 Lukas Ocilka 2005-08-15 18:27:06 UTC
My YaST have been installed from SUSE Linux 10.0 Beta1 DVD ISO image.
(Clear installaton today)
The only difference is the hwinfo[-devel] installed from our synchornized /work.

STABLE installation testing was reproduced on Stano's and my computer. Well,
using the same source. I'll try it tomorrow again. On the other hand, you should
have seen the liche.suse.cz's system (still available). yast2-core hasn't been
reinstalled.

The D-BUS problem has been found by Martin and me by diffing the strace logs
with standard Beta1 against `today`'s STABLE.
Comment 10 Klaus Kämpf 2005-08-16 09:01:31 UTC
I just tried it with the full tree created overnight. 
Again, YaST does not detect any disks. 
However, running "hwinfo --disk" from cmdline finds the disk. Also running 
SCR::Read(.probe.disk) from cmdline reports the disk correctly. 
 
Puzzling. Will attach y2log. 
Comment 11 Klaus Kämpf 2005-08-16 09:09:36 UTC
Created attachment 46138 [details]
y2log
Comment 12 Klaus Kämpf 2005-08-16 09:10:27 UTC
Arvin, Thomas, there is a wrong array index mentioned at line 584: 
StorageDevices.ycp:198 invalid index 0 (max -1) in YCPValue 
YCPListRep::value(int) const 
Comment 13 Klaus Kämpf 2005-08-16 09:11:15 UTC
Adrian just experienced the same with his laptop. 
Comment 14 Klaus Kämpf 2005-08-16 09:16:07 UTC
The kernel detected the disk, see attached boot.msg  
Comment 15 Klaus Kämpf 2005-08-16 09:16:42 UTC
Created attachment 46139 [details]
boot.msg
Comment 16 Klaus Kämpf 2005-08-16 09:18:49 UTC
Bug #104715 is probably related. 
Comment 17 Arvin Schnell 2005-08-16 09:35:43 UTC
The invalid index is not the cause of the problem.  The SCR simply
returns nothing.  This is the code in StorageDevices.ycp

    list<map> all_disks = (list<map>) SCR::Read(.probe.disk);
    y2milestone( "localProbe: disks probed");
    y2milestone( "localProbe: all_disks %1", all_disks );

And the log says:

    localProbe: all_disks []
Comment 18 Timo Hoenig 2005-08-16 09:40:18 UTC
Bug #104715 seems to cause this bug, marking as duplicate.

*** This bug has been marked as a duplicate of 104715 ***

*** This bug has been marked as a duplicate of 104715 ***
Comment 19 Thomas Fehr 2005-08-16 09:48:39 UTC
Just for information the invalid index mentioned by Klaus was due to the
fact that no cdrom was detected at all. 
This had no consequences at all but of course it is meanwhile fixed.
Comment 20 Klaus Kämpf 2005-08-16 09:56:06 UTC
How does libstorage react if no disks are found ? 
(I'm currently experiencing YaST crashes if no disks are found) 
Comment 21 Thomas Fehr 2005-08-16 09:59:55 UTC
libstorage should not crash.
Here I get disks detected and my YaST2 crashes also with current Beta#2 instsys.
Comment 22 Steffen Winterfeldt 2005-08-16 11:11:49 UTC
hal now works and yast never finds disks 
Comment 23 Steffen Winterfeldt 2005-08-16 11:23:06 UTC
I think I've found it 
Comment 24 Steffen Winterfeldt 2005-08-16 11:29:22 UTC
seems to work. fixed in libhd 11.12