On Wed, 2018-04-25 at 17:22 -0400, Mikulas Patocka wrote: > > On Wed, 25 Apr 2018, David Rientjes wrote: > > > On Wed, 25 Apr 2018, Mikulas Patocka wrote: > > > > > From: Mikulas Patocka <mpatocka@xxxxxxxxxx> > > > Subject: [PATCH] fault-injection: introduce kvmalloc fallback > > > options > > > > > > This patch introduces a fault-injection option > > > "kvmalloc_fallback". This option makes kvmalloc randomly fall > > > back to vmalloc. > > > > > > Unfortunately, some kernel code has bugs - it uses kvmalloc and > > > then uses DMA-API on the returned memory or frees it with kfree. > > > Such bugs were found in the virtio-net driver, dm-integrity or > > > RHEL7 powerpc-specific code. This options helps to test for these > > > bugs. > > > > > > The patch introduces a config option > > > FAIL_KVMALLOC_FALLBACK_PROBABILITY. > > > It can be enabled in distribution debug kernels, so that kvmalloc > > > abuse can be tested by the users. The default can be overridden > > > with "kvmalloc_fallback" parameter or in > > > /sys/kernel/debug/kvmalloc_fallback/. > > > > > > > Do we really need the new config option? This could just be > > manually tunable via fault injection IIUC. > > We do, because we want to enable it in RHEL and Fedora debugging > kernels, so that it will be tested by the users. > > The users won't use some extra magic kernel options or debugfs files. If it can be enabled via a tunable, then the distro can turn it on without the user having to do anything. If you want to present the user with a different boot option, you can (just have the tunable set on the command line), but being tunable driven means that you don't have to choose that option, you could automatically enable it under a range of circumstances. I think most sane distributions would want that flexibility. Kconfig proliferation, conversely, is a bit of a nightmare from both the user and the tester's point of view, so we're trying to avoid it unless absolutely necessary. James