[PATCH 0/8] include: list: remove dependency on linux/kernel.h

Ahmad Fatoum a.fatoum at pengutronix.de
Tue Jul 16 04:58:26 PDT 2024


<linux/kernel.h> defines a lot of things that go beyond what's needed for
<linux/list.h>. The only thing actually needed for the list
implementation is <linux/container_of.h>, so we should just include that
directly.

This is also what Linux has been doing for a while, but it breaks the
build of a number of source files, which are addressed in this series.

Ahmad Fatoum (8):
  regmap-mmio: don't call kfree on non kmalloc allocated buffers
  treewide: fix dependency on indirectly included linux/kernel.h
  stringlist: make header self-contained
  module: retire MODULE_SYMBOL_PREFIX
  include: move MODULE_* macro definitions into own header
  include: asm-generic/bug: break recursive dependency
  include: linux/kernel.h: split off into multiple headers
  include: list: replace full kernel.h inclusion with smaller
    container_of.h

 arch/arm/lib32/io.c                  |   1 +
 arch/mips/include/asm/dma.h          |   1 +
 commands/bthread.c                   |   1 +
 commands/mmc.c                       |   1 +
 common/module.c                      |   4 +-
 drivers/base/regmap/regmap-mmio.c    |   5 +-
 drivers/clk/at91/at91sam9260.c       |   1 +
 drivers/clk/at91/at91sam9g45.c       |   1 +
 drivers/clk/at91/at91sam9n12.c       |   1 +
 drivers/clk/at91/at91sam9rl.c        |   1 +
 drivers/clk/at91/at91sam9x5.c        |   1 +
 drivers/clk/at91/clk-audio-pll.c     |   1 +
 drivers/clk/at91/clk-generated.c     |   1 +
 drivers/clk/at91/clk-master.c        |   1 +
 drivers/clk/at91/clk-pll.c           |   1 +
 drivers/clk/at91/clk-usb.c           |   1 +
 drivers/clk/at91/sama5d2.c           |   1 +
 drivers/clk/at91/sama5d3.c           |   1 +
 drivers/clk/at91/sama5d4.c           |   1 +
 drivers/clk/rockchip/rst-rk3588.c    |   1 +
 drivers/soc/sifive/sifive_l2_cache.c |   2 +
 drivers/usb/misc/onboard_usb_hub.c   |   1 +
 include/asm-generic/bug.h            |   1 -
 include/driver.h                     |   1 +
 include/linux/array_size.h           |  14 ++
 include/linux/barebox-wrapper.h      |  12 +-
 include/linux/export.h               |   4 +-
 include/linux/hex.h                  |  34 ++++
 include/linux/kernel.h               | 234 +--------------------------
 include/linux/kstrtox.h              | 123 ++++++++++++++
 include/linux/list.h                 |   2 +-
 include/linux/math.h                 |  83 ++++++++++
 include/linux/module.h               |  17 ++
 include/linux/mtd/nand.h             |   1 +
 include/linux/wordpart.h             |  49 ++++++
 include/mach/mvebu/debug_ll.h        |   1 +
 include/module.h                     |   5 +-
 include/stringlist.h                 |   1 +
 lib/idr.c                            |   2 +
 39 files changed, 361 insertions(+), 253 deletions(-)
 create mode 100644 include/linux/array_size.h
 create mode 100644 include/linux/hex.h
 create mode 100644 include/linux/kstrtox.h
 create mode 100644 include/linux/math.h
 create mode 100644 include/linux/module.h
 create mode 100644 include/linux/wordpart.h

-- 
2.39.2




More information about the barebox mailing list