Messages in this thread | | | Date | Mon, 15 Jun 2015 23:46:47 -0700 | From | Alexei Starovoitov <> | Subject | Re: call_rcu from trace_preempt |
| |
On 6/15/15 11:34 PM, Daniel Wagner wrote: > On 06/16/2015 08:25 AM, Alexei Starovoitov wrote: >> On 6/15/15 11:06 PM, Daniel Wagner wrote: >>>> with the above 'fix' the trace.patch is now passing. >>> It still crashes for me with the original test program >>> >>> [ 145.908013] [<ffffffff810d1da1>] ? __rcu_reclaim+0x101/0x3d0 >>> [ 145.908013] [<ffffffff810d1ca0>] ? rcu_barrier_func+0x250/0x250 >>> [ 145.908013] [<ffffffff810abc03>] ? >>> trace_hardirqs_on_caller+0xf3/0x240 >>> [ 145.908013] [<ffffffff810d9afa>] rcu_do_batch+0x2ea/0x6b0 >> >> yes. full bpf test still crashes. >> That's why I said trace.patch is passing ;) >> There is something else in there. One 'fix' at a time. > > Ah, sorry, I read it is working now :) Anyway, I'll keep looking > as well. > > Yesterday I wrote a small torture program for the map > implementation. Just to rule out memory corruption there. > Are you interested in it? If yes I could clean it a bit.
of course! We already have samples/bpf/test_maps.c that stresses map access from user space and lib/test_bpf.c that stress JIT and interpreter from the kernel. Looking at your test, I think it doesn't buy as much doing it from the kernel? If so, I think would be great to add it to test_maps.c
Will read it more carefully tomorrow.
| |