On Tue, 2013-04-30 at 19:47 +0200, Zbigniew Jędrzejewski-Szmek wrote: > On Tue, Apr 30, 2013 at 01:12:19PM -0400, Colin Walters wrote: > > This patch makes systemd-coredump handle processes that have > > whitespace in their COMM fields. > > > > fs/coredump.c when given %e (as systemd-coredump uses), will end up > > joining the process arguments into a string (along with the other > > fields), then will split the entire thing up on whitespace, and use > > it as the arguments to the coredump pipe handler. > > > > Previously, systemd-coredump would then reject them as having too many > > arguments. > > --- > That's a workaround for a bug in the kernel. I think it makes sense, but > it'd be nice to fix the kernel too.
To do what though? Add a new coredump format specifier that gives you a string-escaped version as one argument? That'd probably make sense, but then we'd have to test the kernel version before installing a specifier. Oddly, abrt doesn't seem to have this problem, but I also don't see how the current code handles it. More oddly, its core pattern is: |/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e I don't understand how the lack of % for the 'e' works. Oh, wait it doesn't actually use that format code, it just parses /proc/pid/exe. That's kind of funny =) Although it does have some neat code to handle sparseness in cores and attempt page-aligned IO. Anyways, CC'd some of the people that appear in "git log fs/coredump.c" for comments on the semantics of %e and whitespace in kernel arguments. _______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
