On Mon, Jun 27, 2022 at 09:27:43PM +0800, Miaohe Lin wrote: > On 2022/6/27 20:43, Qian Cai wrote: > > On Sat, Jun 25, 2022 at 05:33:45PM +0800, Miaohe Lin wrote: > >> si->inuse_pages could still be accessed concurrently now. The plain reads > >> outside si->lock critical section, i.e. swap_show and si_swapinfo, which > >> results in data races. READ_ONCE and WRITE_ONCE is used to fix such data > >> races. Note these data races should be ok because they're just used for > >> showing swap info. > > > > Was this found by kcsan? If so, it would be useful to record the exact > > kscan report in the commit message. > > Sorry, it's found via code inspection. Well, if we are going to do a WRITE_ONCE() in those places just for documentation purpose now, I think we will need to fix all places in the mm subsystem to be consistent.