From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roman Gushchin Subject: [PATCH bpf] bpf: don't accept cgroup local storage with zero value size Date: Tue, 2 Oct 2018 02:41:53 +0000 Message-ID: <20181002024003.25635-1-guro@fb.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Cc: "linux-kernel@vger.kernel.org" , Kernel Team , Roman Gushchin , Alexei Starovoitov , Daniel Borkmann To: "netdev@vger.kernel.org" Return-path: Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org Explicitly forbid creating cgroup local storage maps with zero value size, as it makes no sense and might even cause a panic. Reported-by: syzbot+18628320d3b14a5c459c@syzkaller.appspotmail.com Signed-off-by: Roman Gushchin Cc: Alexei Starovoitov Cc: Daniel Borkmann --- kernel/bpf/local_storage.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/bpf/local_storage.c b/kernel/bpf/local_storage.c index 944eb297465f..9f79956bff7d 100644 --- a/kernel/bpf/local_storage.c +++ b/kernel/bpf/local_storage.c @@ -261,6 +261,9 @@ static struct bpf_map *cgroup_storage_map_alloc(union b= pf_attr *attr) if (attr->key_size !=3D sizeof(struct bpf_cgroup_storage_key)) return ERR_PTR(-EINVAL); =20 + if (attr->value_size =3D=3D 0) + return ERR_PTR(-EINVAL); + if (attr->value_size > PAGE_SIZE) return ERR_PTR(-E2BIG); =20 --=20 2.17.1