Skip to content

kmod: help make deterministic

Luis R. Rodriguez lkml 3 versions – New

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v4 Latest3 patches 0 repliesNew
  2. v34 patches 16 repliesSuperseded
  3. v25 patches 4 repliesSuperseded

Patches in v4 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3MAINTAINERS: give kmod some maintainer loveMAINTAINERS+7 -00 replies
2/3kmod: add test driver to stress test the module loaderMAINTAINERS lib/Kconfig.debug lib/Makefile +4 more+1927 -00 replies
3/3kmod: throttle kmod thread limitkernel/kmod.c tools/testing/selftests/kmod/kmod.sh+9 -310 replies

Reviews trailers per patch

1 of 3 patches has a Reviewed-by or Acked-by.

PatchPetr Mladek
1/3
2/3
3/3R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v4 thread

Cover letter [PATCH v4 0/3] kmod: help make deterministic

Andrew,

I'm submitting the last few patches of my kmod series through your tree and as suggested by Jessica I am picking up maintenance on kmod. These last changes can either wait until the next release or can be merged now provided someone reviews the kmod test driver and the merge conflict is addressed with Jessica's tree with the kmod patch she picked up.

This v4 moves back again from swait to regular waitqueue as suggested generally by Linus as swait is very specialized [0], and it also drops two patches picked up by Jessica. Jessica picked the following two patches visible on linux-next tag next-20170628 as follows:

165d1cc0074b kmod: reduce atomic operations on kmod_concurrent and simplify 93437353daef module: use list_for_each_entry_rcu() on find_module_all()

FWIW, the swait --> wait change proved to just help speed up tests only marginally, even over a spread of tests these results were generally consistent. Figured some peformance folks might be interested in that tidbit, should they wish to go play.

With wait:

time ./kmod.sh -t 0008

real    0m16.366s
user    0m0.883s
sys     0m8.916s

time ./kmod.sh -t 0009

real    0m50.803s
user    0m0.791s
sys     0m9.852s

With swait:

time ./kmod.sh -t 0008

real    0m16.523s
user    0m0.879s
sys     0m8.977s

time ./kmod.sh -t 0009

real    0m51.258s
user    0m0.812s
sys     0m10.133s

If anyone wants these in a git tree you can check out the 20170628-kmod-only branch from my linux-next tree [1], based on next-20170628. If there are any questions or issues please let me know.

[0] https://marc.info/?l=linux-kernel&m=149851347228696&w=2
[1] https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git/log/?h=20170628-kmod-only

Luis R. Rodriguez (3):
MAINTAINERS: give kmod some maintainer love
kmod: add test driver to stress test the module loader
kmod: throttle kmod thread limit

 MAINTAINERS                           |    9 +
 kernel/kmod.c                         |   16 +-
 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 ++++++++++++++++
 8 files changed, 1921 insertions(+), 9 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
Signature · 1 line
2.11.0