Messages in this thread | | | From | "Luis R. Rodriguez" <> | Subject | [PATCH v2 0/5] kmod: help make deterministic | Date | Thu, 25 May 2017 17:16:25 -0700 |
| |
On this v2 I'm following Dmitry Torokhov's recommendation from the v1 series [0] and I stop dancing around with work arounds and try to go straight for what I think should be a proper fix for kmod: throttle instead of failing when kmod max concurrent threshold is reached.
This patch series depends on the unsigned int range proc sysctl changes which Andrew Morton recently merged into his -mm tree [1].
The kmod stress test driver uses a new license (GPL on Linux, copyleft-next outside of Linux). Linus was fine with the copyleft-next so long as it was clear GPL applies to Linux [2] and an or clause was used if I wanted to use copyleft-next. Later based on discussions with Alan and Ted ironed out an "or" language clause to use [3].
All code is also available on my 20170525-kmod-throttle branch of my linux-next tree based on tag next-20170525 [4].
If there are any questions please let me know.
[0] https://lkml.kernel.org/r/20170519032444.18416-1-mcgrof@kernel.org [1] https://lkml.kernel.org/r/20170519033554.18592-1-mcgrof@kernel.org [2] https://lkml.kernel.org/r/CA+55aFyhxcvD+q7tp+-yrSFDKfR0mOHgyEAe=f_94aKLsOu0Og@mail.gmail.com [3] https://lkml.kernel.org/r/1495234558.7848.122.camel@linux.intel.com [4] https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git/log/?h=20170525-kmod-throttle
Luis
Luis R. Rodriguez (5): module: use list_for_each_entry_rcu() on find_module_all() kmod: reduce atomic operations on kmod_concurrent kmod: add test driver to stress test the module loader kmod: add helpers for getting kmod limit kmod: throttle kmod thread limit
Documentation/sysctl/kernel.txt | 20 + include/linux/kmod.h | 7 + init/main.c | 1 + kernel/kmod.c | 92 ++- kernel/module.c | 2 +- kernel/sysctl.c | 7 + lib/Kconfig.debug | 25 + lib/Makefile | 1 + lib/test_kmod.c | 1246 +++++++++++++++++++++++++++++++++ tools/testing/selftests/kmod/Makefile | 11 + tools/testing/selftests/kmod/config | 7 + tools/testing/selftests/kmod/kmod.sh | 615 ++++++++++++++++ 12 files changed, 2004 insertions(+), 30 deletions(-) create mode 100644 lib/test_kmod.c create mode 100644 tools/testing/selftests/kmod/Makefile create mode 100644 tools/testing/selftests/kmod/config create mode 100755 tools/testing/selftests/kmod/kmod.sh
-- 2.11.0
| |