diff options
author | Paul Wise <pabs3@bonedaddy.net> | 2019-08-07 09:45:25 +0800 |
---|---|---|
committer | Michael Kerrisk <mtk.manpages@gmail.com> | 2019-09-13 14:58:55 +0200 |
commit | a33adb814a1f22ce6ad9be5271d0a31aa6808a4e (patch) | |
tree | e76be9606f66c736a9168afb69c8f5ae203233f5 /man5 | |
parent | 986d5d00481d4e2618c41f22f3f6f087b5fa0540 (diff) | |
download | man-pages-a33adb814a1f22ce6ad9be5271d0a31aa6808a4e.tar.gz |
core.5: Explain the new situation with argument splitting
Things changed in Linux v5.3-rc3 commit 315c69261dd3 from
splitting after template expansion to splitting beforehand.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Diffstat (limited to 'man5')
-rw-r--r-- | man5/core.5 | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/man5/core.5 b/man5/core.5 index d3efca3f86..ddc0352b8b 100644 --- a/man5/core.5 +++ b/man5/core.5 @@ -267,6 +267,20 @@ file. If the first character of this file is a pipe symbol (\fB|\fP), then the remainder of the line is interpreted as the command-line for a user-space program (or script) that is to be executed. +.PP +.\" 315c69261dd3fa12dbc830d4fa00d1fad98d3b03 +Since kernel 5.3.0, the pipe template is split on spaces into an +argument list before the template parameters are expanded. +In earlier kernels the template parameters are expanded first and +the resulting string is split on spaces into an argument list. +This means that in earlier kernels executable names added by the +%e and %E template parameters could get split into multiple arguments. +So the core dump handler needs to put the executable names as the last +argument and ensure it joins all parts of the executable name using spaces. +Executable names with multiple spaces in them are not correctly represented +in earlier kernels so the core dump handler needs to use mechanisms to find +the executable name. +.PP Instead of being written to a disk file, the core dump is given as standard input to the program. Note the following points: |