1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-02 19:21:53 +03:00
Commit Graph

49 Commits

Author SHA1 Message Date
Alan Jenkins
f503f6b22f udevd: implement a more efficient queue file format
Directory lookups show up in profiling. The queue files are responsible
for a large proportion of file-related system calls in udev coldplug.

Instead of creating a file for each event, append their details to a
log file.  The file is periodically rebuilt (garbage-collected) to
prevent it from growing indefinitely.

This single queue file replaces both the queue directory and the
uevent_seqnum file. On desktop systems the file tends not to grow
beyond one page. So it should also save a small amount of memory in
tmpfs.

Tests on a running EeePC indicate average savings of 5% *udevd* cpu time
as measured by oprofile. __link_path_walk is reduced from 1.5% to
1.3%. It is not completely clear where the rest of the gains come from.

In tests running ~400 events, the queue file is rebuilt about 5 times.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2009-05-21 22:22:37 +02:00
Kay Sievers
9d5bdeb3d3 version bump 2009-05-13 03:13:08 +02:00
Kay Sievers
3de63a356f delete libvolume_id 2009-05-12 13:28:01 +02:00
Kay Sievers
cb0237d7d9 build: use AC_MSG_RESULT 2009-05-01 05:09:51 +02:00
Kay Sievers
e14bdd88e9 libudev: monitor - add client socket filter for subsystem value
Messages send back by the udev daemon to the netlink socket are
multiplexed by the kernel and delivered to multiple clients. The
clients can upload a socket filter to let the kernel drop messages
not belonging to a certain subsystem. This prevent needless wakeups
and message processing for users who are only interested in a
subset of available events.

Recent kernels allow untrusted users to listen to the netlink
messages.

The messages send by the udev daemon are versioned, to prevent any
custom software reading them without libudev. The message wire format
may change with any udev version update.
2009-04-22 03:50:11 +02:00
Kay Sievers
3e5bafc98a libudev: path_encode - always return 0 if encoded string does not fit into size 2009-04-15 21:47:04 +02:00
Kay Sievers
9b144b8857 version bump 2009-04-14 21:02:39 +02:00
Kay Sievers
116254097a send monitor events back to netlink socket
Instead of of our own private monitor socket, we send the
processed event back to our netlink socket, to the multicast
group 2 -- so any number of users can listen to udev events,
just like they can listen to kernel emitted events on group 1.
2009-03-29 04:24:39 +02:00
Kay Sievers
f454f6708a udevadm: test - handling trailing '/' in devpath
On Wed, Mar 18, 2009 at 16:00, Matthias Schwarzott <zzam@gentoo.org> wrote:
found out how the error occurs:
It is a difference between
A. udevadm test /sys/class/mem/null/
and
B. udevadm test /sys/class/mem/null

Case A was the case that showed the error behaviour. It seems udevadm is
confused by the trailing slash. This behaviour seems to be there since ages.
2009-03-18 18:42:16 +01:00
Kay Sievers
b25d8cfa93 version bump 2009-03-18 17:54:00 +01:00
Kay Sievers
89d080c3ae libudev: ctrl - return error after sending ctrl message 2009-03-11 13:32:39 +01:00
Harald Hoyer
18e3d9abc3 libvolume_id: bump age
Because you added the symbol volume_id_set_uuid_sub() in commit
14e18278, you have to increase the library minor version.
2009-03-06 12:42:00 +01:00
Kay Sievers
a5d8cffad9 libudev: queue - use lstat() to check existence of symlink 2009-03-04 23:32:16 +01:00
Kay Sievers
1597517c9e volume_id: ntfs - fix uuid setting
In my scenario, the ntfs prober did *not* detect the presence of a
ntfs filesystem (i.e. vol_id --probe-all returned *only* ext3).
However, if you examine the source of the ntfs prober, it overwrites
the uuid field of the volume_id object long before it actually
decides there's a valid filesystem there - this resulted in vol_id
returning the rather bizarre combination of type=ext3, but a uuid
populated by the ntfs prober.

