diff mbox series

[1/1] alloc_tag: Export memory allocation profiling symbols used by modules

Message ID 20240711204626.1669138-1-surenb@google.com (mailing list archive)
State New
Headers show
Series [1/1] alloc_tag: Export memory allocation profiling symbols used by modules | expand

Commit Message

Suren Baghdasaryan July 11, 2024, 8:46 p.m. UTC
Export mem_alloc_profiling_key, page_ext_get() and page_ext_set() symbols
as they can be used by modules (mem_alloc_profiling_key is used indirectly
via mem_alloc_profiling_enabled()).

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202407080044.DWMC9N9I-lkp@intel.com/
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
---
 lib/alloc_tag.c | 1 +
 mm/page_ext.c   | 2 ++
 2 files changed, 3 insertions(+)


base-commit: 9d9a2f29aefdadc86e450308ff056017a209c755

Comments

Andrew Morton July 11, 2024, 9:07 p.m. UTC | #1
On Thu, 11 Jul 2024 13:46:26 -0700 Suren Baghdasaryan <surenb@google.com> wrote:

> Export mem_alloc_profiling_key, page_ext_get() and page_ext_set() symbols
> as they can be used by modules (mem_alloc_profiling_key is used indirectly
> via mem_alloc_profiling_enabled()).

Thanks, I'll add

Fixes: 22d407b164ff ("lib: add allocation tagging support for memory allocation profiling").
Suren Baghdasaryan July 11, 2024, 9:38 p.m. UTC | #2
On Thu, Jul 11, 2024 at 2:07 PM Andrew Morton <akpm@linux-foundation.org> wrote:
>
> On Thu, 11 Jul 2024 13:46:26 -0700 Suren Baghdasaryan <surenb@google.com> wrote:
>
> > Export mem_alloc_profiling_key, page_ext_get() and page_ext_set() symbols
> > as they can be used by modules (mem_alloc_profiling_key is used indirectly
> > via mem_alloc_profiling_enabled()).
>
> Thanks, I'll add
>
> Fixes: 22d407b164ff ("lib: add allocation tagging support for memory allocation profiling").

Perfect. Thank you!
Christoph Hellwig July 12, 2024, 4:25 a.m. UTC | #3
On Thu, Jul 11, 2024 at 01:46:26PM -0700, Suren Baghdasaryan wrote:
> +EXPORT_SYMBOL(page_ext_get);

> +EXPORT_SYMBOL(page_ext_put);

These really have no business being exported, especially non-GPL.
Please rework whatever interfaces need them to be be moved out of line.
Suren Baghdasaryan July 12, 2024, 1:27 p.m. UTC | #4
On Thu, Jul 11, 2024 at 9:25 PM Christoph Hellwig <hch@infradead.org> wrote:
>
> On Thu, Jul 11, 2024 at 01:46:26PM -0700, Suren Baghdasaryan wrote:
> > +EXPORT_SYMBOL(page_ext_get);
>
> > +EXPORT_SYMBOL(page_ext_put);
>
> These really have no business being exported, especially non-GPL.
> Please rework whatever interfaces need them to be be moved out of line.

Ok, I can do that. Thanks for the feedback!

>
Suren Baghdasaryan July 17, 2024, 1:22 a.m. UTC | #5
On Fri, Jul 12, 2024 at 6:27 AM Suren Baghdasaryan <surenb@google.com> wrote:
>
> On Thu, Jul 11, 2024 at 9:25 PM Christoph Hellwig <hch@infradead.org> wrote:
> >
> > On Thu, Jul 11, 2024 at 01:46:26PM -0700, Suren Baghdasaryan wrote:
> > > +EXPORT_SYMBOL(page_ext_get);
> >
> > > +EXPORT_SYMBOL(page_ext_put);
> >
> > These really have no business being exported, especially non-GPL.
> > Please rework whatever interfaces need them to be be moved out of line.
>
> Ok, I can do that. Thanks for the feedback!

Replacement patches are posted at
https://lore.kernel.org/all/20240717011631.2150066-1-surenb@google.com

Andrew, could you please replace this older patch with the new
patchset (2 patches now)? I can see the old patch in mm-unstable as
ac5ca7954e4e ("alloc_tag: export memory allocation profiling symbols
used by modules") and I think it's also in your mm-hotfixes-stable.
Please replace it with new patches.
Thanks,
Suren.

>
> >
diff mbox series

Patch

diff --git a/lib/alloc_tag.c b/lib/alloc_tag.c
index c347b8b72d78..c01f9f4e92f2 100644
--- a/lib/alloc_tag.c
+++ b/lib/alloc_tag.c
@@ -15,6 +15,7 @@  EXPORT_SYMBOL(_shared_alloc_tag);
 
 DEFINE_STATIC_KEY_MAYBE(CONFIG_MEM_ALLOC_PROFILING_ENABLED_BY_DEFAULT,
 			mem_alloc_profiling_key);
+EXPORT_SYMBOL(mem_alloc_profiling_key);
 
 struct allocinfo_private {
 	struct codetag_iterator iter;
diff --git a/mm/page_ext.c b/mm/page_ext.c
index 95dd8ffeaf81..57a198c70f98 100644
--- a/mm/page_ext.c
+++ b/mm/page_ext.c
@@ -527,6 +527,7 @@  struct page_ext *page_ext_get(const struct page *page)
 
 	return page_ext;
 }
+EXPORT_SYMBOL(page_ext_get);
 
 /**
  * page_ext_put() - Working with page extended information is done.
@@ -545,3 +546,4 @@  void page_ext_put(struct page_ext *page_ext)
 
 	rcu_read_unlock();
 }
+EXPORT_SYMBOL(page_ext_put);