[PATCH] bpf: Replace BUG_ON when fp_old is NULL

From: Aditya Pakki
Date: Sun Dec 15 2019 - 10:44:41 EST


If fp_old is NULL in bpf_prog_realloc, the program does an assertion
and crashes. However, we can continue execution by returning NULL to
the upper callers. The patch fixes this issue.

Signed-off-by: Aditya Pakki <pakki001@xxxxxxx>
---
kernel/bpf/core.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/kernel/bpf/core.c b/kernel/bpf/core.c
index 49e32acad7d8..4b46654fb26b 100644
--- a/kernel/bpf/core.c
+++ b/kernel/bpf/core.c
@@ -222,7 +222,8 @@ struct bpf_prog *bpf_prog_realloc(struct bpf_prog *fp_old, unsigned int size,
u32 pages, delta;
int ret;

- BUG_ON(fp_old == NULL);
+ if (!fp_old)
+ return NULL;

size = round_up(size, PAGE_SIZE);
pages = size / PAGE_SIZE;
--
2.20.1