int stack_size;                 /* number of states to be processed */
        bool strict_alignment;          /* perform strict pointer alignment checks */
        bool test_state_freq;           /* test verifier with different pruning frequency */
-       bool test_sanity_strict;        /* fail verification on sanity violations */
+       bool test_reg_invariants;       /* fail verification on register invariants violations */
        struct bpf_verifier_state *cur_state; /* current verifier state */
        struct bpf_verifier_state_list **explored_states; /* search pruning optimization */
        struct bpf_verifier_state_list *free_list;
 
 #define BPF_F_XDP_DEV_BOUND_ONLY       (1U << 6)
 
 /* The verifier internal test flag. Behavior is undefined */
-#define BPF_F_TEST_SANITY_STRICT       (1U << 7)
+#define BPF_F_TEST_REG_INVARIANTS      (1U << 7)
 
 /* link_create.kprobe_multi.flags used in LINK_CREATE command for
  * BPF_TRACE_KPROBE_MULTI attach type to create return probe.
 
                                 BPF_F_TEST_RND_HI32 |
                                 BPF_F_XDP_HAS_FRAGS |
                                 BPF_F_XDP_DEV_BOUND_ONLY |
-                                BPF_F_TEST_SANITY_STRICT))
+                                BPF_F_TEST_REG_INVARIANTS))
                return -EINVAL;
 
        if (!IS_ENABLED(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) &&
 
 
        return 0;
 out:
-       verbose(env, "REG SANITY VIOLATION (%s): %s u64=[%#llx, %#llx] "
+       verbose(env, "REG INVARIANTS VIOLATION (%s): %s u64=[%#llx, %#llx] "
                "s64=[%#llx, %#llx] u32=[%#x, %#x] s32=[%#x, %#x] var_off=(%#llx, %#llx)\n",
                ctx, msg, reg->umin_value, reg->umax_value,
                reg->smin_value, reg->smax_value,
                reg->u32_min_value, reg->u32_max_value,
                reg->s32_min_value, reg->s32_max_value,
                reg->var_off.value, reg->var_off.mask);
-       if (env->test_sanity_strict)
+       if (env->test_reg_invariants)
                return -EFAULT;
        __mark_reg_unbounded(reg);
        return 0;
 
        if (is_priv)
                env->test_state_freq = attr->prog_flags & BPF_F_TEST_STATE_FREQ;
-       env->test_sanity_strict = attr->prog_flags & BPF_F_TEST_SANITY_STRICT;
+       env->test_reg_invariants = attr->prog_flags & BPF_F_TEST_REG_INVARIANTS;
 
        env->explored_states = kvcalloc(state_htab_size(env),
                                       sizeof(struct bpf_verifier_state_list *),
 
 #define BPF_F_XDP_DEV_BOUND_ONLY       (1U << 6)
 
 /* The verifier internal test flag. Behavior is undefined */
