Messages in this thread | | | Date | Tue, 16 Oct 2018 12:53:10 +0200 | From | Greg Kroah-Hartman <> | Subject | Re: [RESEND PATCH v6 2/4] mm: move is_kernel_rodata() to asm-generic/sections.h |
| |
On Sun, Oct 14, 2018 at 05:20:08PM +0200, Bartosz Golaszewski wrote: > Export this routine so that we can use it later in devm_kstrdup_const() > and devm_kfree(). > > Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl> > Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> > Acked-by: Mike Rapoport <rppt@linux.vnet.ibm.com> > Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> > Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> > Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > --- > include/asm-generic/sections.h | 14 ++++++++++++++ > mm/util.c | 7 ------- > 2 files changed, 14 insertions(+), 7 deletions(-) > > diff --git a/include/asm-generic/sections.h b/include/asm-generic/sections.h > index 849cd8eb5ca0..d79abca81a52 100644 > --- a/include/asm-generic/sections.h > +++ b/include/asm-generic/sections.h > @@ -141,4 +141,18 @@ static inline bool init_section_intersects(void *virt, size_t size) > return memory_intersects(__init_begin, __init_end, virt, size); > } > > +/** > + * is_kernel_rodata - checks if the pointer address is located in the > + * .rodata section > + * > + * @addr: address to check > + * > + * Returns: true if the address is located in .rodata, false otherwise. > + */ > +static inline bool is_kernel_rodata(unsigned long addr) > +{ > + return addr >= (unsigned long)__start_rodata && > + addr < (unsigned long)__end_rodata;
Those symbols are not exported, are you sure this is going to work for a kernel module that ends up using this function?
I'll take it, but be aware of the future complications that might happen here...
thanks,
greg k-h
| |