https://bugs.edge.launchpad.net/ubuntu/+source/udev/+bug/337015
2009-03-03 20:11:09 +01:00
Kay Sievers
cb81636a01 version bump 2009-03-03 00:55:42 +01:00
Kay Sievers
45a1dbba49 use AC_USE_SYSTEM_EXTENSIONS instead of AC_GNU_SOURCE 2009-02-26 14:17:04 +01:00
Kay Sievers
03733b04c3 add m4/ subdir 2009-02-26 14:11:43 +01:00
Kay Sievers
3d3a0a709a use the event udev_device to disable the watch on "remove" 2009-02-24 15:11:17 +01:00
Kay Sievers
58e495438b version bump 2009-02-23 21:27:03 +01:00
Kay Sievers
705e1c7ffe version bump 2009-01-25 21:25:41 +01:00
Sven Jost
64b333fdcc volume_id: support via raid version 2 2009-01-15 19:09:12 +01:00
Kay Sievers
affed87af1 libudev: use 4096 bytes buffer for attribute reading 2009-01-14 21:54:31 +01:00
Kay Sievers
b04ba6ce63 version bump 2009-01-10 01:38:54 +01:00
Kay Sievers
ada4df151f libudev: bump revision 2009-01-03 15:26:08 +01:00
Kay Sievers
109d114578 build: default to --prefix=/usr --exec-prefix="" 2008-12-29 06:20:17 +01:00
Kay Sievers
b6626d0962 build: add -lsepol
Harald needs it for static binaries.
2008-12-16 16:17:53 +01:00
Kay Sievers
626ed3b6c1 make: install serial rules file 2008-12-04 02:04:50 +01:00
Kay Sievers
3e18fb062f update configure and NEWS 2008-12-02 19:26:33 +01:00
Kay Sievers
ae0f55cb86 update configure and NEWS 2008-12-02 01:10:24 +01:00
Kay Sievers
6733f60178 update NEWS TODO 2008-11-22 00:34:42 +01:00
Kay Sievers
449934822e bump version 2008-11-18 19:16:42 +01:00
Kay Sievers
d78c0b3a5b update NEWS 2008-11-18 02:49:08 +01:00
Kay Sievers
90dca5ff9d volume_id: bump revision 2008-11-13 18:22:39 +01:00
Kay Sievers
1d36813d4c configure: add linux-hotplug mail address 2008-11-13 08:16:55 +01:00
Kay Sievers
fc0d4bd4a5 update NEWS 2008-11-13 08:03:49 +01:00
Kay Sievers
bfa9938c03 release 132 2008-11-07 16:08:58 +01:00
Kay Sievers
2d9a1b1ef2 pass make distcheck 2008-10-18 20:33:06 +02:00
Kay Sievers
f4700eb8a0 vol_id: update README 2008-10-13 03:34:37 +02:00
Kay Sievers
22c89d3fd7 vol_id: add size= option 2008-10-03 11:42:47 +02:00
Kay Sievers
714131f1f2 release 129 2008-10-01 20:42:53 +02:00
Kay Sievers
55eb845c28 release 128 2008-09-11 17:09:57 +02:00
Kay Sievers
17fcfb5972 use size definitions from libudev 2008-09-10 21:50:21 +02:00
Kay Sievers
ef5c2d048c volume_id: merge util.h in libvolume_id-private.h 2008-09-10 02:31:11 +02:00
Kay Sievers
41ff8053c1 release 127 2008-08-29 21:41:15 +02:00
Kay Sievers
2603474ff9 volume_id: remove deprecated functions and bump major version 2008-08-28 23:39:41 +02:00
Kay Sievers
33a5cc2976 libudev: add library to access udev information 2008-08-27 17:11:58 +02:00
Kay Sievers
e231a5db51 add some warnings 2008-08-12 11:19:32 +02:00
Kay Sievers
72a157b9ad build: remove autopoint check 2008-08-08 22:38:46 +02:00
Kay Sievers
01618658fd use autotools 2008-07-30 01:45:23 +02:00