[iovisor-dev] reminder: IO Visor TSC/Dev Meeting

2017-08-22 Thread Brenden Blanco via iovisor-dev
Please join us tomorrow for our bi-weekly call. As usual, this meeting is open to everybody and completely optional. You might be interested to join if: You want to know what is going on in BPF land You are doing something interesting yourself with BPF and would like to share You want to know what

Re: [iovisor-dev] [PATCH net-next 3/4] bpf/verifier: when pruning a branch, ignore its write marks

2017-08-22 Thread Edward Cree via iovisor-dev
On 22/08/17 16:50, Edward Cree wrote: > On 22/08/17 16:24, Alexei Starovoitov wrote: >> Do you have a test case for this by any chance? > I think something like > if (cond) > r0=0; > if (cond) > r0=0; > return r0; > might tickle the bug, but I'm not sure. It turns out

Re: [iovisor-dev] [PATCH net-next 4/4] bpf/verifier: document liveness analysis

2017-08-22 Thread Alexei Starovoitov via iovisor-dev
On 8/22/17 8:55 AM, Edward Cree wrote: On 22/08/17 16:42, Alexei Starovoitov wrote: On 8/22/17 6:27 AM, Edward Cree wrote: static bool do_propagate_liveness(const struct bpf_verifier_state *state, struct bpf_verifier_state *parent) { @@ -3457,6 +3463,15 @@ static bool

Re: [iovisor-dev] [PATCH net-next 4/4] bpf/verifier: document liveness analysis

2017-08-22 Thread Edward Cree via iovisor-dev
On 22/08/17 16:42, Alexei Starovoitov wrote: > On 8/22/17 6:27 AM, Edward Cree wrote: >> static bool do_propagate_liveness(const struct bpf_verifier_state *state, >>struct bpf_verifier_state *parent) >> { >> @@ -3457,6 +3463,15 @@ static bool do_propagate_liveness(const

Re: [iovisor-dev] [PATCH net-next 4/4] bpf/verifier: document liveness analysis

2017-08-22 Thread Alexei Starovoitov via iovisor-dev
On 8/22/17 6:27 AM, Edward Cree wrote: The liveness tracking algorithm is quite subtle; add comments to explain it. Signed-off-by: Edward Cree --- include/linux/bpf_verifier.h | 13 + kernel/bpf/verifier.c| 28 +++- 2 files

Re: [iovisor-dev] [PATCH net-next 2/4] bpf/verifier: remove varlen_map_value_access flag

2017-08-22 Thread Alexei Starovoitov via iovisor-dev
On 8/22/17 6:26 AM, Edward Cree wrote: The optimisation it does is broken when the 'new' register value has a variable offset and the 'old' was constant. I broke it with my pointer types unification (see Fixes tag below), before which the 'new' value would have type PTR_TO_MAP_VALUE_ADJ and

[iovisor-dev] [PATCH net-next 1/4] selftests/bpf: add a test for a pruning bug in the verifier

2017-08-22 Thread Edward Cree via iovisor-dev
From: Alexei Starovoitov The test makes a read through a map value pointer, then considers pruning a branch where the register holds an adjusted map value pointer. It should not prune, but currently it does. Signed-off-by: Alexei Starovoitov [ec...@solarflare.com: