Allow userspace to discover what coredump modes are supported. Signed-off-by: Christian Brauner <brauner@xxxxxxxxxx> --- fs/coredump.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/fs/coredump.c b/fs/coredump.c index 9a6cba233db9..1c7428c23878 100644 --- a/fs/coredump.c +++ b/fs/coredump.c @@ -1217,6 +1217,13 @@ static int proc_dostring_coredump(const struct ctl_table *table, int write, static const unsigned int core_file_note_size_min = CORE_FILE_NOTE_SIZE_DEFAULT; static const unsigned int core_file_note_size_max = CORE_FILE_NOTE_SIZE_MAX; +static char core_modes[] = { +#ifdef CONFIG_UNIX + "file\npipe\nunix" +#else + "file\npipe" +#endif +}; static const struct ctl_table coredump_sysctls[] = { { @@ -1260,6 +1267,13 @@ static const struct ctl_table coredump_sysctls[] = { .extra1 = SYSCTL_ZERO, .extra2 = SYSCTL_ONE, }, + { + .procname = "core_modes", + .data = core_modes, + .maxlen = sizeof(core_modes) - 1, + .mode = 0444, + .proc_handler = proc_dostring, + }, }; static int __init init_fs_coredump_sysctls(void) -- 2.47.2