[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230311051712.4095040-12-mcgrof@kernel.org>
Date: Fri, 10 Mar 2023 21:17:11 -0800
From: Luis Chamberlain <mcgrof@...nel.org>
To: linux-modules@...r.kernel.org, linux-kernel@...r.kernel.org,
pmladek@...e.com, david@...hat.com, petr.pavlu@...e.com,
prarit@...hat.com
Cc: christophe.leroy@...roup.eu, song@...nel.org, mcgrof@...nel.org,
torvalds@...ux-foundation.org
Subject: [RFC 11/12] module: use list_add_tail_rcu() when adding module
Put a new module at the end of the list intead of making
new modules at the top of the list. find_module_all() start
the hunt using the first entry on the list, if we assume
that the modules which are first loaded are the most
frequently looked for modules this should provide a tiny
optimization.
This is theoretical, and could use more actual data by analzying
the impact of this patch on boot time a slew of systems using
systemd-analyze.
Signed-off-by: Luis R. Rodriguez <mcgrof@...nel.org>
---
kernel/module/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/module/main.c b/kernel/module/main.c
index 909454f9616e..bc9202b60d55 100644
--- a/kernel/module/main.c
+++ b/kernel/module/main.c
@@ -2608,7 +2608,7 @@ static int add_unformed_module(struct module *mod)
goto out;
mod_update_bounds(mod);
- list_add_rcu(&mod->list, &modules);
+ list_add_tail_rcu(&mod->list, &modules);
mod_tree_insert(mod);
err = 0;
--
2.39.1
Powered by blists - more mailing lists