On Mon, May 13, 2019 at 2:45 PM Michal Hocko <mhocko@xxxxxxxxxx> wrote: > > On Mon 13-05-19 14:09:59, Yang Shi wrote: > [...] > > I think we can just account 512 base pages for nr_scanned for > > isolate_lru_pages() to make the counters sane since PGSCAN_KSWAPD/DIRECT > > just use it. > > > > And, sc->nr_scanned should be accounted as 512 base pages too otherwise we > > may have nr_scanned < nr_to_reclaim all the time to result in false-negative > > for priority raise and something else wrong (e.g. wrong vmpressure). > > Be careful. nr_scanned is used as a pressure indicator to slab shrinking > AFAIR. Maybe this is ok but it really begs for much more explaining I don't know why my company mailbox didn't receive this email, so I replied with my personal email. It is not used to double slab pressure any more since commit 9092c71bb724 ("mm: use sc->priority for slab shrink targets"). It uses sc->priority to determine the pressure for slab shrinking now. So, I think we can just remove that "double slab pressure" code. It is not used actually and looks confusing now. Actually, the "double slab pressure" does something opposite. The extra inc to sc->nr_scanned just prevents from raising sc->priority. > than "it should be fine". This should have happened when THP swap out > was implemented... > > -- > Michal Hocko > SUSE Labs >