On Wed, Feb 14, 2018 at 03:31:00PM +0100, Daniel Borkmann wrote:
> syzkaller tried to perform a prog query in perf_event_query_prog_array()
> where struct perf_event_query_bpf had an ids_len of 1,073,741,353 and
> thus causing a warning due to failed kcalloc() allocation out of the
> bpf_prog_array_copy_to_user() helper. Given we cannot attach more than
> 64 programs to a perf event, there's no point in allowing huge ids_len.
> Therefore, allow a buffer that would fix the maximum number of ids and
> also add a __GFP_NOWARN to the temporary ids buffer.
> Fixes: f371b304f12e ("bpf/tracing: allow user space to query prog array on
> the same tp")
> Fixes: 0911287ce32b ("bpf: fix bpf_prog_array_copy_to_user() issues")
> Reported-by: syzbot+cab5816b0edbabf59...@syzkaller.appspotmail.com
> Signed-off-by: Daniel Borkmann <dan...@iogearbox.net>
Applied to bpf tree, Thanks for the quick fix Daniel.