-#define BPF_F_TEST_SANITY_STRICT       (1U << 7)
+#define BPF_F_TEST_REG_INVARIANTS      (1U << 7)
 
 /* link_create.kprobe_multi.flags used in LINK_CREATE command for
  * BPF_TRACE_KPROBE_MULTI attach type to create return probe.
 
        }
 
        bpf_program__set_type(prog, type);
-       bpf_program__set_flags(prog, BPF_F_TEST_RND_HI32 | BPF_F_TEST_SANITY_STRICT);
+       bpf_program__set_flags(prog, BPF_F_TEST_RND_HI32 | BPF_F_TEST_REG_INVARIANTS);
        bpf_program__set_log_level(prog, 4 | extra_prog_load_log_flags);
 
        err = bpf_object__load(obj);
 
                .log_level = 2,
                .log_buf = log_buf,
                .log_size = log_sz,
-               .prog_flags = BPF_F_TEST_SANITY_STRICT,
+               .prog_flags = BPF_F_TEST_REG_INVARIANTS,
        );
 
        /* ; skip exit block below
 
 SEC("xdp")
 __description("bound check with JMP_JSLT for crossing 64-bit signed boundary")
 __success __retval(0)
-__flag(!BPF_F_TEST_SANITY_STRICT) /* known sanity violation */
+__flag(!BPF_F_TEST_REG_INVARIANTS) /* known invariants violation */
 __naked void crossing_64_bit_signed_boundary_2(void)
 {
        asm volatile ("                                 \
 SEC("xdp")
 __description("bound check with JMP32_JSLT for crossing 32-bit signed boundary")
 __success __retval(0)
-__flag(!BPF_F_TEST_SANITY_STRICT) /* known sanity violation */
+__flag(!BPF_F_TEST_REG_INVARIANTS) /* known invariants violation */
 __naked void crossing_32_bit_signed_boundary_2(void)
 {
        asm volatile ("                                 \
 
        memset(spec, 0, sizeof(*spec));
 
        spec->prog_name = bpf_program__name(prog);
-       spec->prog_flags = BPF_F_TEST_SANITY_STRICT; /* by default be strict */
+       spec->prog_flags = BPF_F_TEST_REG_INVARIANTS; /* by default be strict */
 
        btf = bpf_object__btf(obj);
        if (!btf) {
                                update_flags(&spec->prog_flags, BPF_F_SLEEPABLE, clear);
                        } else if (strcmp(val, "BPF_F_XDP_HAS_FRAGS") == 0) {
                                update_flags(&spec->prog_flags, BPF_F_XDP_HAS_FRAGS, clear);
-                       } else if (strcmp(val, "BPF_F_TEST_SANITY_STRICT") == 0) {
-                               update_flags(&spec->prog_flags, BPF_F_TEST_SANITY_STRICT, clear);
+                       } else if (strcmp(val, "BPF_F_TEST_REG_INVARIANTS") == 0) {
+                               update_flags(&spec->prog_flags, BPF_F_TEST_REG_INVARIANTS, clear);
                        } else /* assume numeric value */ {
                                err = parse_int(val, &flags, "test prog flags");
                                if (err)
 
 
        bpf_program__set_type(prog, BPF_PROG_TYPE_CGROUP_SOCK_ADDR);
        bpf_program__set_expected_attach_type(prog, test->expected_attach_type);
-       bpf_program__set_flags(prog, BPF_F_TEST_RND_HI32);
-       bpf_program__set_flags(prog, BPF_F_TEST_SANITY_STRICT);
+       bpf_program__set_flags(prog, BPF_F_TEST_RND_HI32 | BPF_F_TEST_REG_INVARIANTS);
 
        err = bpf_object__load(obj);
        if (err) {
 
        if (fixup_skips != skips)
                return;
 
-       pflags = BPF_F_TEST_RND_HI32 | BPF_F_TEST_SANITY_STRICT;
+       pflags = BPF_F_TEST_RND_HI32 | BPF_F_TEST_REG_INVARIANTS;
        if (test->flags & F_LOAD_WITH_STRICT_ALIGNMENT)
                pflags |= BPF_F_STRICT_ALIGNMENT;
        if (test->flags & F_NEEDS_EFFICIENT_UNALIGNED_ACCESS)
 
        if (type != BPF_PROG_TYPE_UNSPEC && bpf_program__type(prog) != type)
                bpf_program__set_type(prog, type);
 
-       flags = bpf_program__flags(prog) | BPF_F_TEST_RND_HI32 | BPF_F_TEST_SANITY_STRICT;
+       flags = bpf_program__flags(prog) | BPF_F_TEST_RND_HI32 | BPF_F_TEST_REG_INVARIANTS;
        bpf_program__set_flags(prog, flags);
 
        err = bpf_object__load(obj);
 {
        LIBBPF_OPTS(bpf_prog_load_opts, opts,
                .kern_version = kern_version,
-               .prog_flags = BPF_F_TEST_RND_HI32 | BPF_F_TEST_SANITY_STRICT,
+               .prog_flags = BPF_F_TEST_RND_HI32 | BPF_F_TEST_REG_INVARIANTS,
                .log_level = extra_prog_load_log_flags,
                .log_buf = log_buf,
                .log_size = log_buf_sz,
 
        bool debug;
        bool quiet;
        bool force_checkpoints;
-       bool strict_range_sanity;
+       bool force_reg_invariants;
        enum resfmt out_fmt;
        bool show_version;
        bool comparison_mode;
        { "filter", 'f', "FILTER", 0, "Filter expressions (or @filename for file with expressions)." },
        { "test-states", 't', NULL, 0,
          "Force frequent BPF verifier state checkpointing (set BPF_F_TEST_STATE_FREQ program flag)" },
-       { "test-sanity", 'r', NULL, 0,
-         "Force strict BPF verifier register sanity behavior (BPF_F_TEST_SANITY_STRICT program flag)" },
+       { "test-reg-invariants", 'r', NULL, 0,
+         "Force BPF verifier failure on register invariant violation (BPF_F_TEST_REG_INVARIANTS program flag)" },
        {},
 };
 
                env.force_checkpoints = true;
                break;
        case 'r':
-               env.strict_range_sanity = true;
+               env.force_reg_invariants = true;
                break;
        case 'n':
                errno = 0;
 
        if (env.force_checkpoints)
                bpf_program__set_flags(prog, bpf_program__flags(prog) | BPF_F_TEST_STATE_FREQ);
-       if (env.strict_range_sanity)
-               bpf_program__set_flags(prog, bpf_program__flags(prog) | BPF_F_TEST_SANITY_STRICT);
+       if (env.force_reg_invariants)
+               bpf_program__set_flags(prog, bpf_program__flags(prog) | BPF_F_TEST_REG_INVARIANTS);
 
        err = bpf_object__load(obj);
        env.progs_processed++;