When NULL pointer accidentally passed to write_kprobe_events, due to strlen(NULL), segmentation fault happens. Changed code returns -1 to deal with this situation.
Bug issued with Smatch, static analysis. Signed-off-by: Daniel T. Lee <danieltim...@gmail.com> --- samples/bpf/bpf_load.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/samples/bpf/bpf_load.c b/samples/bpf/bpf_load.c index 434ea34a5954..c670bd2200d2 100644 --- a/samples/bpf/bpf_load.c +++ b/samples/bpf/bpf_load.c @@ -58,7 +58,9 @@ static int write_kprobe_events(const char *val) { int fd, ret, flags; - if ((val != NULL) && (val[0] == '\0')) + if (val == NULL) + return -1; + else if ((val != NULL) && (val[0] == '\0')) flags = O_WRONLY | O_TRUNC; else flags = O_WRONLY | O_APPEND; -- 2.17.1