From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.6) Gecko/20050308 Firefox/1.0.1 Fedora/1.0.1-5 Description of problem: System fully updated to Rawhide today, and fsatb entry for my dvd-rw (AOPEN DUW1608/12X) is not updated on reboot. I do have a CD-RW that does however shows. Both the CD-RW and the DVD-RW were both properly mounted in fstab last time I updated to Rawhide (~2/3 weeks ago). Version-Release number of selected component (if applicable): hal-0.5.0.cvs20050318-1 How reproducible: Always Steps to Reproduce: 1. Reboot and check /etc/fstab. 2. OR. Goto 'Computer' on nautilus 3. Actual Results: /dev/hdd mount missing in /etc/fstab; and subsequently DVD-RW volume not seen by nautilus. Additional info: Hardware browser sees it and shows it as /dev/hdd
Interesting; please attach the output of 'tree /sys' (you may need to install the 'tree' package).
Created attachment 112202 [details] Output of 'tree /sys'
That's rather strange :-) - as root, do a 'service haldaemon stop' and then 'hald --daemon=no --verbose=yes --retain-privileges 2> /tmp/hald-output.txt 1>&2' and then attach the file /tmp/hald-output.txt to this bug (you should Ctrl+C the process after about 30 seconds). Thanks.
Created attachment 112203 [details] output of hald --daemon=no --verbose=yes --retain-privileges
Thanks for the output. Please install the debuginfo packages ('yum install hal-debuginfo') and do the following command as root: 'UDI=/org/freedesktop/Hal/devices/computer HAL_PROP_BLOCK_DEVICE=/dev/hdd HAL_PROP_STORAGE_BUS=ide HAL_PROP_STORAGE_DRIVE_TYPE=cdrom HALD_VERBOSE=1 gdb /usr/libexec/hald-probe-storage' That will start the debugger; now type 'run' and press enter. When the prompt returns please invoke the 'bt' command and paste the output. Thanks!
> That will start the debugger; now type 'run' and press enter. When the prompt > returns please invoke the 'bt' command and paste the output. > [root@rhema2 ~]# UDI=/org/freedesktop/Hal/devices/computer HAL_PROP_BLOCK_DEVICE=/dev/hdd HAL_PROP_STORAGE_BUS=ide HAL_PROP_STORAGE_DRIVE_TYPE=cdrom HALD_VERBOSE=1 gdb /usr/libexec/hald-probe-storage GNU gdb Red Hat Linux (6.3.0.0-0.29rh) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1". (gdb) run Starting program: /usr/libexec/hald-probe-storage 4421: 23:33:53.693: probe-storage.c:151: Doing probe-storage for /dev/hdd (bus ide) (drive_type cdrom) (--only-check-for-fs==0) 4421: 23:33:53.694: probe-storage.c:164: Doing open ("/dev/hdd", O_RDONLY | O_NONBLOCK) 4421: 23:33:53.710: probe-storage.c:170: Returned from open(2) libhal.c 2783 : Error unsubscribing to signals, error=(null) Program exited with code 01. (gdb) bt No stack. (gdb) I'm waiting for the next instruction ;). Regards, Deji
Heh, this is almost interactive :-) OK, start the debugger again as in comment 5. Instead of 'run'-ing the program, do the following (gdb) break probe-storage.c:170 Breakpoint 1 at 0x8049304: file probe-storage.c, line 170. (gdb) run Starting program: /usr/libexec/hald-probe-storage 19783: 23:43:25.623: probe-storage.c:151: Doing probe-storage for /dev/hdc (bus ide) (drive_type cdrom) (--only-check-for-fs==0) 19783: 23:43:25.624: probe-storage.c:164: Doing open ("/dev/hdc", O_RDONLY | O_NONBLOCK) Breakpoint 1, main (argc=1, argv=0x7) at probe-storage.c:170 170 dbg ("Returned from open(2)"); (gdb) next and press enter until you see something like this Program exited normally. (gdb) The program is not being run. (gdb) and then please paste the output. Thanks, David
> > Program exited normally. > (gdb) > The program is not being run. > (gdb) > > and then please paste the output. > [root@rhema2 ~]# UDI=/org/freedesktop/Hal/devices/computer HAL_PROP_BLOCK_DEVICE=/dev/hdd HAL_PROP_STORAGE_BUS=ide HAL_PROP_STORAGE_DRIVE_TYPE=cdrom HALD_VERBOSE=1 gdb /usr/libexec/hald-probe-storage GNU gdb Red Hat Linux (6.3.0.0-0.29rh) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1". (gdb) break probe-storage.c:170 Breakpoint 1 at 0x8049304: file probe-storage.c, line 170. (gdb) run Starting program: /usr/libexec/hald-probe-storage 4444: 23:55:05.523: probe-storage.c:151: Doing probe-storage for /dev/hdd (bus ide) (drive_type cdrom) (--only-check-for-fs==0) 4444: 23:55:05.523: probe-storage.c:164: Doing open ("/dev/hdd", O_RDONLY | O_NONBLOCK) Breakpoint 1, main (argc=1, argv=0x7) at probe-storage.c:170 170 dbg ("Returned from open(2)"); (gdb) next 4444: 23:55:18.623: probe-storage.c:170: Returned from open(2) 172 did = drive_id_open_fd (fd); (gdb) 173 if (drive_id_probe_all (did) == 0) { (gdb) 174 if (did->serial[0] != '\0') (gdb) 175 if (!libhal_device_set_property_string (ctx, udi, "storage.serial", (gdb) 184 close (fd); (gdb) 413 dbus_error_init (&error); (gdb) 414 libhal_ctx_shutdown (ctx, &error); (gdb) libhal.c 2783 : Error unsubscribing to signals, error=(null) 415 libhal_ctx_free (ctx); (gdb) 419 } (gdb) 0x00456db6 in __libc_start_main () from /lib/tls/libc.so.6 (gdb) Single stepping until exit from function __libc_start_main, which has no line number information. Program exited with code 01. (gdb) The program is not being run. (gdb) The program is not being run. (gdb)
Thanks for the output; I will look at preparing a build with a possible fix tomorrow. Stay tuned! Cheers, David
Hi, Today's hal update (hal-0.5.0.cvs20050322b-1) doesn't seem to have fix the issue. I've upgraded to hal-0.5.0.cvs20050322b-1 and rebooted, and the DVD-RW is still missing from /etc/fstab. Regards,
Sorry, yeah, I was just about to ask you to run the commands in comment 5 again; I've instrumented the build with some more debug.
(In reply to comment #11) > Sorry, yeah, I was just about to ask you to run the commands in comment 5 again; > I've instrumented the build with some more debug. alright, here is the output; (gdb) run Starting program: /usr/libexec/hald-probe-storage 3172: 12:23:12.763: probe-storage.c:151: Doing probe-storage for /dev/hdd (bus ide) (drive_type cdrom) (udi=/org/freedesktop/Hal/devices/computer) (--only-check-for-fs==0) 3172: 12:23:12.764: probe-storage.c:164: Doing open ("/dev/hdd", O_RDONLY | O_NONBLOCK) 3172: 12:23:12.781: probe-storage.c:170: Returned from open(2) 3172: 12:23:12.782: probe-storage.c:174: serial = ' ', firmware = 'A070' libhal.c 2783 : Error unsubscribing to signals, error=(null) Program exited with code 01. (gdb) bt No stack. (gdb) No stack. (gdb)
OK, please run the same command again and instead of 'run' do (gdb) break probe-storage.c:175 (gdb) run ... (gdb) print did->serial (gdb) step and keep pressing return only the program exits. Then paste the log. Thanks, David
Created attachment 112281 [details] hal debuginfo in response to comment 13
Ah, this explains - the drive is returning garbage when we ask for the IDE serial number. Shouldn't be too difficult to fix, stay tuned.
Please try hal-0.5.0.cvs20050404-1 available in Rawhide tomorrow. Thanks, David
(In reply to comment #16) > Please try hal-0.5.0.cvs20050404-1 available in Rawhide tomorrow. > Nice work! The drive is now mounted and it;'s seen in 'Computer' in Nautilus. Howbeit it's wrongly named 'CD-ROM', whereas it used to be properly named DVD/+-RW before; I guess it's because hal doesn't know exactly what kind of drive it is as you earlier mentioned. Anynow it's now 'solved'. I guess the bug can be close now. Thanks, Deji