David Zeuthen [Tue, 16 Jun 2009 20:41:03 +0000 (16:41 -0400)]
Bug 22149 – Do not poll floppy drives
Avoid polling PC floppy drives since that makes a lot of
noise. DrivePollMedia() still works, e.g.
dbus-send --system --print-reply --dest=org.freedesktop.DeviceKit.Disks \
/org/freedesktop/DeviceKit/Disks/devices/fd0 \
org.freedesktop.DeviceKit.Disks.Device.DrivePollMedia
Note, though, that udev will not run /sbin/blkid on the device. So
desktops wanting to support this needs to ignore the fstype for floppy
drives and just attempt to mount it anyway.
David Zeuthen [Mon, 15 Jun 2009 19:51:54 +0000 (15:51 -0400)]
Fix bug when retrieving historical ATA SMART data
David Zeuthen [Mon, 15 Jun 2009 16:00:39 +0000 (12:00 -0400)]
Use gudev-1.0 instead of devkit-gobject
Can't believe how easy this port was...
David Zeuthen [Mon, 15 Jun 2009 15:30:07 +0000 (11:30 -0400)]
Remove :drive-requires-eject and read udev props for detached/ejectable
David Zeuthen [Sun, 14 Jun 2009 17:12:33 +0000 (13:12 -0400)]
Suspend USB device on DriveDetach() if it only has one interface
This is nice for turning the lights off...
David Zeuthen [Fri, 12 Jun 2009 15:44:43 +0000 (11:44 -0400)]
Don't insert NULL pointers in details
David Zeuthen [Tue, 9 Jun 2009 00:13:01 +0000 (20:13 -0400)]
Add a DriveDetach() method to properly power down USB hard disk enclosures
This work is inspired by this thread
http://thread.gmane.org/gmane.linux.hotplug.devel/14079
that is referencing this blog entry
http://elliotli.blogspot.com/2009/01/safely-remove-usb-hard-drive-in-linux.html
The only difference here is that instead of unbinding the usb driver
from the usb device, we unbind the usb-storage driver from the usb
interface in question. This is to better handle multi-function devices
(e.g. multiple USB interfaces).
Things like GVfs (ie. Nautilus) can use this new method to offer an
"Eject" option for USB enclosures that can invoke DriveDetach() on
this service. (In GVfs, such devices currently have no eject option
since they don't support removable media).
David Zeuthen [Mon, 8 Jun 2009 17:33:17 +0000 (13:33 -0400)]
The PolicyKit extensions dir has moved
David Zeuthen [Tue, 2 Jun 2009 19:55:22 +0000 (15:55 -0400)]
Add a pkg-config file
David Zeuthen [Tue, 26 May 2009 20:33:09 +0000 (16:33 -0400)]
Use PolkitDetails, not GHashTable to pass details to PolicyKit
David Zeuthen [Tue, 19 May 2009 21:43:25 +0000 (17:43 -0400)]
Only check for ATA SMART if the device reports non-removable media
David Zeuthen [Tue, 19 May 2009 16:09:57 +0000 (12:09 -0400)]
Catch up with latest polkit API changes
David Zeuthen [Wed, 13 May 2009 16:21:08 +0000 (12:21 -0400)]
Update to latest polkit API where PolkitAuthorizationResult is an object
David Zeuthen [Wed, 13 May 2009 15:00:53 +0000 (11:00 -0400)]
Update to latest PolicyKit API
David Zeuthen [Mon, 11 May 2009 21:14:37 +0000 (17:14 -0400)]
Remove unneeded code for PolicyKit
David Zeuthen [Mon, 11 May 2009 21:03:02 +0000 (17:03 -0400)]
Post-release version bump
David Zeuthen [Mon, 11 May 2009 20:27:15 +0000 (16:27 -0400)]
Port to polkit-1
David Zeuthen [Mon, 11 May 2009 20:26:35 +0000 (16:26 -0400)]
Move to using a capital letter for commit messages
David Zeuthen [Fri, 1 May 2009 21:54:12 +0000 (17:54 -0400)]
only consider Prefail attibutes when checking for bad attributes
David Zeuthen [Fri, 1 May 2009 20:02:18 +0000 (16:02 -0400)]
add :device-media-detection-time property
This property aids desktop automounters in determining they shouldn't
automount devices that are created as a result of
formatting/partitioning.
David Zeuthen [Wed, 29 Apr 2009 16:48:52 +0000 (12:48 -0400)]
add support for ext2
This is sometimes wanted for filesystems on flash devices.
David Zeuthen [Thu, 16 Apr 2009 17:04:33 +0000 (13:04 -0400)]
properly detect devices with vfat on the whole disk
See https://bugzilla.redhat.com/show_bug.cgi?id=495876
David Zeuthen [Wed, 15 Apr 2009 18:39:18 +0000 (14:39 -0400)]
allow the 'flush' mount option for vfat
David Zeuthen [Wed, 15 Apr 2009 16:56:02 +0000 (12:56 -0400)]
fix up some warnings
David Zeuthen [Wed, 15 Apr 2009 15:16:58 +0000 (11:16 -0400)]
add property device-detection-time
David Zeuthen [Wed, 15 Apr 2009 14:48:00 +0000 (10:48 -0400)]
document influential udev properties in the DeviceKit-disks man page
David Zeuthen [Wed, 15 Apr 2009 14:47:24 +0000 (10:47 -0400)]
add device-presentation-hide property
This is useful for a number of things
- hiding firmware/update partitions (similar to how volume.ignore is used
in HAL to hide e.g. HP_RECOVERY, RECOVERY etc. partitions)
- hiding unwanted things used in things like live cd environments, cf.
https://bugzilla.redhat.com/show_bug.cgi?id=495170
David Zeuthen [Sun, 12 Apr 2009 19:25:41 +0000 (15:25 -0400)]
be more careful when probing for ATA SMART
See https://bugzilla.redhat.com/show_bug.cgi?id=495286 for where we
trash a CD-RW medium when running off a live cd.
David Zeuthen [Sun, 12 Apr 2009 16:14:36 +0000 (12:14 -0400)]
rework how we detect whether a device is busy
Commit
c1447a2e8a0d83347330bbfd2810f98172e8b962 was a bit overeager
insofor that it made it impossible to create/delete/modify partitions
if other partitions on the same device are busy.
David Zeuthen [Sun, 12 Apr 2009 15:39:23 +0000 (11:39 -0400)]
add temporary workaround for btrfs
See
https://bugzilla.redhat.com/show_bug.cgi?id=495152#c31
http://article.gmane.org/gmane.comp.file-systems.btrfs/2851
for details.
David Zeuthen [Sun, 12 Apr 2009 15:38:32 +0000 (11:38 -0400)]
remove debug spew
David Zeuthen [Thu, 9 Apr 2009 17:58:19 +0000 (13:58 -0400)]
also check if partitions on a device is busy
This fixes a bug where it was possible to erase /dev/sdb while
/dev/sdb1 was mounted.
David Zeuthen [Thu, 9 Apr 2009 15:13:41 +0000 (11:13 -0400)]
use correct dmode for iso9660 mounts
Reported by yaneti@declera.com
https://bugzilla.redhat.com/show_bug.cgi?id=495018
David Zeuthen [Wed, 8 Apr 2009 18:35:24 +0000 (14:35 -0400)]
add command line options to devkit-disks for refreshing ATA SMART data
David Zeuthen [Wed, 8 Apr 2009 18:20:57 +0000 (14:20 -0400)]
fix some bugs in the man page
David Zeuthen [Wed, 8 Apr 2009 17:18:19 +0000 (13:18 -0400)]
change default mount options for vfat to utf8=1 and shortname=lower
See https://bugzilla.redhat.com/show_bug.cgi?id=489222 for details.
David Zeuthen [Wed, 8 Apr 2009 16:55:51 +0000 (12:55 -0400)]
fix a race where /etc/fstab mount points where sometimes removed
David Zeuthen [Mon, 6 Apr 2009 23:50:35 +0000 (19:50 -0400)]
bump version
Should have done this right after releasing 003 but meh.
David Zeuthen [Mon, 6 Apr 2009 23:47:22 +0000 (19:47 -0400)]
use /var/run/DeviceKit-disks, not /tmp as a temporary directory
https://bugzilla.redhat.com/show_bug.cgi?id=491744
David Zeuthen [Mon, 6 Apr 2009 23:27:23 +0000 (19:27 -0400)]
remove hack for working around broken USB card reader
This add was added since one of my card readers appear to be broken;
other devices are fine.
On closer investigation this looks like a kernel bug. Filed here for
now
http://bugzilla.kernel.org/show_bug.cgi?id=13029
If needed we can add code to do the equivalent of 'touch /dev/sdXXX'
in the poller on the first ENOMEDIUM for a device being polled. But
let's see what the kernel guys says before resorting to such hacks.
David Zeuthen [Mon, 6 Apr 2009 21:38:57 +0000 (17:38 -0400)]
remove debug spew from mount monitor
David Zeuthen [Mon, 6 Apr 2009 21:08:51 +0000 (17:08 -0400)]
fix grammar/spelling for ATA SMART output in devkit-disks(1)
David Zeuthen [Mon, 6 Apr 2009 19:11:52 +0000 (15:11 -0400)]
install udev rules into /lib/udev/rules.d not /etc/udev/rules.d
David Zeuthen [Mon, 6 Apr 2009 19:08:24 +0000 (15:08 -0400)]
change devkit-disks(1) to use device node paths instead of object paths
David Zeuthen [Mon, 6 Apr 2009 19:06:10 +0000 (15:06 -0400)]
also move umount.devkit over to use the correct object paths
David Zeuthen [Mon, 6 Apr 2009 18:36:35 +0000 (14:36 -0400)]
add FindDeviceByMajorMinor() to look up a device by dev_t
David Zeuthen [Mon, 6 Apr 2009 16:59:47 +0000 (12:59 -0400)]
prefix all D-Bus objects paths with /org/freedesktop/DeviceKit/Disks
David Zeuthen [Mon, 6 Apr 2009 15:59:52 +0000 (11:59 -0400)]
fix udev rules to keep udev from complaining
David Zeuthen [Mon, 6 Apr 2009 15:51:15 +0000 (11:51 -0400)]
rework some of the ATA SMART stuff, go back to using sqlite
David Zeuthen [Thu, 2 Apr 2009 21:26:34 +0000 (17:26 -0400)]
remove erase= option and the notion of tasks within jobs
Secure erase is a bit K-rad and we never really implemented anything
but 0 and 1 passes. If we want this feature back (and I think we do;
e.g. it is useful to scrub the disks before selling a computer) we
should add a dedicated SecureErase() method that (optionally) can take
advantage of things like the ATA Secure Erase command-set.
While it is cute that jobs consist of tasks it is not used anymore now
that erase= is gone. So remove it to simplify the code.
David Zeuthen [Thu, 2 Apr 2009 19:37:43 +0000 (15:37 -0400)]
remove a lot of unnecessary errors
For example it doesn't make sense to return this error
org.freedesktop.DeviceKit.Disks.Error.NotPartition
since the client is already able to check in advance if the given
object really is a partition. So trim the error list to only contain
errors that the client can't predict. This leaves us with
DEVKIT_DISKS_ERROR_FAILED,
DEVKIT_DISKS_ERROR_BUSY,
DEVKIT_DISKS_ERROR_CANCELLED,
DEVKIT_DISKS_ERROR_INHIBITED,
DEVKIT_DISKS_ERROR_INVALID_OPTION,
DEVKIT_DISKS_ERROR_NOT_SUPPORTED,
DEVKIT_DISKS_ERROR_ATA_SMART_WOULD_WAKEUP,
David Zeuthen [Thu, 2 Apr 2009 19:14:43 +0000 (15:14 -0400)]
remove device-is-busy property
This should never have been a property since
- we are not really ready to make that kind of guarantee; another
program may have the device open and then we're going to fail
with EBUSY and return a Busy D-Bus error
- it is computed on demand and that makes it difficult to determine
when it changes value and thus trigger a PropertyChanged event
Currently this property is not used by gnome-disk-utility. If it turns
out that we need something like this we can add a Device.IsBusy()
method.
David Zeuthen [Thu, 2 Apr 2009 18:37:57 +0000 (14:37 -0400)]
export device-major and device-minor properties
This makes it easier for clients wanting to fool around with
/proc/self/mountinfo themselves.
David Zeuthen [Thu, 2 Apr 2009 17:54:20 +0000 (13:54 -0400)]
use /proc/self/mountinfo and handle a device being mounted in multiple places
This is an effort to fix
https://bugzilla.redhat.com/show_bug.cgi?id=491924
Basically we have to somehow cope with a device being mounted in
multiple places. So we replace the property
String device-mount-path
with an array of mount paths
String device-mount-paths[]
We also try to make an effort to ensure that the shortest mount point
is shown before others. E.g. if you bind mount / on /foo then
device-mount-paths = ["/", "/foo"]
This means that desktop clients can just take the first mount path.
Also make a note that this is the mount point in the root
namespace. On systems clients running in other namespaces care has to
be taken; in this case the client probably needs to examine
/proc/self/mountinfo on his own to determine if a given block device
is mounted or not.
Also drop support for the 'remount' option; we might add it back later
but since we now support multiple mount points it makes everything a
bit weird.
David Zeuthen [Tue, 31 Mar 2009 20:54:33 +0000 (16:54 -0400)]
print the scheme of the main partition table, never the nested one
To avoid e.g. 'embr' for the scheme for logical partitions.
David Zeuthen [Tue, 31 Mar 2009 19:32:48 +0000 (15:32 -0400)]
rework partition table handling
David Zeuthen [Mon, 30 Mar 2009 22:23:01 +0000 (18:23 -0400)]
ensure a MS-DOS extended partition is busy if logical partitions are busy
David Zeuthen [Mon, 30 Mar 2009 21:15:08 +0000 (17:15 -0400)]
allow job-num-tasks to be 0 (meaning "unknown")
http://bugzilla.gnome.org/show_bug.cgi?id=575854
David Zeuthen [Mon, 30 Mar 2009 19:49:47 +0000 (15:49 -0400)]
if BLKRRPART fails with EBUSY, just try a few more times
See http://bugs.freedesktop.org/show_bug.cgi?id=20813 for details.
Matthias Clasen [Mon, 30 Mar 2009 03:08:24 +0000 (23:08 -0400)]
make umount work on mount points
Make umount-devkit support the traditional umount behaviour of
accepting either a device file or a mount path.
Signed-off-by: David Zeuthen <davidz@redhat.com>
Matthias Clasen [Sat, 28 Mar 2009 17:02:01 +0000 (13:02 -0400)]
fix typo in error name
https://bugs.freedesktop.org/show_bug.cgi?id=20889
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Mon, 23 Mar 2009 23:21:26 +0000 (19:21 -0400)]
forgot to add ATA SMART prober in last commit
David Zeuthen [Mon, 23 Mar 2009 23:14:24 +0000 (19:14 -0400)]
port to libatasmart
David Zeuthen [Tue, 17 Mar 2009 01:06:43 +0000 (21:06 -0400)]
fix up how device-is-system-internal is computed
This should fix
https://bugzilla.redhat.com/show_bug.cgi?id=489397
where we marked device-mapper devices as system internal.
Matthias Clasen [Tue, 17 Mar 2009 00:48:17 +0000 (20:48 -0400)]
fix up inhibit parameter handling
See https://bugzilla.redhat.com/show_bug.cgi?id=488850
David Zeuthen [Tue, 17 Mar 2009 01:17:26 +0000 (21:17 -0400)]
don't poll SATA AN drives
David Zeuthen [Sun, 15 Mar 2009 22:53:02 +0000 (18:53 -0400)]
rework default mount options
David Zeuthen [Sun, 15 Mar 2009 20:24:59 +0000 (16:24 -0400)]
avoid taking action if a component is removed from an array
This should really be done by the kernel. But it currently isn't. It simply
oopses now that user space isn't cleaning up after it....
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Sun, 15 Mar 2009 20:23:38 +0000 (16:23 -0400)]
export all linux-md raid devices (except ones marked as 'clear')
This is to provide UI to remove 'inactive' devices when the kernel
gets the life-cycle management wrong. See upcoming commit in
gnome-disk-utility for handling this.
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Sun, 15 Mar 2009 20:22:07 +0000 (16:22 -0400)]
add newline for debug message
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Sun, 15 Mar 2009 17:05:18 +0000 (13:05 -0400)]
only use a single PolicyKit action for Linux MD operations
David Zeuthen [Sun, 15 Mar 2009 17:04:47 +0000 (13:04 -0400)]
only export holders/slaves if the devices are in our db
This fixes a problem where the GVfs gdu volume monitor isn't updated if a LUKS device is unlocked from Palimpsest.
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Wed, 4 Mar 2009 19:23:04 +0000 (14:23 -0500)]
add a --dump option to devkit-disks(1)
David Zeuthen [Wed, 4 Mar 2009 15:11:08 +0000 (10:11 -0500)]
allow users with appropriate authorizations to unmount all fstab mounts
David Zeuthen [Tue, 3 Mar 2009 21:20:08 +0000 (16:20 -0500)]
use dev_t to identify mounts, not device files
This should fix all issues with things like device-mapper using
non-canonical device file names (e.g. /dev/mapper/VolGroup00-LogVol00).
Also, this allows us to delete a bunch of special case code that
already tried to deal with this
See https://bugzilla.redhat.com/show_bug.cgi?id=488258 for details.
David Zeuthen [Mon, 2 Mar 2009 21:05:35 +0000 (16:05 -0500)]
update README
David Zeuthen [Mon, 2 Mar 2009 20:09:18 +0000 (15:09 -0500)]
bump version to 003
David Zeuthen [Mon, 2 Mar 2009 19:53:51 +0000 (14:53 -0500)]
update NEWS and TODO
David Zeuthen [Mon, 2 Mar 2009 19:39:30 +0000 (14:39 -0500)]
make it possible to inhibit all operations on the daemon
This is needed for things like OS installers to inhibit automounting
etc.
David Zeuthen [Mon, 2 Mar 2009 18:19:56 +0000 (13:19 -0500)]
make help description for devkit-disks(1) point to the man page
David Zeuthen [Mon, 2 Mar 2009 18:15:22 +0000 (13:15 -0500)]
revise devkit-disks(1) man page and allow spawning programs when inhibiting
David Zeuthen [Mon, 2 Mar 2009 17:26:44 +0000 (12:26 -0500)]
make the degree character work in devkit-disks
David Zeuthen [Mon, 2 Mar 2009 17:20:30 +0000 (12:20 -0500)]
make devkit-disks(1) print SMART attributes
David Zeuthen [Mon, 2 Mar 2009 16:12:53 +0000 (11:12 -0500)]
rip out --create-fs option for now
David Zeuthen [Mon, 2 Mar 2009 14:40:25 +0000 (09:40 -0500)]
when taking ownership of a newly created file system, set the mode to 0700
David Zeuthen [Mon, 2 Mar 2009 14:31:19 +0000 (09:31 -0500)]
use dmask 0077 by default when mounting vfat volumes
This is to make the contents readable only by the user mounting the
file system. This can be overridden by passing the dmask=XYZ option to
FilesystemMount() method.
David Zeuthen [Mon, 2 Mar 2009 14:11:42 +0000 (09:11 -0500)]
use the right polkit action for ejecting drives
David Zeuthen [Mon, 2 Mar 2009 01:28:36 +0000 (20:28 -0500)]
simplify PolicyKit permissions a bit
David Zeuthen [Sun, 1 Mar 2009 23:29:45 +0000 (18:29 -0500)]
set is_system_internal for linux md devices
David Zeuthen [Sun, 1 Mar 2009 19:54:36 +0000 (14:54 -0500)]
fixup error message when adding/removing components
David Zeuthen [Sun, 1 Mar 2009 19:52:49 +0000 (14:52 -0500)]
split MD_NAME into home host and name
David Zeuthen [Sun, 1 Mar 2009 15:47:46 +0000 (10:47 -0500)]
make Device.is_busy() and Davice.partitions_are_busy() methods private
David Zeuthen [Sun, 1 Mar 2009 15:43:45 +0000 (10:43 -0500)]
slightly rework how polling is done
David Zeuthen [Sat, 28 Feb 2009 15:56:03 +0000 (10:56 -0500)]
use G_GNUC_CONST for all _get_type() functions
David Zeuthen [Sat, 28 Feb 2009 15:53:24 +0000 (10:53 -0500)]
fix up _TYPE_ and _IS_ type macros to use DEVKIT_DISKS_ as the prefix
David Zeuthen [Sat, 28 Feb 2009 15:44:43 +0000 (10:44 -0500)]
rework mounts handling
David Zeuthen [Fri, 27 Feb 2009 21:22:23 +0000 (16:22 -0500)]
ensure that properties are updated before FilesystemMount returns
David Zeuthen [Thu, 26 Feb 2009 00:25:22 +0000 (19:25 -0500)]
add new device-presentation-name and -icon-name properties
Also read these from udev properties
DKD_PRESENTATION_NAME
DKD_PRESENTATION_ICON_NAME
and set ICON_NAME for the iPod we have listed there.
David Zeuthen [Wed, 25 Feb 2009 23:49:57 +0000 (18:49 -0500)]
rename part_id to devkit-disks-part-id and namespace udev properties
David Zeuthen [Wed, 25 Feb 2009 23:39:37 +0000 (18:39 -0500)]
fix parallel build