Commit Graph

228 Commits

Author SHA1 Message Date
Kay Sievers
a8a8930072 do not use the new work-in-progress parser rule matcher 2008-10-21 12:45:54 +02:00
Kay Sievers
20254eb021 add "root" == 0 shortcuts to lookup_user/group() 2008-10-21 12:43:07 +02:00
Kay Sievers
94db05d288 replace missing get_attr_value() -> get_sysattr_value() 2008-10-21 12:42:13 +02:00
Kay Sievers
69239210be libudev: device - get_attr_value() -> get_sysattr_value() 2008-10-20 18:12:36 +02:00
Kay Sievers
54808d77a3 prefix udev-util.c functions with util_* 2008-10-18 20:12:55 +02:00
Kay Sievers
c3b1fa66d2 selinux_init(udev) -> udev_selinux_init(udev) 2008-10-18 19:30:42 +02:00
Kay Sievers
eb8837e15c udev_list_cleanup() -> udev_list_cleanup_entries() 2008-10-18 19:27:38 +02:00
Kay Sievers
f1128767cb move udev_rules_apply_format() to udev-event.c 2008-10-18 19:19:56 +02:00
Kay Sievers
2d73813ebc udev_rules_run() -> udev_event_execute_run(); 2008-10-18 15:50:16 +02:00
Kay Sievers
dcdcb8cc06 udev_event_run() -> udev_event_execute_rules() 2008-10-18 15:46:55 +02:00
Alan Jenkins
836dcf951c udevd: avoid overhead of calling rmdir on non-empty directories
Unfortunately the linux rmdir implementation unhashes the dentry
even when the directory is not removed.  This is apparently by
design (for filesystems that don't allow deleting open files).

Results from time(1) and oprofile follow.

Before:

0.35user 0.90system
samples  %        image name               symbol name
608       9.6738  vmlinux                  shrink_dcache_parent
293       4.6619  vmlinux                  copy_page_c
271       4.3119  vmlinux                  copy_page_range
257       4.0891  udevd                    udev_rules_iter_next

After:

0.31user 0.67system
samples  %        image name               symbol name
361       5.0419  vmlinux                  copy_page_range
322       4.4972  udevd                    udev_rules_iter_next
300       4.1899  vmlinux                  copy_page_c

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-10-18 15:28:49 +02:00
Kay Sievers
d0db192fa5 move run_program to util 2008-10-18 15:25:05 +02:00
Kay Sievers
d7ddce186c make struct udev_rules opaque 2008-10-18 15:02:01 +02:00
Kay Sievers
c7521974a3 merge udev-rules.c and udev-rules-parse.c 2008-10-18 14:33:37 +02:00
Kay Sievers
bec02e3304 delete list.h 2008-10-17 19:29:57 +02:00
Kay Sievers
7e02792760 udevd: use udev_list_node 2008-10-17 18:59:27 +02:00
Kay Sievers
9dcf7ec8a0 libudev: make list_node functions available 2008-10-17 18:59:08 +02:00
Kay Sievers
b692a75089 libudev: ctrl - change magic to integer 2008-10-17 17:32:17 +02:00
Kay Sievers
cb25a9585d libudev: monitor - add set_receive_buffer_size() 2008-10-17 16:49:27 +02:00
Kay Sievers
bdeab5c7fd libudev: add sysnum to test program 2008-10-17 13:54:14 +02:00
Alan Jenkins
babcf3cb22 libudev: fix sysnum logic for digit-only device names 2008-10-17 13:19:54 +02:00
Kay Sievers
3feeb77c97 libudev: list - prepend udev_* to all functions 2008-10-17 01:39:10 +02:00
Kay Sievers
d130881d34 delete udev-util-file.c 2008-10-17 00:42:48 +02:00
Kay Sievers
fc42bd5d6b update rules file parsing 2008-10-17 00:40:03 +02:00
Kay Sievers
bb144ed14d update IMPORT= file/stdout property parsing 2008-10-16 22:41:52 +02:00
Kay Sievers
c28c4486af run_program: prevent empty last argv entry 2008-10-16 21:35:11 +02:00
Kay Sievers
be7f7f5701 fix sorting of rules files 2008-10-16 21:12:08 +02:00
Kay Sievers
a390e6f764 delete name_list, move common file functions 2008-10-16 20:23:56 +02:00
Kay Sievers
daa849db6f udev-rules-parse: name_list -> udev_list 2008-10-16 20:12:16 +02:00
Kay Sievers
7db6580f42 udev-node: name_list -> udev_list 2008-10-16 19:23:07 +02:00
Kay Sievers
3361a0f110 libudev: monitor - export MAJOR/MINOR only if available 2008-10-16 18:56:19 +02:00
Kay Sievers
3fb629fd5e libudev: always add UDEV_LOG 2008-10-16 18:51:05 +02:00
Kay Sievers
8460299b57 rename udev source files 2008-10-16 18:13:48 +02:00
Kay Sievers
fc233a874b move udev_device_db to libudev 2008-10-16 17:30:06 +02:00
Kay Sievers
aa8734ffcb udevd: use libudev 2008-10-16 17:16:58 +02:00
Kay Sievers
ebacd6ecc3 libudev: device - copy global properties, unset empty properties 2008-10-16 13:53:16 +02:00
Kay Sievers
f183b6ed76 libudev: add global property list 2008-10-16 13:51:29 +02:00
Kay Sievers
6a95b1e7d6 libudev: ctrl - fix typo in set_env() 2008-10-16 13:34:11 +02:00
Kay Sievers
2c09b3b41d libudev: list - handle update of key with NULL value 2008-10-16 13:33:13 +02:00
Kay Sievers
31f4b036ea libudev: device - export properties when values are set 2008-10-16 11:37:22 +02:00
Kay Sievers
5c5cad7966 libudev: device - lookup "subsystem" and "driver" only once 2008-10-15 18:34:14 +02:00
Kay Sievers
bd85566c16 libudev: update DEVLINKS property when properties are read 2008-10-15 16:56:06 +02:00
Kay Sievers
1e61ff54f5 libudev: monitor - do not mangle DEVLINKS property 2008-10-15 16:55:04 +02:00
Kay Sievers
6ebc7a4f93 libudev: do not include ctrl in libudev.so 2008-10-15 16:54:06 +02:00
Kay Sievers
979ff016ef libudev: device - add get_envp() to construct envp from property list 2008-10-15 14:21:33 +02:00
Kay Sievers
81d9e22120 libudev: monitor - fix send_device() property copying 2008-10-15 14:20:27 +02:00
Kay Sievers
517814e7d0 libudev: handle ! in sysname, add sysnum, return allocated list_entry on add 2008-10-14 19:53:47 +02:00
Kay Sievers
9a997ecf4e libudev: device - generate DEVNAME and DEVLINKS properties 2008-10-11 18:40:33 +02:00
Kay Sievers
df1dcc09ef libudev: list - add flag 2008-10-11 18:40:04 +02:00
Kay Sievers
9925ab0451 libudev: add udev_monitor_send_device() 2008-10-09 23:38:30 +02:00
Kay Sievers
8cd2e972e5 libudev: also prefix non-exported functions with udev_* 2008-10-09 22:24:43 +02:00
Kay Sievers
90d80c2efc libudev: device - add device lookup by subsystem:sysname 2008-10-07 20:20:34 +02:00
Kay Sievers
ee173c5927 replace spaces in dm and md name symlinks
We create multiple symlinks for dm names with spaces, which
isn't what we want.
2008-10-07 00:41:00 +02:00
Kay Sievers
31441f6a4b libudev: fix typo in "multiple entries in symlink" handling 2008-10-06 18:17:27 +02:00
Kay Sievers
1e75cda345 store node name and symlinks into db symlink target if they are small enough 2008-10-06 13:52:43 +02:00
Kay Sievers
fa03f6ae4b libudev: libudev.pc remove selinux 2008-10-06 12:18:55 +02:00
Kay Sievers
ff6c1cb139 don not print error if GOTO jumps just to next rule 2008-10-05 17:27:21 +02:00
Kay Sievers
85e73aef06 libudev: fix --enable-debug 2008-10-05 16:18:21 +02:00
Kay Sievers
30f8f89625 udevd: clarify deprecated sysfs layout warning 2008-10-04 13:52:39 +02:00
Kay Sievers
3ab8ebf572 volume_id: add dbg() as noop to check for compile errors 2008-10-03 14:50:57 +02:00
Kay Sievers
7744e869ec move selinux noops to udev.h 2008-10-03 14:49:29 +02:00
Kay Sievers
ee137da389 udevadm: info - fix --query=all for devices without a device node 2008-10-03 10:33:15 +02:00
Kay Sievers
98f10a9e2a libudev: device - add get_parent_with_subsystem() 2008-10-02 21:19:00 +02:00
Kay Sievers
e598c5738c libudev: get rid of selinux
"Hello world!" linked against libselinux parses /proc/mounts and
whatever else on startup, even when the lib is not needed at all.
Not funny! Get rid of that thing where it's not absolutely needed.
2008-10-02 18:48:40 +02:00
Kay Sievers
033e9f8cde use no_argument, required_argument, optional_argument in longopts 2008-10-02 16:49:05 +02:00
Kay Sievers
13ddea8154 libudev: enumerate - add_device() -> add_syspath() 2008-10-02 11:54:33 +02:00
Kay Sievers
d6b148cde2 fix compile error with --disable-logging 2008-10-02 06:20:33 +02:00
Kay Sievers
f13e4c36c2 udevd: print warning if CONFIG_SYSFS_DEPRECATED is used
Future udev versions will depend on the current sysfs layout, which
includes features which are not available in the deprecated mode.
2008-10-01 19:00:55 +02:00
Kay Sievers
8a1946ae08 udevadm: trigger --type=failed - use libudev queue 2008-10-01 14:41:43 +02:00
Kay Sievers
cabfd8d0b4 libudev: enumerate - ignore regular files while scanning 2008-10-01 13:57:39 +02:00
Kay Sievers
62b9dfb622 libudev: device - handle /sys/block/<disk-device-link>/<partition> 2008-10-01 10:22:47 +02:00
Kay Sievers
8249e04e3e udevadm: settle - use libudev queue 2008-10-01 09:42:03 +02:00
Kay Sievers
64ccdf8269 libudev: add queue interface 2008-10-01 09:34:07 +02:00
Kay Sievers
d41b956e7f udevadm: trigger fix long option --type= 2008-09-30 16:25:46 +02:00
Kay Sievers
e0083e8e69 libudev: device_init() -> device_new() 2008-09-30 16:16:29 +02:00
Kay Sievers
d98bffa802 fix segfault caused by wrong pointer used in dbg() 2008-09-30 14:47:49 +02:00
Kay Sievers
f5001d2465 udevadm: trigger: use libudev 2008-09-30 13:43:35 +02:00
Kay Sievers
c97f839eed libudev: enumerate - scan devices and subsystems, add subsystem and attribute filter 2008-09-30 13:42:26 +02:00
Kay Sievers
4aa0b15efb fix dbg() callers 2008-09-29 19:03:08 +02:00
Alan Jenkins
9176ac1f4e allow compiler to check dbg() arguments on non-debug builds
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-09-29 18:54:21 +02:00
Alan Jenkins
120ff8a0e8 fix messages (inc. debug compile failure) introduced when optimizing "goto"
Signed-off-by: <alan-jenkins@tuffmail.co.uk>
2008-09-29 18:39:41 +02:00
Alan Jenkins
659353f5a9 replace strerror() usage with threadsafe "%m" format string
strerror() is not threadsafe.  It uses a buffer to build messages of the form
"Unknown error 387689".

syslog() provides a %m format which is equivalent to strerror(errno).
As a GNU extension, this is also accepted by printf and friends.
At least in the current implementation, it is correctly threadsafe.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-09-29 17:06:00 +02:00
Kay Sievers
d0f398bc25 gitignore: move *.8 to subdirs 2008-09-29 05:03:43 +02:00
Kay Sievers
438d4c3cd4 libudev: enumerate - split new() and scan() 2008-09-29 02:00:17 +02:00
Kay Sievers
b03e89cfba libudev: enumerate - scan /sys/block/ if needed 2008-09-28 23:17:29 +02:00
Kay Sievers
6f67f1dfb7 libudev: enumerate "subsystem" 2008-09-28 22:18:40 +02:00
Kay Sievers
bc8184ede9 libudev: enumerate - accept list of subsystems to scan, or skip 2008-09-28 17:39:31 +02:00
Alan Jenkins
41b7a00922 avoid repeated scans for goto targets (udev_iter_find_label)
The scans are now performed up-front at parse-time, instead of being
repeated for each event at run-time.

Cachegrind reports a 5% reduction in cpu cycles
(excluding the time spent in-kernel).
2008-09-28 14:11:47 +02:00
Alan Jenkins
669ed8675f trivial cleanup in udev_rules_iter 2008-09-28 14:10:53 +02:00
Kay Sievers
b95f8a76e6 lubudev: accept more sys directories as devices, and parent devices 2008-09-28 03:34:57 +02:00
Kay Sievers
0de33a61d7 libudev: more list rework 2008-09-28 01:34:55 +02:00
Kay Sievers
e345e2670a libudev: rework list handling 2008-09-26 19:44:53 +02:00
Kay Sievers
9921484458 libudev: device - read database only when needed 2008-09-26 19:43:32 +02:00
Kay Sievers
5fc523db68 libudev: initialize selinux only when needed 2008-09-26 19:43:14 +02:00
Kay Sievers
cd42b50d86 libudev: enumerate_get_devices_list -> enumerate_get_list 2008-09-26 19:41:50 +02:00
Kay Sievers
04f5d75f0c libudev: get devnum from uevent file 2008-09-25 14:26:22 -07:00
Kay Sievers
bf7ad0ea66 libudev: replace awkward callback list interfaces with list iterators 2008-09-25 04:20:27 -07:00
Kay Sievers
c8e32461cc libudev: add userdata pointer 2008-09-24 21:39:29 -07:00
Kay Sievers
03198b9303 libudev: also import "uevent" file when reading udev database 2008-09-24 12:25:31 -07:00
Kay Sievers
4c9dff47f6 libudev: add udev_device_new_from_devnum() 2008-09-21 23:28:56 -07:00