Messages in this thread | | | Date | Fri, 14 Aug 2020 18:46:29 +0100 | From | Matthew Wilcox <> | Subject | Re: [PATCH] mm : update ra->ra_pages if it's NOT equal to bdi->ra_pages |
| |
On Thu, Aug 13, 2020 at 07:33:07PM -0700, Andrew Morton wrote: > On Fri, 14 Aug 2020 10:20:11 +0800 Zhaoyang Huang <huangzhaoyang@gmail.com> wrote: > > No, What I want to fix is the file within one process's context keeps > > using the initialized value when it is opened and not sync with new > > value when bdi->ra_pages changes. > > So you're saying that > > echo xxx > /sys/block/dm/queue/read_ahead_kb > > does not affect presently-open files, and you believe that it should do > so? > > I guess that could be a reasonable thing to want - it's reasonable for > a user to expect that writing to a global tunable will take immediate > global effect. I guess.
But it's also reasonable for someone to have written an application assuming that the current behaviour won't change.
As I understand it, if we change net.ipv4.tcp_window_scaling, that will take effect only for new connections, and not for existing ones.
I think the _real_ problem is that readahead never scales down, except for EIO.
I don't have time to take on another project right now, but I think this patch is too simplistic and has too many downsides. Someone needs to really think the readahead situation through properly.
| |