Re: (resend)WARNING: trying to isolate tail page in isolate_lru_page

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Aug 26, 2022 at 10:53 AM Minchan Kim <minchan@xxxxxxxxxx> wrote:
>
> On Fri, Aug 26, 2022 at 11:27:53AM -0600, Yu Zhao wrote:
> > On Fri, Aug 26, 2022 at 11:15 AM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:
> > >
> > > On Fri, Aug 26, 2022 at 11:20:58AM +0800, Yin, Fengwei wrote:
> > > > On 8/26/2022 2:46 AM, Matthew Wilcox wrote:
> > > > > There's a number of ways of solving this.  I'm interested in seeing
> > > > > which one Minchan thinks is best.
> > > >
> > > > My understanding is:
> > > > PageTransCompound() return false for compound page if THP is disabled
> > > > in kernel config. Replacing PageTransCompound() with PageCompound()
> > > > could work here. But for the long term, folio should be the answer. :).
> > >
> > > Yes, ultimately, isolate_lru_page() is going away as an interface
> > > and one will have to call folio_isolate_lru().  But should
> > > madvise_cold_or_pageout_pte_range() even be getting called for VMAs
> > > which are mmaps of af_packet?  can_madv_lru_vma() rules out a number
> > > of different types of VMA; should it also be ruling out af_packet VMAs?
> >
> > Agreed.
> >
> > > If so, how?
> >
> > We should add a reliable helper to tell whether a file VMA is
> > reclaimable or not. I don't think we have one. Currently MGLRU checks
> > mapping->a_ops->read_folio for file VMAs to determine whether they are
> > reclaimable.
> >
>
> Long term, that's better idea(For stable backport, I'd like to go with
> simple PageLRU check).
>
> I wonder it's possible to mix LRU pages and non-struct pages together
> in a VMA. Otherwise, could we reuse(abuse) VM_MIXEDMAP?

I don't think the mix is going to happen via regular mmap call.




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux