On Wed, Jan 13, 2021 at 11:08:56AM +0800, huang ying wrote: > On Wed, Jan 13, 2021 at 10:47 AM Linus Torvalds > <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > > > On Tue, Jan 12, 2021 at 6:43 PM Huang Ying <ying.huang@xxxxxxxxx> wrote: > > > > > > So in this patch, at the end of wp_page_copy(), the old unused swap > > > cache page will be tried to be freed. > > > > I'd much rather free it later when needed, rather than when you're in > > a COW section. > > Unused swap cache isn't unused file cache. Nobody can reuse them > directly before freeing them firstly. It will make COW a little > faster via keeping them. But I think the overhead to free them isn't > high. While keeping them in system will confuse users (users will > expect file cache to use free memory, but not expect unused swap cache > to use much free memory), make the swap space more fragmented, and add > system overall overhead (scanning LRU list, etc.). Couldn't we just move it to the tail of the LRU list so it's reclaimed first? Or is locking going to be a problem here?