On Mon, Mar 9, 2020 at 3:32 PM Michael Stapelberg <michael+lkml@xxxxxxxxxxxxx> wrote: > > Here’s one more thing I noticed: when polling > /sys/kernel/debug/bdi/0:93/stats, I see that BdiDirtied and BdiWritten > remain at their original values while the kernel sends FUSE read > requests, and only goes up when the kernel transitions into sending > FUSE write requests. Notably, the page dirtying throttling happens in > the read phase, which is most likely why the write bandwidth is > (correctly) measured as 0. > > Do we have any ideas on why the kernel sends FUSE reads at all? Memory writes (stores) need the memory page to be up-to-date wrt. the backing file before proceeding. This means that if the page hasn't yet been cached by the kernel, it needs to be read first. Thanks, Miklos