Hugh Dickins <[email protected]> writes: > > [...snip...] > >> @@ -926,6 +927,7 @@ void lru_cache_drain_for_folio(const struct folio *folio, >> *drained = LRU_CACHE_DRAINED_ALL; >> } >> } >> +EXPORT_SYMBOL_FOR_KVM(lru_cache_drain_for_folio); >> >> atomic_t lru_disable_count = ATOMIC_INIT(0); >> > > I don't mind about the virt/kvm/guest_memfd.c part of it, but I'm finding > a KVM patchset modifying mm/folio.c there hard to deal with: and notice > Sean also suggesting to separate this part out. > > As you know, I've worked up a patchset "mm/fbatch: drain lru_add_drain() > and _all()" which finally removes the problem lru_cache_drain_for_folio() > works around. In the initial version posted a week ago, there was no > lru_cache_drain_for_folio() in the tree. Now 7.3-rc1 has it, so I > intended a replacement 13/25 in my series, giving you just an empty > inline lru_cache_drain_for_folio() stub (and enum lru_cache_drained) > in linux/swap.h. > > But that won't work for you, if you're adding an EXPORT_SYMBOL_FOR_KVM() > in mm/folio.c, and of course conflicts with my removals (in context both > above and below your EXPORT line). It's easy for me to remove what's in > mm/gup.c and mm/folio.c, but I cannot remove what is not yet there. > > I've wasted hours on this, hoping not to trouble either of you; but > seeing now that I shall have to rebase anyway (an unrelated mlock fix), > I'm electing to take the only clean way out: I'm going to submit this > mm/folio.c part of your patch to Andrew tonight (with a shorter Cc list!), > in the hope that it can be accelerated into 7.3-rc2 (or at least get an > mm-stable stable base-commit id) which we can both work off independently. >
Thank you! Will use this in the next revision of this series. > Whether that's acceptable to Ackerley and to Andrew, I don't know > (just as we don't know when either of our patchsets will go further), > but let me try. > > Thanks, > Hugh
