{ "sleepable fentry accept", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_TRACING, .expected_attach_type = BPF_TRACE_FENTRY, .kfunc = "bpf_fentry_test1", .result = ACCEPT, .flags = BPF_F_SLEEPABLE, .runs = -1, }, { "sleepable fexit accept", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_TRACING, .expected_attach_type = BPF_TRACE_FENTRY, .kfunc = "bpf_fentry_test1", .result = ACCEPT, .flags = BPF_F_SLEEPABLE, .runs = -1, }, { "sleepable fmod_ret accept", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_TRACING, .expected_attach_type = BPF_MODIFY_RETURN, .kfunc = "bpf_fentry_test1", .result = ACCEPT, .flags = BPF_F_SLEEPABLE, .runs = -1, }, { "sleepable iter accept", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_TRACING, .expected_attach_type = BPF_TRACE_ITER, .kfunc = "task", .result = ACCEPT, .flags = BPF_F_SLEEPABLE, .runs = -1, }, { "sleepable lsm accept", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_LSM, .kfunc = "bpf", .expected_attach_type = BPF_LSM_MAC, .result = ACCEPT, .flags = BPF_F_SLEEPABLE, .runs = -1, }, { "sleepable uprobe accept", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_KPROBE, .kfunc = "bpf_fentry_test1", .result = ACCEPT, .flags = BPF_F_SLEEPABLE, .runs = -1, }, { "sleepable raw tracepoint accept", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_TRACING, .expected_attach_type = BPF_TRACE_RAW_TP, .kfunc = "sys_enter", .result = ACCEPT, .flags = BPF_F_SLEEPABLE, .runs = -1, }, { "sleepable raw tracepoint reject non-faultable", .insns = { BPF_MOV64_IMM(BPF_REG_0, 0), BPF_EXIT_INSN(), }, .prog_type = BPF_PROG_TYPE_TRACING, .expected_attach_type = BPF_TRACE_RAW_TP, .kfunc = "sched_switch", .result = REJECT, .errstr = "Sleepable program cannot attach to non-faultable tracepoint", .flags = BPF_F_SLEEPABLE, .runs = -1, },