module: minor allocation optimization
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest3 patches 2 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/3 | module: add an early early_mod_check()kernel/ | +26 | 1 reply | |
| 2/3 | module: move finished_loading()kernel/ | +21 | 0 replies | |
| 3/3 | module: avoid allocation if module is already present and readykernel/ | +3 | 1 reply |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/3] module: minor allocation optimization
Long ago I was debugging kernel/module.c and kernel/kmod.c and had implemented a sanity check to avoid allocating much of the needed struct module from what user passes on finit_module() too early, ie, before checking if the module was actually loaded.
I had disregarded this work as I had bundled it up with some aliasing work I had done, so incorrectly thought this depended on the alias work. Upon a second look it does not. The module name set on userspace on info->name is not the alias but the proper module name, as such using finished_loading() should suffice once to avoid allocating the module if its already present.
I've tested this with kmod.sh and found no regressions, the few minor enhancements are documented in patch 3 in detail. I'll let 0-day hammer on it as we review the patches [0] [1] but no build issues so far.
[0] https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=20171207-avoid-bogus-layout_and_allocate
[1] https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git/log/?h=20171207-avoid-bogus-layout_and_allocate
Luis R. Rodriguez (3):
module: add an early early_mod_check()
module: move finished_loading()
module: avoid allocation if module is already present and ready
kernel/module.c | 81 ++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 49 insertions(+), 32 deletions(-)
Signature · 1 line
2.15.0