On Wed, Jul 20, 2022 at 04:02:40AM +0100, Matthew Wilcox wrote: > On Wed, Jul 20, 2022 at 02:21:19AM +0000, cgel.zte@xxxxxxxxx wrote: > > From: Yang Yang <yang.yang29@xxxxxxxxxx> > > > > Pagecache of some kind of fs has PG_dirty bit set once it was > > allocated, so it can't be dropped. These fs include ramfs and > > tmpfs. This can make drop_pagecache_sb() more efficient. > > Why do we want to make drop_pagecache_sb() more efficient? Some users may use drop_caches besides testing or debugging. For example, some systems will create a lot of pagecache when boot up while reading bzImage, ramdisk, docker images etc. Most of this pagecache is useless after boot up. It may has a longterm negative effects for the workload when trigger page reclaim. It is especially harmful when trigger direct_reclaim or we need allocate pages in atomic context. So users may chose to drop_caches after boot up.