Adds a proc file to control the maximum number of ktask threads in use
for any one job.  Its primary use is to aid in debugging.

Signed-off-by: Daniel Jordan <[email protected]>
Reviewed-by: Steve Sistare <[email protected]>
Cc: Aaron Lu <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: Mel Gorman <[email protected]>
Cc: Michal Hocko <[email protected]>
Cc: Mike Kravetz <[email protected]>
Cc: Pavel Tatashin <[email protected]>
Cc: Tim Chen <[email protected]>
---
 kernel/sysctl.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/kernel/sysctl.c b/kernel/sysctl.c
index 557d46728577..e296906e609e 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -67,6 +67,7 @@
 #include <linux/bpf.h>
 #include <linux/mount.h>
 #include <linux/pipe_fs_i.h>
+#include <linux/ktask_internal.h>
 
 #include <linux/uaccess.h>
 #include <asm/processor.h>
@@ -1867,6 +1868,15 @@ static struct ctl_table debug_table[] = {
                .extra1         = &zero,
                .extra2         = &one,
        },
+#endif
+#if defined(CONFIG_KTASK)
+       {
+               .procname       = "ktask_max_threads",
+               .data           = &ktask_max_threads,
+               .maxlen         = sizeof(ktask_max_threads),
+               .mode           = 0644,
+               .proc_handler   = proc_dointvec,
+       },
 #endif
        { }
 };
-- 
2.15.0

Reply via email to