Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-19 Thread Qian Cai
> On May 19, 2020, at 7:23 PM, Andrii Nakryiko > wrote: > > I agree, it's bad to have this noise. But again, there is nothing > wrong with the way it's used in BPF code base. We'd gladly use > flexible array, if we could. But given we can't, I'd say the proper > solution (in order of my prefe

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-19 Thread Andrii Nakryiko
On Tue, May 19, 2020 at 1:18 PM Qian Cai wrote: > > On Tue, May 19, 2020 at 3:30 PM Andrii Nakryiko > wrote: > > > > On Tue, May 19, 2020 at 8:00 AM Qian Cai wrote: > > > > > > On Mon, May 18, 2020 at 8:25 PM Andrii Nakryiko > > > wrote: > > > > > > > > On Mon, May 18, 2020 at 5:09 PM Qian Cai

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-19 Thread Qian Cai
On Tue, May 19, 2020 at 3:30 PM Andrii Nakryiko wrote: > > On Tue, May 19, 2020 at 8:00 AM Qian Cai wrote: > > > > On Mon, May 18, 2020 at 8:25 PM Andrii Nakryiko > > wrote: > > > > > > On Mon, May 18, 2020 at 5:09 PM Qian Cai wrote: > > > > > > > > On Mon, May 18, 2020 at 7:55 PM Andrii Nakryi

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-19 Thread Andrii Nakryiko
On Tue, May 19, 2020 at 8:00 AM Qian Cai wrote: > > On Mon, May 18, 2020 at 8:25 PM Andrii Nakryiko > wrote: > > > > On Mon, May 18, 2020 at 5:09 PM Qian Cai wrote: > > > > > > On Mon, May 18, 2020 at 7:55 PM Andrii Nakryiko > > > wrote: > > > > > > > > On Sun, May 17, 2020 at 7:45 PM Qian Cai

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-19 Thread Qian Cai
On Mon, May 18, 2020 at 8:25 PM Andrii Nakryiko wrote: > > On Mon, May 18, 2020 at 5:09 PM Qian Cai wrote: > > > > On Mon, May 18, 2020 at 7:55 PM Andrii Nakryiko > > wrote: > > > > > > On Sun, May 17, 2020 at 7:45 PM Qian Cai wrote: > > > > > > > > With Clang 9.0.1, > > > > > > > > return arra

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-18 Thread Yonghong Song
On 5/18/20 6:30 PM, Andrii Nakryiko wrote: On Mon, May 18, 2020 at 6:00 PM Yonghong Song wrote: On 5/18/20 5:25 PM, Andrii Nakryiko wrote: On Mon, May 18, 2020 at 5:09 PM Qian Cai wrote: On Mon, May 18, 2020 at 7:55 PM Andrii Nakryiko wrote: On Sun, May 17, 2020 at 7:45 PM Qian Cai

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-18 Thread Andrii Nakryiko
On Mon, May 18, 2020 at 6:00 PM Yonghong Song wrote: > > > > On 5/18/20 5:25 PM, Andrii Nakryiko wrote: > > On Mon, May 18, 2020 at 5:09 PM Qian Cai wrote: > >> > >> On Mon, May 18, 2020 at 7:55 PM Andrii Nakryiko > >> wrote: > >>> > >>> On Sun, May 17, 2020 at 7:45 PM Qian Cai wrote: > >

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-18 Thread Yonghong Song
On 5/18/20 5:25 PM, Andrii Nakryiko wrote: On Mon, May 18, 2020 at 5:09 PM Qian Cai wrote: On Mon, May 18, 2020 at 7:55 PM Andrii Nakryiko wrote: On Sun, May 17, 2020 at 7:45 PM Qian Cai wrote: With Clang 9.0.1, return array->value + array->elem_size * (index & array->index_mask); b

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-18 Thread Andrii Nakryiko
On Mon, May 18, 2020 at 5:09 PM Qian Cai wrote: > > On Mon, May 18, 2020 at 7:55 PM Andrii Nakryiko > wrote: > > > > On Sun, May 17, 2020 at 7:45 PM Qian Cai wrote: > > > > > > With Clang 9.0.1, > > > > > > return array->value + array->elem_size * (index & array->index_mask); > > > > > > but arr

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-18 Thread Qian Cai
On Mon, May 18, 2020 at 7:55 PM Andrii Nakryiko wrote: > > On Sun, May 17, 2020 at 7:45 PM Qian Cai wrote: > > > > With Clang 9.0.1, > > > > return array->value + array->elem_size * (index & array->index_mask); > > > > but array->value is, > > > > char value[0] __aligned(8); > > This, and ptrs an

Re: UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-18 Thread Andrii Nakryiko
On Sun, May 17, 2020 at 7:45 PM Qian Cai wrote: > > With Clang 9.0.1, > > return array->value + array->elem_size * (index & array->index_mask); > > but array->value is, > > char value[0] __aligned(8); This, and ptrs and pptrs, should be flexible arrays. But they are in a union, and unions don't s

UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177

2020-05-17 Thread Qian Cai
6.125326][ T4352] [ 506.134603][ T4352] UBSAN: array-index-out-of-bounds in kernel/bpf/arraymap.c:177:22 [ 506.142521][ T4352] index 8 is out of range for type 'char [0]' [ 506.148613][ T4352] CPU: 222 PID: 4352 Comm: bpf_prog02 Tainted: G L5.7.0-rc5-next-20200515 #2 [ 506.158