18c2ecf20Sopenharmony_ci{ 28c2ecf20Sopenharmony_ci "d_path accept", 38c2ecf20Sopenharmony_ci .insns = { 48c2ecf20Sopenharmony_ci BPF_LDX_MEM(BPF_W, BPF_REG_1, BPF_REG_1, 0), 58c2ecf20Sopenharmony_ci BPF_MOV64_REG(BPF_REG_2, BPF_REG_10), 68c2ecf20Sopenharmony_ci BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -8), 78c2ecf20Sopenharmony_ci BPF_MOV64_IMM(BPF_REG_6, 0), 88c2ecf20Sopenharmony_ci BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_6, 0), 98c2ecf20Sopenharmony_ci BPF_LD_IMM64(BPF_REG_3, 8), 108c2ecf20Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_d_path), 118c2ecf20Sopenharmony_ci BPF_MOV64_IMM(BPF_REG_0, 0), 128c2ecf20Sopenharmony_ci BPF_EXIT_INSN(), 138c2ecf20Sopenharmony_ci }, 148c2ecf20Sopenharmony_ci .result = ACCEPT, 158c2ecf20Sopenharmony_ci .prog_type = BPF_PROG_TYPE_TRACING, 168c2ecf20Sopenharmony_ci .expected_attach_type = BPF_TRACE_FENTRY, 178c2ecf20Sopenharmony_ci .kfunc = "dentry_open", 188c2ecf20Sopenharmony_ci}, 198c2ecf20Sopenharmony_ci{ 208c2ecf20Sopenharmony_ci "d_path reject", 218c2ecf20Sopenharmony_ci .insns = { 228c2ecf20Sopenharmony_ci BPF_LDX_MEM(BPF_W, BPF_REG_1, BPF_REG_1, 0), 238c2ecf20Sopenharmony_ci BPF_MOV64_REG(BPF_REG_2, BPF_REG_10), 248c2ecf20Sopenharmony_ci BPF_ALU64_IMM(BPF_ADD, BPF_REG_2, -8), 258c2ecf20Sopenharmony_ci BPF_MOV64_IMM(BPF_REG_6, 0), 268c2ecf20Sopenharmony_ci BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_6, 0), 278c2ecf20Sopenharmony_ci BPF_LD_IMM64(BPF_REG_3, 8), 288c2ecf20Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_d_path), 298c2ecf20Sopenharmony_ci BPF_MOV64_IMM(BPF_REG_0, 0), 308c2ecf20Sopenharmony_ci BPF_EXIT_INSN(), 318c2ecf20Sopenharmony_ci }, 328c2ecf20Sopenharmony_ci .errstr = "helper call is not allowed in probe", 338c2ecf20Sopenharmony_ci .result = REJECT, 348c2ecf20Sopenharmony_ci .prog_type = BPF_PROG_TYPE_TRACING, 358c2ecf20Sopenharmony_ci .expected_attach_type = BPF_TRACE_FENTRY, 368c2ecf20Sopenharmony_ci .kfunc = "d_path", 378c2ecf20Sopenharmony_ci}, 38