On Tue, Mar 22, 2022 at 02:47:42AM +0000, CGEL wrote: > On Mon, Mar 21, 2022 at 10:33:20AM -0400, Johannes Weiner wrote: > > On Wed, Mar 16, 2022 at 06:39:28AM +0000, cgel.zte@xxxxxxxxx wrote: > > > From: Yang Yang <yang.yang29@xxxxxxxxxx> > > > > > > psi tracks the time spent on submitting the IO of refaulting file pages > > > and anonymous pages[1]. But after we tracks refaulting anonymous pages > > > in swap_readpage[2][3], there is no need to track refaulting anonymous > > > pages in submit_bio. > > > > > > So this patch can reduce redundant calling of psi_memstall_enter. And > > > make it easier to track refaulting file pages and anonymous pages > > > separately. > > > > I don't think this is an improvement. > > > > psi_memstall_enter() will check current->in_memstall once, detect the > > nested call, and bail. Your patch checks PageSwapBacked for every page > > being added. It's more branches for less robust code. > > We are also working for a new patch to classify different reasons cause > psi_memstall_enter(): reclaim, thrashing, compact, etc. This will help > user to tuning sysctl, for example, if user see high compact delay, he > may try do adjust THP sysctl to reduce the compact delay. > > To support that, we should distinguish what's the reason cause psi in > submit_io(), this patch does the job. Please submit these patches together then. On its own, this patch isn't desirable.