On Mon, 13 Jul 2020 19:38:05 +0200 SeongJae Park <sjpark@xxxxxxxxxx> wrote: > On Mon, 13 Jul 2020 20:19:09 +0300 Mike Rapoport <rppt@xxxxxxxxxx> wrote: > > > On Mon, Jul 13, 2020 at 02:21:43PM +0200, SeongJae Park wrote: > > > On Mon, 13 Jul 2020 15:08:42 +0300 Mike Rapoport <rppt@xxxxxxxxxx> wrote: > > > > > > > Hi, > > > > > > > > On Mon, Jul 13, 2020 at 10:41:31AM +0200, SeongJae Park wrote: > > > > > From: SeongJae Park <sjpark@xxxxxxxxx> > > > > > > > > > > This commit exports 'lookup_page_ext()' to GPL modules. It will be used > > > > > by DAMON in following commit for the implementation of the region based > > > > > sampling. > > > > > > > > Maybe I'm missing something, but why is DAMON a module? > > > > > > I made it loadable just for easier adoption from downstream kernels. I could > > > drop the module build support if asked. > > > > Well, exporting core mm symbols to modules should be considred very > > carefully. > > Agreed. I will drop the module support from the next spin. > > > > > Why lookup_page_ext() is required for DAMON? It is not used anywhere in > > this patchset. > > It's indirectly used. In the 6th patch, DAMON uses 'set_page_young()' to not > interfere with other PTE Accessed bit users. And, 'set_page_young()' uses > 'lookup_page_ext()' if !CONFIG_64BIT. That's why I exported it. This also means that it would make no sense if !64BIT && !PAGE_EXTENSION. In the next spin, I will update the DAMON Kconfig to select PAGE_EXTENSION if !64BIT, as same to that of IDLE_PAGE_TRACKING. Thanks, SeongJae Park