Re: [PATCH v2 5/7] kallsyms: Rename is_kernel() and is_kernel_text()

From: Kefeng Wang
Date: Thu Jul 29 2021 - 07:06:14 EST



On 2021/7/29 12:05, Steven Rostedt wrote:
On Thu, 29 Jul 2021 10:00:51 +0800
Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote:

On 2021/7/28 23:28, Steven Rostedt wrote:
On Wed, 28 Jul 2021 16:13:18 +0800
Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote:
The is_kernel[_text]() function check the address whether or not
in kernel[_text] ranges, also they will check the address whether
or not in gate area, so use better name.
Do you know what a gate area is?

Because I believe gate area is kernel text, so the rename just makes it
redundant and more confusing.
Yes, the gate area(eg, vectors part on ARM32, similar on x86/ia64) is
kernel text.

I want to keep the 'basic' section boundaries check, which only check
the start/end

of sections, all in section.h,  could we use 'generic' or 'basic' or
'core' in the naming?

* is_kernel_generic_data() --- come from core_kernel_data() in kernel.h
* is_kernel_generic_text()

The old helper could remain unchanged, any suggestion, thanks.
Because it looks like the check of just being in the range of "_stext"
to "_end" is just an internal helper, why not do what we do all over
the kernel, and just prefix the function with a couple of underscores,
that denote that it's internal?

__is_kernel_text()

OK, thanks for your advise,  there's already a __is_kernel_text() in arch/x86/mm/init_32.c,

I will change it to is_x32_kernel_text() to avoid conflict on x86_32.


Then you have:

static inline int is_kernel_text(unsigned long addr)
{
if (__is_kernel_text(addr))
return 1;
return in_gate_area_no_mm(addr);
}

-- Steve
.