mirror of
https://github.com/systemd/systemd.git
synced 2024-11-06 08:26:52 +03:00
f503f6b22f
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>
74 lines
1.8 KiB
Plaintext
74 lines
1.8 KiB
Plaintext
udev_new
|
|
udev_ref
|
|
udev_unref
|
|
udev_set_log_fn
|
|
udev_get_log_priority
|
|
udev_set_log_priority
|
|
udev_get_userdata
|
|
udev_set_userdata
|
|
udev_get_sys_path
|
|
udev_get_dev_path
|
|
udev_list_entry_get_next
|
|
udev_list_entry_get_by_name
|
|
udev_list_entry_get_name
|
|
udev_list_entry_get_value
|
|
udev_device_new_from_syspath
|
|
udev_device_new_from_devnum
|
|
udev_device_new_from_subsystem_sysname
|
|
udev_device_get_parent
|
|
udev_device_get_parent_with_subsystem_devtype
|
|
udev_device_ref
|
|
udev_device_unref
|
|
udev_device_get_udev
|
|
udev_device_get_syspath
|
|
udev_device_get_devpath
|
|
udev_device_get_devnode
|
|
udev_device_get_sysname
|
|
udev_device_get_sysnum
|
|
udev_device_get_subsystem
|
|
udev_device_get_devtype
|
|
udev_device_get_devlinks_list_entry
|
|
udev_device_get_properties_list_entry
|
|
udev_device_get_property_value
|
|
udev_device_get_action
|
|
udev_device_get_driver
|
|
udev_device_get_devnum
|
|
udev_device_get_seqnum
|
|
udev_device_get_sysattr_value
|
|
udev_enumerate_new
|
|
udev_enumerate_ref
|
|
udev_enumerate_unref
|
|
udev_enumerate_get_udev
|
|
udev_enumerate_get_list_entry
|
|
udev_enumerate_add_match_subsystem
|
|
udev_enumerate_add_nomatch_subsystem
|
|
udev_enumerate_add_match_sysattr
|
|
udev_enumerate_add_nomatch_sysattr
|
|
udev_enumerate_add_match_property
|
|
udev_enumerate_scan_devices
|
|
udev_enumerate_scan_subsystems
|
|
udev_enumerate_add_syspath
|
|
udev_monitor_new_from_socket
|
|
udev_monitor_new_from_netlink
|
|
udev_monitor_enable_receiving
|
|
udev_monitor_ref
|
|
udev_monitor_unref
|
|
udev_monitor_get_udev
|
|
udev_monitor_get_fd
|
|
udev_monitor_receive_device
|
|
udev_monitor_filter_add_match_subsystem_devtype
|
|
udev_monitor_filter_update
|
|
udev_monitor_filter_remove
|
|
udev_queue_new
|
|
udev_queue_ref
|
|
udev_queue_unref
|
|
udev_queue_get_udev
|
|
udev_queue_get_kernel_seqnum
|
|
udev_queue_get_udev_seqnum
|
|
udev_queue_get_udev_is_active
|
|
udev_queue_get_queue_is_empty
|
|
udev_queue_get_seqnum_is_finished
|
|
udev_queue_get_seqnum_sequence_is_finished
|
|
udev_queue_get_queued_list_entry
|
|
udev_queue_get_failed_list_entry
|