bpf.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/11] sections: Unify kernel sections range check and use
@ 2021-09-30  7:11 Kefeng Wang
  2021-09-30  7:11 ` [PATCH v4 01/11] kallsyms: Remove arch specific text and data check Kefeng Wang
                   ` (10 more replies)
  0 siblings, 11 replies; 15+ messages in thread
From: Kefeng Wang @ 2021-09-30  7:11 UTC (permalink / raw)
  To: arnd, linux-arch, linux-kernel, linuxppc-dev, rostedt, mingo,
	davem, ast, ryabinin.a.a, akpm
  Cc: mpe, benh, paulus, bpf, linux-alpha, Christophe Leroy, Kefeng Wang

There are three head files(kallsyms.h, kernel.h and sections.h) which
include the kernel sections range check, let's make some cleanup and
unify them.

1. cleanup arch specific text/data check and fix address boundary check
   in kallsyms.h
2. make all the basic/core kernel range check function into sections.h
3. update all the callers, and use the helper in sections.h to simplify
   the code

After this series, we have 5 APIs about kernel sections range check in
sections.h

 * is_kernel_rodata()		--- already in sections.h
 * is_kernel_core_data()	--- come from core_kernel_data() in kernel.h
 * is_kernel_inittext()		--- come from kernel.h and kallsyms.h
 * __is_kernel_text()		--- add new internal helper
 * __is_kernel()		--- add new internal helper

Note: For the last two helpers, people should not use directly, consider to
      use corresponding function in kallsyms.h.

v4:
- Use core_kernel_text() in powerpc sugguested Christophe Leroy, build
  test only
- Use is_kernel_text() in alpha and microblaze, build test only on
  next-20210929

v3:
https://lore.kernel.org/linux-arch/20210926072048.190336-1-wangkefeng.wang@huawei.com/
- Add Steven's RB to patch2
- Introduce two internal helper, then use is_kernel_text() in core_kernel_text()
  and is_kernel() in kernel_or_module_addr() suggested by Steven

v2:
https://lore.kernel.org/linux-arch/20210728081320.20394-1-wangkefeng.wang@huawei.com/
- add ACK/RW to patch2, and drop inappropriate fix tag
- keep 'core' to check kernel data, suggestted by Steven Rostedt
  <rostedt@goodmis.org>, rename is_kernel_data() to is_kernel_core_data()
- drop patch8 which is merged
- drop patch9 which is resend independently

v1:
https://lore.kernel.org/linux-arch/20210626073439.150586-1-wangkefeng.wang@huawei.com


Kefeng Wang (11):
  kallsyms: Remove arch specific text and data check
  kallsyms: Fix address-checks for kernel related range
  sections: Move and rename core_kernel_data() to is_kernel_core_data()
  sections: Move is_kernel_inittext() into sections.h
  x86: mm: Rename __is_kernel_text() to is_x86_32_kernel_text()
  sections: Provide internal __is_kernel() and __is_kernel_text() helper
  mm: kasan: Use is_kernel() helper
  extable: Use is_kernel_text() helper
  powerpc/mm: Use core_kernel_text() helper
  microblaze: Use is_kernel_text() helper
  alpha: Use is_kernel_text() helper

 arch/alpha/kernel/traps.c      |  4 +-
 arch/microblaze/mm/pgtable.c   |  3 +-
 arch/powerpc/mm/pgtable_32.c   |  7 +---
 arch/x86/kernel/unwind_orc.c   |  2 +-
 arch/x86/mm/init_32.c          | 14 +++----
 include/asm-generic/sections.h | 75 ++++++++++++++++++++++++++--------
 include/linux/kallsyms.h       | 13 +-----
 include/linux/kernel.h         |  2 -
 kernel/extable.c               | 33 ++-------------
 kernel/locking/lockdep.c       |  3 --
 kernel/trace/ftrace.c          |  2 +-
 mm/kasan/report.c              |  2 +-
 net/sysctl_net.c               |  2 +-
 13 files changed, 78 insertions(+), 84 deletions(-)

-- 
2.26.2


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2021-10-03 17:19 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-30  7:11 [PATCH v4 00/11] sections: Unify kernel sections range check and use Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 01/11] kallsyms: Remove arch specific text and data check Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 02/11] kallsyms: Fix address-checks for kernel related range Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 03/11] sections: Move and rename core_kernel_data() to is_kernel_core_data() Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 04/11] sections: Move is_kernel_inittext() into sections.h Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 05/11] x86: mm: Rename __is_kernel_text() to is_x86_32_kernel_text() Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 06/11] sections: Provide internal __is_kernel() and __is_kernel_text() helper Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 07/11] mm: kasan: Use is_kernel() helper Kefeng Wang
2021-09-30 15:45   ` Alexander Potapenko
2021-10-03 17:19   ` Andrey Konovalov
2021-09-30  7:11 ` [PATCH v4 08/11] extable: Use is_kernel_text() helper Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 09/11] powerpc/mm: Use core_kernel_text() helper Kefeng Wang
2021-09-30  7:11 ` [PATCH v4 10/11] microblaze: Use is_kernel_text() helper Kefeng Wang
2021-09-30 10:13   ` Michal Simek
2021-09-30  7:11 ` [PATCH v4 11/11] alpha: " Kefeng Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).