From: Hithashri Bojanala <bojanalahithashri@gmail.com>
fix https://syzkaller.appspot.com/bug?extid=d4264133b3e51212ea30
vmalloc doesnt support __GFP_ACCOUNT
---
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 d595fe512498..ffe2658ce165 100644
--- a/kernel/bpf/core.c
+++ b/kernel/bpf/core.c
@@ -263,7 +263,8 @@ struct bpf_prog *bpf_prog_realloc(struct bpf_prog *fp_old, unsigned int size,
if (pages <= fp_old->pages)
return fp_old;
- fp = __vmalloc(size, gfp_flags);
+ /*vmalloc doesn't support __GFP_ACCOUNT, so strip it for the vmalloc call */
+ fp = __vmalloc(size, gfp_flags & ~__GFP_ACCOUNT);
if (fp) {
memcpy(fp, fp_old, fp_old->pages * PAGE_SIZE);
fp->pages = pages;
--
2.47.0