On Fri, Dec 15, 2017 at 2:55 AM, Alexei Starovoitov [off-list ref] wrote:
quoted hunk ↗ jump to hunk
+ if (jit_data->ctx.offset) {
+ ctx = jit_data->ctx;
+ image_ptr = jit_data->image;
+ header = jit_data->header;
+ extra_pass = true;
+ goto skip_init_ctx;
+ }
memset(&ctx, 0, sizeof(ctx));
ctx.prog = prog;
The 'goto' jumps over the 'image_size' initialization
prog->bpf_func = (void *)ctx.image;
prog->jited = 1;
prog->jited_len = image_size;
so we now get a warning here, starting with linux-next-20171218:
arch/arm64/net/bpf_jit_comp.c: In function 'bpf_int_jit_compile':
arch/arm64/net/bpf_jit_comp.c:982:18: error: 'image_size' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
I could not figure out what the code should be doing instead, or if it is
indeed safe and the warning is a false-positive.
Arnd