mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-26 11:52:34 -04:00
ktest: Run commands through list-form shell open
run_command() currently uses string-form open(): open(CMD, "$command 2>&1 |") That delegates parsing to the shell but also mixes the stderr redirection into the command string. Switch to list-form open() with an explicit sh -c wrapper so shell syntax errors are captured in the same output stream as command output. Otherwise, important errors can not be retrieved from the ktest LOG_FILE. Cc: John Hawley <warthog9@eaglescrag.net> Cc: Andrea Righi <arighi@nvidia.com> Cc: Marcos Paulo de Souza <mpdesouza@suse.com> Cc: Matthieu Baerts <matttbe@kernel.org> Cc: Fernando Fernandez Mancera <fmancera@suse.de> Cc: Pedro Falcato <pfalcato@suse.de> Link: https://patch.msgid.link/20260307-ktest-fixes-v1-5-565d412f4925@suse.com Signed-off-by: Ricardo B. Marlière <rbm@suse.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
committed by
Steven Rostedt
parent
a2de57a3c8
commit
fcfc25725a
@@ -1921,7 +1921,10 @@ sub run_command {
|
||||
doprint("$command ... ");
|
||||
$start_time = time;
|
||||
|
||||
$pid = open(CMD, "$command 2>&1 |") or
|
||||
$pid = open(CMD, "-|",
|
||||
"sh", "-c",
|
||||
'command=$1; shift; exec 2>&1; eval "$command"',
|
||||
"sh", $command) or
|
||||
(fail "unable to exec $command" and return 0);
|
||||
|
||||
if (defined($opt{"LOG_FILE"})) {
|
||||
|
||||
Reference in New Issue
Block a user