Lines Matching refs:test_var

259 static long test_var;  variable
274 static noinline void test_kernel_read(void) { sink_value(test_var); } in test_kernel_read()
278 test_var = READ_ONCE_NOCHECK(test_sink) + 1; in test_kernel_write()
281 static noinline void test_kernel_write_nochange(void) { test_var = 42; } in test_kernel_write_nochange()
284 static noinline void test_kernel_write_nochange_rcu(void) { test_var = 42; } in test_kernel_write_nochange_rcu()
288 sink_value(READ_ONCE(test_var)); in test_kernel_read_atomic()
293 WRITE_ONCE(test_var, READ_ONCE_NOCHECK(test_sink) + 1); in test_kernel_write_atomic()
299 __atomic_fetch_add(&test_var, 1, __ATOMIC_RELAXED); in test_kernel_atomic_rmw()
303 static noinline void test_kernel_write_uninstrumented(void) { test_var++; } in test_kernel_write_uninstrumented()
305 static noinline void test_kernel_data_race(void) { data_race(test_var++); } in test_kernel_data_race()
309 ASSERT_EXCLUSIVE_WRITER(test_var); in test_kernel_assert_writer()
314 ASSERT_EXCLUSIVE_ACCESS(test_var); in test_kernel_assert_access()
327 test_var ^= TEST_CHANGE_BITS; in test_kernel_change_bits()
330 WRITE_ONCE(test_var, READ_ONCE(test_var) ^ TEST_CHANGE_BITS); in test_kernel_change_bits()
335 ASSERT_EXCLUSIVE_BITS(test_var, TEST_CHANGE_BITS); in test_kernel_assert_bits_change()
340 ASSERT_EXCLUSIVE_BITS(test_var, ~TEST_CHANGE_BITS); in test_kernel_assert_bits_nochange()
358 ASSERT_EXCLUSIVE_WRITER_SCOPED(test_var); in test_kernel_assert_writer_scoped()
364 ASSERT_EXCLUSIVE_ACCESS_SCOPED(test_var); in test_kernel_assert_access_scoped()
405 sink_value(test_var); in test_kernel_seqlock_reader()
414 test_var++; in test_kernel_seqlock_writer()
424 __atomic_load_n(&test_var, __ATOMIC_RELAXED); in test_kernel_atomic_builtins()
431 test_var ^= 0x10000; in test_kernel_xor_1bit()
443 { test_kernel_write, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_basic()
444 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_basic()
449 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_basic()
450 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_basic()
503 { test_kernel_write_nochange, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_novalue_change()
504 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_novalue_change()
509 { test_kernel_write_nochange, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_novalue_change()
510 { test_kernel_write_nochange, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_novalue_change()
535 { test_kernel_write_nochange_rcu, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_novalue_change_exception()
536 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_novalue_change_exception()
541 { test_kernel_write_nochange_rcu, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_novalue_change_exception()
542 { test_kernel_write_nochange_rcu, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_novalue_change_exception()
561 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_unknown_origin()
583 { test_kernel_write, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_write_write_assume_atomic()
584 { test_kernel_write, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_write_write_assume_atomic()
591 sink_value(READ_ONCE(test_var)); /* induce value-change */ in test_write_write_assume_atomic()
663 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_read_plain_atomic_write()
664 …{ test_kernel_write_atomic, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE | KCSAN_ACCESS_ATOMIC … in test_read_plain_atomic_write()
684 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_read_plain_atomic_rmw()
685 { test_kernel_atomic_rmw, &test_var, sizeof(test_var), in test_read_plain_atomic_rmw()
746 { test_kernel_assert_writer, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT }, in test_assert_exclusive_writer()
747 { test_kernel_write_nochange, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_assert_exclusive_writer()
764 …{ test_kernel_assert_access, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCESS_WRITE… in test_assert_exclusive_access()
765 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_assert_exclusive_access()
782 …{ test_kernel_assert_access, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCESS_WRITE… in test_assert_exclusive_access_writer()
783 { test_kernel_assert_writer, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT }, in test_assert_exclusive_access_writer()
788 …{ test_kernel_assert_access, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCESS_WRITE… in test_assert_exclusive_access_writer()
789 …{ test_kernel_assert_access, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCESS_WRITE… in test_assert_exclusive_access_writer()
794 { test_kernel_assert_writer, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT }, in test_assert_exclusive_access_writer()
795 { test_kernel_assert_writer, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT }, in test_assert_exclusive_access_writer()
818 { test_kernel_assert_bits_change, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT }, in test_assert_exclusive_bits_change()
819 { test_kernel_change_bits, &test_var, sizeof(test_var), in test_assert_exclusive_bits_change()
849 …{ test_kernel_assert_writer_scoped, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCES… in test_assert_exclusive_writer_scoped()
850 { test_kernel_write_nochange, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_assert_exclusive_writer_scoped()
855 { test_enter_scope, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCESS_SCOPED }, in test_assert_exclusive_writer_scoped()
856 { test_kernel_write_nochange, &test_var, sizeof(test_var), KCSAN_ACCESS_WRITE }, in test_assert_exclusive_writer_scoped()
876 …{ test_kernel_assert_access_scoped, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCES… in test_assert_exclusive_access_scoped()
877 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_assert_exclusive_access_scoped()
885 …{ test_enter_scope, &test_var, sizeof(test_var), KCSAN_ACCESS_ASSERT | KCSAN_ACCESS_WRITE | KCSAN_… in test_assert_exclusive_access_scoped()
886 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_assert_exclusive_access_scoped()
949 __atomic_store_n(&test_var, 42L, __ATOMIC_RELAXED); in test_atomic_builtins()
950 KUNIT_EXPECT_EQ(test, 42L, __atomic_load_n(&test_var, __ATOMIC_RELAXED)); in test_atomic_builtins()
952 KUNIT_EXPECT_EQ(test, 42L, __atomic_exchange_n(&test_var, 20, __ATOMIC_RELAXED)); in test_atomic_builtins()
953 KUNIT_EXPECT_EQ(test, 20L, test_var); in test_atomic_builtins()
956 KUNIT_EXPECT_TRUE(test, __atomic_compare_exchange_n(&test_var, &tmp, 30L, in test_atomic_builtins()
960 KUNIT_EXPECT_EQ(test, test_var, 30L); in test_atomic_builtins()
961 KUNIT_EXPECT_FALSE(test, __atomic_compare_exchange_n(&test_var, &tmp, 40L, in test_atomic_builtins()
965 KUNIT_EXPECT_EQ(test, test_var, 30L); in test_atomic_builtins()
967 KUNIT_EXPECT_EQ(test, 30L, __atomic_fetch_add(&test_var, 1, __ATOMIC_RELAXED)); in test_atomic_builtins()
968 KUNIT_EXPECT_EQ(test, 31L, __atomic_fetch_sub(&test_var, 1, __ATOMIC_RELAXED)); in test_atomic_builtins()
969 KUNIT_EXPECT_EQ(test, 30L, __atomic_fetch_and(&test_var, 0xf, __ATOMIC_RELAXED)); in test_atomic_builtins()
970 KUNIT_EXPECT_EQ(test, 14L, __atomic_fetch_xor(&test_var, 0xf, __ATOMIC_RELAXED)); in test_atomic_builtins()
971 KUNIT_EXPECT_EQ(test, 1L, __atomic_fetch_or(&test_var, 0xf0, __ATOMIC_RELAXED)); in test_atomic_builtins()
972 KUNIT_EXPECT_EQ(test, 241L, __atomic_fetch_nand(&test_var, 0xf, __ATOMIC_RELAXED)); in test_atomic_builtins()
973 KUNIT_EXPECT_EQ(test, -2L, test_var); in test_atomic_builtins()
990 { test_kernel_read, &test_var, sizeof(test_var), 0 }, in test_1bit_value_change()
991 { test_kernel_xor_1bit, &test_var, sizeof(test_var), __KCSAN_ACCESS_RW(KCSAN_ACCESS_WRITE) }, in test_1bit_value_change()