For several reasons, it would be beneficial to kill off ACCESS_ONCE() tree-wide, in favour of {READ,WRITE}_ONCE(). These work with aggregate types, more obviously document their intended behaviour, and are necessary for tools like KTSAN to work correctly (as otherwise reads and writes cannot be instrumented separately). While it's possible to script a tree-wide conversion using Coccinelle, some cases such as the ath9k MAC drivers require some manual intervention to ensure that the resulting code remains legible. This series moves the ath9k MAC drivers over to {READ,WRITE}_ONCE(). In both cases this is functionally equivalent to the below Coccinelle script being applied, though the existing formatting is retained. ---- virtual patch @ depends on patch @ expression E1, E2; @@ - ACCESS_ONCE(E1) = E2 + WRITE_ONCE(E1, E2) @ depends on patch @ expression E; @@ - ACCESS_ONCE(E) + READ_ONCE(E) ---- Thanks, Mark. Mark Rutland (2): ath9k: ar9002_mac: kill off ACCESS_ONCE() ath9k: ar9003_mac: kill off ACCESS_ONCE() drivers/net/wireless/ath/ath9k/ar9002_mac.c | 64 ++++++++++---------- drivers/net/wireless/ath/ath9k/ar9003_mac.c | 92 ++++++++++++++--------------- 2 files changed, 78 insertions(+), 78 deletions(-) -- 2.7.4