Messages in this thread | | | Subject | Re: Potentially missing "memory" clobbers in bitops.h for x86 | From | "H. Peter Anvin" <> | Date | Fri, 29 Mar 2019 13:52:33 -0700 |
| |
On 3/29/19 8:54 AM, Alexander Potapenko wrote: > >> Of course, this would force the compiler to actually compute the >> offset, which would slow things down. I have no idea whether this >> would be better or worse than just using the "memory" clobber. > Just adding the "memory" clobber to clear_bit() changes sizes of 5 > kernel functions (the three mentioned above, plus hub_activate() and > native_send_call_func_ipi()) by a small margin. > This probably means the performance impact of this clobber is > negligible in this case.
I would agree with that.
Could you perhaps verify whether or not any of the above functions contains a currently manifest bug?
Note: the atomic versions of these functions obviously need to have "volatile" and the clobber anyway, as they are by definition barriers and moving memory operations around them would be a very serious error.
-hpa
| |