[Concept,00/11] ext4l: Add Linux compatibility headers

Message ID 20251216211817.4131167-1-sjg@u-boot.org
Headers
Series ext4l: Add Linux compatibility headers |

Message

Simon Glass Dec. 16, 2025, 9:18 p.m. UTC
  From: Simon Glass <simon.glass@canonical.com>

This series extracts Linux kernel compatibility declarations from
include/linux/compat.h into their own header files, matching the
Linux kernel's organization. This makes it easier to port Linux
filesystem code to U-Boot and keeps the compatibility layer
maintainable.

The headers come from Linux v6.18

Headers added:
- export.h: EXPORT_SYMBOL macros
- stddef.h: sizeof_field() macro
- uaccess.h: copy_to/from_user stubs
- capability.h, cred.h, file.h, path.h, security.h, seq_file.h
- freezer.h: process freezer stubs
- slab.h, vmalloc.h: memory allocation
- module.h: kernel module stubs
- init.h: initcall macros
- kthread.h: kernel thread stubs
- timer.h, workqueue.h: timer and workqueue stubs
- sched.h, wait.h, rwsem.h: scheduler and synchronization
- percpu_counter.h, random.h, quotaops.h, part_stat.h, prefetch.h,
  sort.h, swap.h

All headers include appropriate copyright/author information from
the original Linux sources.


Simon Glass (11):
  ext4l: Extract export.h declarations into their own file
  ext4l: Provide sizeof_field() in linux/stddef.h
  ext4l: Extract uaccess.h declarations into their own file
  ext4l: Add some stub headers for Linux code
  ext4l: Extract freezer.h declarations into their own file
  ext4l: Extract alloc declarations into their own file
  ext4l: Extract module declarations into their own file
  ext4l: Extract initcall declarations into their own file
  ext4l: Extract kthread declarations into their own file
  ext4l: Extract timer declarations into their own file
  ext4l: Add stub versions various other linux headers

 include/linux/capability.h     |  27 +++++++
 include/linux/compat.h         | 143 ++++-----------------------------
 include/linux/cred.h           |  53 ++++++++++++
 include/linux/export.h         |  14 ++++
 include/linux/file.h           |  29 +++++++
 include/linux/freezer.h        |  17 ++++
 include/linux/init.h           |  49 +++++++++++
 include/linux/kthread.h        |  28 +++++++
 include/linux/module.h         |  37 +++++++++
 include/linux/part_stat.h      |  16 ++++
 include/linux/path.h           |  13 +++
 include/linux/percpu_counter.h |  80 ++++++++++++++++++
 include/linux/prefetch.h       |  17 ++++
 include/linux/quotaops.h       |  38 +++++++++
 include/linux/random.h         |  15 ++++
 include/linux/rwsem.h          |  28 +++++++
 include/linux/sched.h          |  36 +++++++++
 include/linux/security.h       |  39 +++++++++
 include/linux/seq_file.h       |  18 +++++
 include/linux/slab.h           |  79 ++++++++++++++++++
 include/linux/sort.h           |  19 +++++
 include/linux/stddef.h         |   8 ++
 include/linux/swap.h           |  18 +++++
 include/linux/timer.h          |  30 +++++++
 include/linux/uaccess.h        |  32 ++++++++
 include/linux/vmalloc.h        |  24 ++++++
 include/linux/wait.h           |  31 +++++++
 include/linux/workqueue.h      |  37 +++++++++
 28 files changed, 849 insertions(+), 126 deletions(-)
 create mode 100644 include/linux/capability.h
 create mode 100644 include/linux/cred.h
 create mode 100644 include/linux/export.h
 create mode 100644 include/linux/file.h
 create mode 100644 include/linux/freezer.h
 create mode 100644 include/linux/init.h
 create mode 100644 include/linux/kthread.h
 create mode 100644 include/linux/module.h
 create mode 100644 include/linux/part_stat.h
 create mode 100644 include/linux/path.h
 create mode 100644 include/linux/percpu_counter.h
 create mode 100644 include/linux/prefetch.h
 create mode 100644 include/linux/quotaops.h
 create mode 100644 include/linux/random.h
 create mode 100644 include/linux/rwsem.h
 create mode 100644 include/linux/sched.h
 create mode 100644 include/linux/security.h
 create mode 100644 include/linux/seq_file.h
 create mode 100644 include/linux/slab.h
 create mode 100644 include/linux/sort.h
 create mode 100644 include/linux/swap.h
 create mode 100644 include/linux/timer.h
 create mode 100644 include/linux/uaccess.h
 create mode 100644 include/linux/vmalloc.h
 create mode 100644 include/linux/wait.h
 create mode 100644 include/linux/workqueue.h