Re: [PATCH v2 1/2] coredump: use task comm instead of (unknown)

From: Oleg Nesterov
Date: Tue Jun 07 2011 - 14:18:09 EST


On 06/07, Jiri Slaby wrote:
>
> @@ -1631,7 +1631,7 @@ static int cn_print_exe_file(struct core_name *cn)
>
> exe_file = get_mm_exe_file(current->mm);
> if (!exe_file)
> - return cn_printf(cn, "(unknown)");
> + return cn_printf(cn, "%s (path unknown)", current->comm);

Hmm. The patch itself looks fine to me.

Acked-by: Oleg Nesterov <oleg@xxxxxxxxxx>



But the code looks wrong.

What if d_path() fails with, say, ENAMETOOLONG? do_coredump() doesn't
expect an error code != ENOMEM. This is just ugly, I'll send the simple
fix. Anyway, if we are changing cn_print_exe_file(), perhaps it makes
sense to fallback if d_path fails too?

And, I am just noticed...

for (p = path; *p; p++)
if (*p == '/')
*p = '!';

Why??? I am not arguing, just curious.

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/