[PATCH 1/1] fs/proc/task_mmu.c: Include backslash when escaping file names
From: Nominal Animal
Date: Mon May 30 2016 - 15:50:38 EST
Files named "foo\nbar" and "foo\\012bar" are
both shown as "foo\\012bar" in /proc/PID files,
because show_map_vma() and show_numa_map() in fs/proc/task_mmu.c
do not include backslash in the escaped set when calling seq_file_path().
Fix this by including backslash in the escaped set.
diff -Nabpur linux-4.6/fs/proc/task_mmu.c linux-new/fs/proc/task_mmu.c
--- linux-4.6/fs/proc/task_mmu.c 2016-05-16 01:43:13.000000000 +0300
+++ linux-new/fs/proc/task_mmu.c 2016-05-30 19:55:42.247297498 +0300
@@ -329,7 +329,7 @@ show_map_vma(struct seq_file *m, struct
*/
if (file) {
seq_pad(m, ' ');
- seq_file_path(m, file, "\n");
+ seq_file_path(m, file, "\n\\");
goto done;
}
@@ -1647,7 +1647,7 @@ static int show_numa_map(struct seq_file
if (file) {
seq_puts(m, " file=");
- seq_file_path(m, file, "\n\t= ");
+ seq_file_path(m, file, "\n\t= \\");
} else if (vma->vm_start <= mm->brk && vma->vm_end >= mm->start_brk) {
seq_puts(m, " heap");
} else if (is_stack(proc_priv, vma, is_pid)) {
Regards,
Nominal Animal