cpupower: monitor: Exit with error status if execvp() fail

In the case that we give a invalid command to idle_monitor for
monitoring, the execvp() will fail and thus go to the next line.
As a result, we'll see two differnt monitoring output. For
example, running `cpupower monitor -i 5 invalidcmd` which `invalidcmd`
is not executable.

Link: https://lore.kernel.org/r/20250220163846.2765-1-s921975628@gmail.com
Signed-off-by: Yiwei Lin <s921975628@gmail.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
This commit is contained in:
Yiwei Lin 2025-02-21 00:38:46 +08:00 committed by Shuah Khan
parent 208baa3ec9
commit 80d3175a7e

View File

@ -6,6 +6,7 @@
*/
#include <errno.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
@ -294,7 +295,10 @@ int fork_it(char **argv)
if (!child_pid) {
/* child */
execvp(argv[0], argv);
if (execvp(argv[0], argv) == -1) {
printf("Invalid monitor command %s\n", argv[0]);
exit(errno);
}
} else {
/* parent */
if (child_pid == -1) {