> On Sep 29, 2020, at 11:24 AM, Alexei Starovoitov
> <[email protected]> wrote:
>
> On Fri, Sep 25, 2020 at 1:55 PM Song Liu <[email protected]> wrote:
>> +
>> + if ((kattr->test.flags & BPF_F_TEST_RUN_ON_CPU) == 0 ||
>> + cpu == smp_processor_id()) {
>> + __bpf_prog_test_run_raw_tp(&info);
>
> That's broken:
> [ 35.874974] BUG: using smp_processor_id() in preemptible [00000000]
> code: new_name/87
> [ 35.893983] caller is bpf_prog_test_run_raw_tp+0xd4/0x1b0
> [ 35.900124] CPU: 1 PID: 87 Comm: new_name Not tainted 5.9.0-rc6-g615bd02bf
> #1
> [ 35.907358] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996),
> BIOS 1.10.2-1ubuntu1 04/01/2014
> [ 35.916941] Call Trace:
> [ 35.919660] dump_stack+0x77/0x9b
> [ 35.923273] check_preemption_disabled+0xb4/0xc0
> [ 35.928376] bpf_prog_test_run_raw_tp+0xd4/0x1b0
> [ 35.933872] ? selinux_bpf+0xd/0x70
> [ 35.937532] __do_sys_bpf+0x6bb/0x21e0
> [ 35.941570] ? find_held_lock+0x2d/0x90
> [ 35.945687] ? vfs_write+0x150/0x220
> [ 35.949586] do_syscall_64+0x2d/0x40
> [ 35.953443] entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
> Please fix and add debug flags to your .config.
Hmm... I do have most debug flags enabled. But I didn't have CONFIG_PREEMPT.
I will keep that on..
Thanks,
Song