Pull modules updates from Petr Pavlu: - Use RCU instead of RCU-sched The mix of rcu_read_lock(), rcu_read_lock_sched() and preempt_disable() in the module code and its users has been replaced with just rcu_read_lock() - The rest of changes are smaller fixes and updates * tag 'modules-6.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/modules/linux: (32 commits) MAINTAINERS: Update the MODULE SUPPORT section module: Remove unnecessary size argument when calling strscpy() module: Replace deprecated strncpy() with strscpy() params: Annotate struct module_param_attrs with __counted_by() bug: Use RCU instead RCU-sched to protect module_bug_list. static_call: Use RCU in all users of __module_text_address(). kprobes: Use RCU in all users of __module_text_address(). bpf: Use RCU in all users of __module_text_address(). jump_label: Use RCU in all users of __module_text_address(). jump_label: Use RCU in all users of __module_address(). x86: Use RCU in all users of __module_address(). cfi: Use RCU while invoking __module_address(). powerpc/ftrace: Use RCU in all users of __module_text_address(). LoongArch: ftrace: Use RCU in all users of __module_text_address(). LoongArch/orc: Use RCU in all users of __module_address(). arm64: module: Use RCU in all users of __module_text_address(). ARM: module: Use RCU in all users of __module_text_address(). module: Use RCU in all users of __module_text_address(). module: Use RCU in all users of __module_address(). module: Use RCU in search_module_extables(). ...
Showing the changes to kernel/livepatch (1 of 27 files). Show all
Unified · Split
| @@ -59,7 +59,7 @@ static void klp_find_object_module(struct klp_object *obj) · 58 unmodified lines | ||
| 59 | 59 | if (!klp_is_module(obj)) |
| 60 | 60 | return; |
| 61 | 61 | |
| 62 | − rcu_read_lock_sched(); | |
| 62 | + guard(rcu)(); | |
| 63 | 63 | /* |
| 64 | 64 | * We do not want to block removal of patched modules and therefore |
| 65 | 65 | * we do not take a reference here. The patches are removed by |
| @@ -75,8 +75,6 @@ static void klp_find_object_module(struct klp_object *obj) · 9 unmodified lines | ||
| 75 | 75 | */ |
| 76 | 76 | if (mod && mod->klp_alive) |
| 77 | 77 | obj->mod = mod; |
| 78 | − | |
| 79 | − rcu_read_unlock_sched(); | |
| 80 | 78 | } |
| 81 | 79 | |
| 82 | 80 | static bool klp_initialized(void) |