Summary: | new device notifier eject behaviour for usb pendrives/iPods | ||
---|---|---|---|
Product: | [Unmaintained] plasma4 | Reporter: | shishir verma <shiverma> |
Component: | widget-devicenotifier | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ebachmann, giuliocamuffo, lex.lists, menegola, opensourcecat, riccardo, wilderkde |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
shishir verma
2008-08-13 20:19:07 UTC
not sure if this is really kde-specific bug. it would mean ejecting the device instead of simply unmounting it. I dont know if it is kde-specific or not, but I am not able to see this happen on Gnome, or kde3.5.9 for that matter. So, there is definitely some change in behaviour, intentional or otherwise. Yes. It should call the "eject /dev/[device]" command when umounting such devices. It is also valid for Nokia N series phones (And we all now like Nokia phones!). They need to be ejected to show the message: "you can now disconnect the cable". I don't know if it should be provided by hal or something else but, in the same OS (openSUSE 11.1), KDE4 does not "eject" while KDE3 does. I don't know how the system works at all, but it seems to me that copying a file to an usb device is an asynchronous task. Because, say we would like to transfer a 100MB file to it, dolphin or something else will think for two seconds and display "transference complete". But, in background, the system is still transferring the file. If you try umount the device, it will wait until the transfer is really complete. With Kde4 is pretty unclear when the umount task is really done. It would be nice if this could be more explicit. Something like a popup notification with messages "please wait while umounting this device" and "umount complete. you can now unplug the device" would be a wonderful start. I hope this helped. Thanks a lot. Similar issue as in http://bugs.gentoo.org/show_bug.cgi?id=270418: the device is mounted by HAL, and hal sets the "storage.requires_eject" property to "true". (side note: solidui doesn't offer a eject button on those devices, so you are forced to mount before you can eject...) Now, when unmounting, solid/hal should "eject" the device, afterwards the iPod/Nokia should show thats its now OK to unplug. However, solid tries to exec "/usr/bin/eject" on the device node, instead of telling DBUS to eject the device. but if the user running solid doesn't have permissions on the device node, /usr/bin/eject fails (its "permission denied" error message lands in ~/.xsession-errors) looking at kdelibs-4.3.1/solid/solid/backends/hal/halcdrom.cpp, the code to do the correct DBUS-"Eject" call seems to be in place, but is not executed. So my guess is that the problem somehow lies in the fstab-handling of solid... (and no, making /usr/bin/eject SUID root is not a solution) it seems to me that the problem lies in halstorageaccess.cpp, in slotDBusReply. there it checks the key storage.requires_eject, and if it is true it tries to eject the device calling eject instead of sending a dbus request to hal. Kevin committed a patch to solid (r1053814) and it should be fixed now. If you encounter this issue again reopen it. |