From: Paul E. McKenney Date: Thu, 13 May 2021 18:17:02 +0000 (-0700) Subject: tools/memory-model: Make read_foo_diagnostic() more clearly diagnostic X-Git-Tag: v5.15-rc1~119^2^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1846a7fa767fbf8cf42d71daf75d51e30e3c8327;p=thirdparty%2Flinux.git tools/memory-model: Make read_foo_diagnostic() more clearly diagnostic The current definition of read_foo_diagnostic() in the "Lock Protection With Lockless Diagnostic Access" section returns a value, which could be use for any purpose. This could mislead people into incorrectly using data_race() in cases where READ_ONCE() is required. This commit therefore makes read_foo_diagnostic() simply print the value read. Reported-by: Manfred Spraul Signed-off-by: Paul E. McKenney --- diff --git a/tools/memory-model/Documentation/access-marking.txt b/tools/memory-model/Documentation/access-marking.txt index 1ab189f51f55d..58bff26198767 100644 --- a/tools/memory-model/Documentation/access-marking.txt +++ b/tools/memory-model/Documentation/access-marking.txt @@ -259,9 +259,9 @@ diagnostic purposes. The code might look as follows: return ret; } - int read_foo_diagnostic(void) + void read_foo_diagnostic(void) { - return data_race(foo); + pr_info("Current value of foo: %d\n", data_race(foo)); } The reader-writer lock prevents the compiler from introducing concurrency