On 3/17/25 20:57, Richard Guy Briggs wrote:
The move of the module sanity check to earlier skipped the audit
logging
call in the case of failure and to a place where the previously used
context is unavailable.
Add an audit logging call for the module loading failure case and get
the module name when possible.
Link:
https://issues.redhat.com/browse/RHEL-52839
Fixes: 02da2cbab452 ("module: move check_modinfo() early to
early_mod_check()")
Signed-off-by: Richard Guy Briggs <rgb(a)redhat.com>
The change looks reasonable to me from the modules perspective.
Nit: Viewing the linked address requires a login, so I'm not sure it's
appropriate for the commit message.
[...]
diff --git a/kernel/module/main.c b/kernel/module/main.c
index 1fb9ad289a6f..efa62ace1b23 100644
--- a/kernel/module/main.c
+++ b/kernel/module/main.c
@@ -3346,7 +3346,7 @@ static int load_module(struct load_info *info, const char __user
*uargs,
module_allocated = true;
- audit_log_kern_module(mod->name);
+ audit_log_kern_module(info->name);
/* Reserve our place in the list. */
err = add_unformed_module(mod);
@@ -3506,8 +3506,10 @@ static int load_module(struct load_info *info, const char __user
*uargs,
* failures once the proper module was allocated and
* before that.
*/
- if (!module_allocated)
+ if (!module_allocated) {
+ audit_log_kern_module(info->name ? info->name : "(unavailable)");
mod_stat_bump_becoming(info, flags);
+ }
free_copy(info, flags);
return err;
}
Nit:
audit_log_kern_module(info->name ? info->name : "(unavailable)");
->
audit_log_kern_module(info->name ?: "(unavailable)");
--
Thanks,
Petr