Messages in this thread | | | Date | Tue, 30 Mar 2021 14:53:02 -0300 | From | Jonas Malaco <> | Subject | Re: [PATCH] hwmon: (nzxt-kraken2) mark and order concurrent accesses |
| |
On Tue, Mar 30, 2021 at 03:51:21AM -0700, Guenter Roeck wrote: > [ ... ] > > Then please explain why _this_ use of time_after() is wrong but all > others in the kernel are not. Also, please note that we are not > concerned with code generation by the compiler as long as the > generated code is correct (and I don't see any indication that > it isn't).
The accesses to priv->temp_input[], ->fan_input[] and ->updated (where this relates to your question about time_after()) are not wrong, but undefined.
But if we are not concerned with code that is currently generated correctly, which indeed is the case in the five arch x compiler combinations I tested, then there simply is no point to this patch.
Thanks for going through this with me, Jonas
P.S. Admittedly from a sample way too small, but in the kernel time_after(jiffies, x) calls do not generally appear to involve an expression x with a data race. And there are a few calls where READ_ONCE() is indeed used in x.
| |