diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2022-07-13 11:52:37 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2022-07-23 15:05:22 +0900 |
commit | e9d1fae3bbf4e4ee6a5416f8ed0e498f034f4d98 (patch) | |
tree | c4f6a22e2b256585dc1cf6fc9f643a61c3a999b7 /src/udev/udev-rules.h | |
parent | acfbd71ccc3c316c335accfb872937cbf9d3dde3 (diff) | |
download | systemd-e9d1fae3bbf4e4ee6a5416f8ed0e498f034f4d98.tar.gz |
udev: reload rules and builtins only when mtime of a config changed
This makes udevd reload rules only when the timestamp is updated,
even on SIGHUP or `udevadm control --reload`.
So, we can call `udevadm control --reload` without huge performance
penalty when no rules, .link files, and so on are changed.
Diffstat (limited to 'src/udev/udev-rules.h')
-rw-r--r-- | src/udev/udev-rules.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/udev/udev-rules.h b/src/udev/udev-rules.h index 704f690b67..860fe7c8e4 100644 --- a/src/udev/udev-rules.h +++ b/src/udev/udev-rules.h @@ -1,6 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once +#include "alloc-util.h" #include "hashmap.h" #include "time-util.h" #include "udev-util.h" @@ -21,6 +22,7 @@ UdevRules* udev_rules_new(ResolveNameTiming resolve_name_timing); int udev_rules_load(UdevRules **ret_rules, ResolveNameTiming resolve_name_timing); UdevRules *udev_rules_free(UdevRules *rules); DEFINE_TRIVIAL_CLEANUP_FUNC(UdevRules*, udev_rules_free); +#define udev_rules_free_and_replace(a, b) free_and_replace_full(a, b, udev_rules_free) bool udev_rules_should_reload(UdevRules *rules); int udev_rules_apply_to_event(UdevRules *rules, UdevEvent *event, |