Re: [PATCH net 1/3] bpf: fix incorrect pruning decision when alignment must be tracked

2017-05-24 Thread Daniel Borkmann
On 05/24/2017 10:07 PM, David Miller wrote: From: Daniel Borkmann Date: Tue, 23 May 2017 18:30:41 +0200 + if (!env->strict_alignment && old->off <= cur->off && You can't just test env->strict_alignment by itself, that's just an override and doesn't determine the actual "strict" value w

Re: [PATCH net 1/3] bpf: fix incorrect pruning decision when alignment must be tracked

2017-05-24 Thread David Miller
From: Daniel Borkmann Date: Tue, 23 May 2017 18:30:41 +0200 > + if (!env->strict_alignment && old->off <= cur->off && You can't just test env->strict_alignment by itself, that's just an override and doesn't determine the actual "strict" value we use which is a combination of env->strict_alig

[PATCH net 1/3] bpf: fix incorrect pruning decision when alignment must be tracked

2017-05-23 Thread Daniel Borkmann
Currently, when we enforce alignment tracking on direct packet access, the verifier lets the following program pass despite doing a packet write with unaligned access: 0: (61) r2 = *(u32 *)(r1 +76) 1: (61) r3 = *(u32 *)(r1 +80) 2: (61) r7 = *(u32 *)(r1 +8) 3: (bf) r0 = r2 4: (07) r0 += 1