Messages in this thread | | | From | "Huang, Ying" <> | Subject | Re: [PATCH v3 1/2] mm/swapfile: fix possible data races of inuse_pages | Date | Tue, 28 Jun 2022 09:56:58 +0800 |
| |
Qian Cai <quic_qiancai@quicinc.com> writes:
> 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.
We have already done this in swapfile.c, please search "WRITE_ONCE" in that file.
Best Regards, Huang, Ying
| |