diff options
author | Colin Ian King <colin.i.king@gmail.com> | 2022-04-26 13:25:31 +0100 |
---|---|---|
committer | Shuah Khan <skhan@linuxfoundation.org> | 2022-04-26 09:20:00 -0600 |
commit | c7b607fa9325ccc94982774c505176677117689c (patch) | |
tree | 33b334994df733d8f2a6f69acdca66d1312c0072 /tools/testing/selftests/resctrl/fill_buf.c | |
parent | 68c4844985d1f8c1b1a71dfcdbfacb5a30babc95 (diff) |
selftests/resctrl: Fix null pointer dereference on open failed
Currently if opening /dev/null fails to open then file pointer fp
is null and further access to fp via fprintf will cause a null
pointer dereference. Fix this by returning a negative error value
when a null fp is detected.
Detected using cppcheck static analysis:
tools/testing/selftests/resctrl/fill_buf.c:124:6: note: Assuming
that condition '!fp' is not redundant
if (!fp)
^
tools/testing/selftests/resctrl/fill_buf.c:126:10: note: Null
pointer dereference
fprintf(fp, "Sum: %d ", ret);
Fixes: a2561b12fe39 ("selftests/resctrl: Add built in benchmark")
Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Diffstat (limited to 'tools/testing/selftests/resctrl/fill_buf.c')
-rw-r--r-- | tools/testing/selftests/resctrl/fill_buf.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/testing/selftests/resctrl/fill_buf.c b/tools/testing/selftests/resctrl/fill_buf.c index 51e5cf22632f..56ccbeae0638 100644 --- a/tools/testing/selftests/resctrl/fill_buf.c +++ b/tools/testing/selftests/resctrl/fill_buf.c @@ -121,8 +121,10 @@ static int fill_cache_read(unsigned char *start_ptr, unsigned char *end_ptr, /* Consume read result so that reading memory is not optimized out. */ fp = fopen("/dev/null", "w"); - if (!fp) + if (!fp) { perror("Unable to write to /dev/null"); + return -1; + } fprintf(fp, "Sum: %d ", ret); fclose(fp); |