1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-25 01:34:28 +03:00
systemd/udev
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
..
lib libudev: make list_node functions available 2008-10-17 18:59:08 +02:00
.gitignore gitignore: move *.8 to subdirs 2008-09-29 05:03:43 +02:00
Makefile.am merge udev-rules.c and udev-rules-parse.c 2008-10-18 14:33:37 +02:00
test-udev.c make struct udev_rules opaque 2008-10-18 15:02:01 +02:00
udev-event.c merge udev-rules.c and udev-rules-parse.c 2008-10-18 14:33:37 +02:00
udev-node.c merge udev-rules.c and udev-rules-parse.c 2008-10-18 14:33:37 +02:00
udev-rules.c move run_program to util 2008-10-18 15:25:05 +02:00
udev-selinux.c rename udev source files 2008-10-16 18:13:48 +02:00
udev-sysdeps.h rename udev source files 2008-10-16 18:13:48 +02:00
udev-util.c move run_program to util 2008-10-18 15:25:05 +02:00
udev.h move run_program to util 2008-10-18 15:25:05 +02:00
udev.xml ignore duplicated rules file names 2008-08-09 14:05:01 +02:00
udevadm-control.c use no_argument, required_argument, optional_argument in longopts 2008-10-02 16:49:05 +02:00
udevadm-info.c udevd: use libudev 2008-10-16 17:16:58 +02:00
udevadm-monitor.c use no_argument, required_argument, optional_argument in longopts 2008-10-02 16:49:05 +02:00
udevadm-settle.c use no_argument, required_argument, optional_argument in longopts 2008-10-02 16:49:05 +02:00
udevadm-test.c make struct udev_rules opaque 2008-10-18 15:02:01 +02:00
udevadm-trigger.c use no_argument, required_argument, optional_argument in longopts 2008-10-02 16:49:05 +02:00
udevadm.c udevd: use libudev 2008-10-16 17:16:58 +02:00
udevadm.xml udevadm: trigger: use libudev 2008-09-30 13:43:35 +02:00
udevd.c udevd: avoid overhead of calling rmdir on non-empty directories 2008-10-18 15:28:49 +02:00
udevd.xml udevadm: add --version --help options to man page, hide them as commands 2008-09-07 14:48:33 +02:00