| /kernel/linux/linux-5.10/Documentation/dev-tools/ |
| D | kcsan.rst | 4 The Kernel Concurrency Sanitizer (KCSAN) is a dynamic race detector, which 24 A typical data race report looks like this:: 27 BUG: KCSAN: data-race in generic_permission / kernfs_refresh_inode 62 the race. It is followed by the access types and stack traces of the 2 threads 63 involved in the data race. 65 The other less common type of data race report looks like this:: 68 BUG: KCSAN: data-race in e1000_clean_rx_irq+0x551/0xb10 70 race at unknown origin, with read to 0xffff933db8a2ae6c of 1 bytes by interrupt on cpu 0: 92 racing thread, but a race was inferred due to the data value of the watched 100 It may be desirable to disable data race detection for specific accesses, [all …]
|
| /kernel/linux/linux-6.6/Documentation/dev-tools/ |
| D | kcsan.rst | 7 The Kernel Concurrency Sanitizer (KCSAN) is a dynamic race detector, which 27 A typical data race report looks like this:: 30 BUG: KCSAN: data-race in test_kernel_read / test_kernel_write 52 the race. It is followed by the access types and stack traces of the 2 threads 53 involved in the data race. If KCSAN also observed a value change, the observed 56 The other less common type of data race report looks like this:: 59 BUG: KCSAN: data-race in test_kernel_rmw_array+0x71/0xd0 61 race at unknown origin, with read to 0xffffffffc009bdb0 of 8 bytes by task 515 on cpu 2: 75 racing thread, but a race was inferred due to the data value of the watched 85 It may be desirable to disable data race detection for specific accesses, [all …]
|
| /kernel/linux/linux-5.10/kernel/kcsan/ |
| D | kcsan.h | 54 * Total number of ASSERT failures due to races. If the observed race is 103 * race, depending on preferences. 108 * Did not observe a value-change, and it is invalid to report the race. 113 * The value was observed to change, and the race should be reported. 131 * No other thread was observed to race with the access, but the data 138 * Print a race report from thread that encountered the race.
|
| D | report.c | 71 * The last time the race was reported. 108 * Checks if the race identified by thread frames frame1 and frame2 has 124 /* Check if a matching race report exists. */ in rate_limit_report() 148 /* Reported recently, check if race matches. */ in rate_limit_report() 250 return (type & KCSAN_ACCESS_ASSERT) != 0 ? "assert: race" : "data-race"; in get_bug_type() 408 pr_err("race at unknown origin, with %s to 0x%px of %zu bytes by %s on cpu %i:\n", in print_report() 461 * race with a task on the same CPU (KCSAN_INTERRUPT_WATCHER), provide a in set_other_info_task_blocking()
|
| /kernel/linux/linux-6.6/lib/ |
| D | Kconfig.kcsan | 14 bool "KCSAN: dynamic data race detector" 21 data-race detector that relies on compile-time instrumentation. 51 external functions on report generation; if a race report is 70 various race scenarios, and verifies the reports generated to 131 results in more aggressive race detection, whereas a larger value 155 int "Duration in milliseconds, in which any given race is only reported once" 158 Any given race is only reported once in the defined time window. 173 conflicting access is of unknown origin. This type of race is 174 reported if it was only possible to infer a race due to a data value 178 bool "Strict data-race checking" [all …]
|
| D | rcuref.c | 37 * scheme, but the destruction race described below cannot be prevented 72 * The actual race is possible due to the unconditional increment and 102 * Deconstruction race 144 * Race conditions 149 * the occasional race vs. a dead or already saturated refcount into
|
| /kernel/linux/linux-5.10/lib/ |
| D | Kconfig.kcsan | 24 bool "KCSAN: dynamic data race detector" 31 data-race detector that relies on compile-time instrumentation. 57 external functions on report generation; if a race report is 78 various race scenarios, and verifies the reports generated to 139 results in more aggressive race detection, whereas a larger value 162 int "Duration in milliseconds, in which any given race is only reported once" 165 Any given race is only reported once in the defined time window. 184 conflicting access is of unknown origin. This type of race is 185 reported if it was only possible to infer a race due to a data value 194 unchanged, do not report the data race. [all …]
|
| /kernel/linux/linux-5.10/tools/memory-model/ |
| D | linux-kernel.cat | 189 let pre-race = ext & ((Plain * M) | ((M \ IW) * Plain)) 192 let wr-incoh = pre-race & rf & rw-xbstar^-1 193 let rw-incoh = pre-race & fr & wr-vis^-1 194 let ww-incoh = pre-race & co & ww-vis^-1 199 let ww-race = (pre-race & co) \ ww-nonrace 200 let wr-race = (pre-race & (co? ; rf)) \ wr-vis \ rw-xbstar^-1 201 let rw-race = (pre-race & fr) \ rw-xbstar 203 flag ~empty (ww-race | wr-race | rw-race) as data-race
|
| /kernel/linux/linux-6.6/tools/memory-model/ |
| D | linux-kernel.cat | 202 let pre-race = ext & ((Plain * M) | ((M \ IW) * Plain)) 205 let wr-incoh = pre-race & rf & rw-xbstar^-1 206 let rw-incoh = pre-race & fr & wr-vis^-1 207 let ww-incoh = pre-race & co & ww-vis^-1 212 let ww-race = (pre-race & co) \ ww-nonrace 213 let wr-race = (pre-race & (co? ; rf)) \ wr-vis \ rw-xbstar^-1 214 let rw-race = (pre-race & fr) \ rw-xbstar 216 flag ~empty (ww-race | wr-race | rw-race) as data-race
|
| /kernel/linux/linux-6.6/kernel/kcsan/ |
| D | kcsan.h | 55 * Total number of ASSERT failures due to races. If the observed race is 104 * race, depending on preferences. 109 * Did not observe a value-change, and it is invalid to report the race. 114 * The value was observed to change, and the race should be reported. 136 * No other thread was observed to race with the access, but the data value 137 * before and after the stall differs. Reports a race of "unknown origin".
|
| D | report.c | 78 * The last time the race was reported. 115 * Checks if the race identified by thread frames frame1 and frame2 has 131 /* Check if a matching race report exists. */ in rate_limit_report() 155 /* Reported recently, check if race matches. */ in rate_limit_report() 261 return (type & KCSAN_ACCESS_ASSERT) != 0 ? "assert: race" : "data-race"; in get_bug_type() 462 pr_err("race at unknown origin, with %s to 0x%px of %zu bytes by %s on cpu %i:\n", in print_report() 525 * race with a task on the same CPU (KCSAN_INTERRUPT_WATCHER), provide a in set_other_info_task_blocking()
|
| /kernel/linux/linux-5.10/Documentation/driver-api/firmware/ |
| D | direct-fs-lookup.rst | 22 a race is possible with loading the driver and the real rootfs not yet being 23 available. Stuffing the firmware into initramfs resolves this race issue, 24 however note that using initrd does not suffice to address the same race.
|
| /kernel/linux/linux-6.6/Documentation/driver-api/firmware/ |
| D | direct-fs-lookup.rst | 22 a race is possible with loading the driver and the real rootfs not yet being 23 available. Stuffing the firmware into initramfs resolves this race issue, 24 however note that using initrd does not suffice to address the same race.
|
| /kernel/linux/linux-5.10/drivers/md/ |
| D | dm-builtin.c | 12 * The release method suffers from module unload race. We may prevent the 18 * If this code were placed in the dm module, the following race may 40 * In order to fix this module unload race, we place the release method
|
| /kernel/linux/linux-6.6/tools/testing/selftests/kvm/x86_64/ |
| D | recalc_apic_map_test.c | 3 * Test edge cases and race conditions in kvm_recalculate_apic_map(). 21 static void *race(void *arg) in race() function 60 TEST_ASSERT_EQ(pthread_create(&thread, NULL, race, vcpus[0]), 0); in main()
|
| /kernel/linux/linux-6.6/drivers/md/ |
| D | dm-builtin.c | 12 * The release method suffers from module unload race. We may prevent the 18 * If this code were placed in the dm module, the following race may 40 * In order to fix this module unload race, we place the release method
|
| /kernel/linux/linux-6.6/tools/memory-model/Documentation/ |
| D | access-marking.txt | 19 2. Data-race marking, for example, "data_race(a = b);" 37 Therefore, if a given access is involved in an intentional data race, 46 race with one of data_race(), READ_ONCE(), or WRITE_ONCE(), will prevent 98 that the resulting data race was intentional. 108 in a retry. Unless the race condition that resulted in the bogus value 122 that the resulting data race was intentional. 143 that the resulting data race was intentional. 159 because KCSAN will have no way of knowing that the resulting data race 517 Checking Stress-Test Race Coverage 520 When designing stress tests it is important to ensure that race conditions [all …]
|
| /kernel/linux/linux-6.6/tools/memory-model/scripts/ |
| D | judgelitmus.sh | 8 # "DATARACE" marker in the "Result:" comment or a "Flag data-race" marker 56 if grep -q '^Flag data-race$' "$LKMM_DESTDIR/$litmusout" 69 echo '!!! Predicted data race not modeled' $litmus 74 echo '!!! Unexpected data race modeled' $litmus
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/ci/xfails/ |
| D | rockchip-rk3399-flakes.txt | 3 kms_flip@dpms-vs-vblank-race-interruptible 5 kms_flip@modeset-vs-vblank-race-interruptible
|
| /kernel/linux/linux-5.10/include/asm-generic/bitops/ |
| D | instrumented-non-atomic.h | 90 * This operation is non-atomic. If two instances of this operation race, one 104 * This operation is non-atomic. If two instances of this operation race, one 118 * This operation is non-atomic. If two instances of this operation race, one
|
| /kernel/linux/linux-6.6/include/asm-generic/bitops/ |
| D | instrumented-non-atomic.h | 93 * This operation is non-atomic. If two instances of this operation race, one 108 * This operation is non-atomic. If two instances of this operation race, one 123 * This operation is non-atomic. If two instances of this operation race, one
|
| /kernel/linux/linux-6.6/tools/testing/selftests/powerpc/pmu/ebb/ |
| D | lost_exception_test.c | 55 * We are trying to get the EBB exception to race exactly with in test_body() 65 /* Change the sample period slightly to try and hit the race */ in test_body()
|
| /kernel/linux/linux-5.10/tools/testing/selftests/powerpc/pmu/ebb/ |
| D | lost_exception_test.c | 55 * We are trying to get the EBB exception to race exactly with in test_body() 65 /* Change the sample period slightly to try and hit the race */ in test_body()
|
| /kernel/linux/linux-6.6/Documentation/filesystems/ |
| D | hpfs.rst | 239 Fixed a race-condition when write_inode is called while deleting file 243 Rewritten locking to avoid race-conditions 296 Fixed a possible bitmap race 302 Fixed a nondestructive race in rename 325 Fixed race-condition in buffer code - it is in all filesystems in Linux; 332 Fixed non-crashing race in unlink (Alexander Viro)
|
| /kernel/linux/linux-5.10/Documentation/filesystems/ |
| D | hpfs.rst | 239 Fixed a race-condition when write_inode is called while deleting file 243 Rewritten locking to avoid race-conditions 296 Fixed a possible bitmap race 302 Fixed a nondestructive race in rename 325 Fixed race-condition in buffer code - it is in all filesystems in Linux; 332 Fixed non-crashing race in unlink (Alexander Viro)
|