linux/Documentation/process
Linus Torvalds 958f7fb68c kmalloc_obj branch for v7.0-rc1
- Introduce kmalloc_obj*() family of type-based allocator APIs
 
 - checkpatch: Suggest kmalloc_obj family for sizeof allocations
 
 - coccinelle: Add kmalloc_objs conversion script
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQRSPkdeREjth1dHnSE2KwveOeQkuwUCaYosbAAKCRA2KwveOeQk
 u+pzAPwK+re4aOGay+muhKaA5omh0wFz20a/BxjJVcDfp3qBcwEAhG7YGZ2cITH9
 7dFgStecoHtvg8eObMq+W4XVwWdmeQQ=
 =52iK
 -----END PGP SIGNATURE-----

Merge tag 'kmalloc_obj-v7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux

Pull kmalloc_obj updates from Kees Cook:
 "Introduce the kmalloc_obj* family of APIs for switching to type-based
  kmalloc allocations, away from purely size-based allocations.
  Discussed on lkml, with you, and at Linux Plumbers. It's been in -next
  for the entire dev cycle.

  Before the merge window closes, I'd like to send the treewide
  change (generated from the Coccinelle script included here), which
  mechanically converts almost 20k callsites from kmalloc* to
  kmalloc_obj*:

   8007 files changed, 19980 insertions(+), 20838 deletions(-)

  This change needed fixes for mismatched types (since now the return
  type from allocations is a pointer to the requested type, not "void
  *"), and I've been fixing these over the last 4 releases.

  These fixes have mostly been trivial mismatches with const qualifiers
  or accidentally identical sizes (e.g. same object size: "struct kvec"
  vs "struct iovec", or differing pointers to pointers), but I did catch
  one case of too-small allocation.

  Summary:

   - Introduce kmalloc_obj*() family of type-based allocator APIs

   - checkpatch: Suggest kmalloc_obj family for sizeof allocations

   - coccinelle: Add kmalloc_objs conversion script"

* tag 'kmalloc_obj-v7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
  coccinelle: Add kmalloc_objs conversion script
  slab: Introduce kmalloc_flex() and family
  compiler_types: Introduce __flex_counter() and family
  checkpatch: Suggest kmalloc_obj family for sizeof allocations
  slab: Introduce kmalloc_obj() and family
2026-02-10 09:11:21 -08:00
..
debugging Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
1.Intro.rst Doc: correct spelling and wording mistakes 2026-01-06 14:39:58 -07:00
2.Process.rst Doc: correct spelling and wording mistakes 2026-01-06 14:39:58 -07:00
3.Early-stage.rst Documentation/process: use scripts/get_maintainer.pl on patches 2022-05-09 16:12:16 -06:00
4.Coding.rst Doc: correct spelling and wording mistakes 2026-01-06 14:39:58 -07:00
5.Posting.rst doc: development-process: add notice on testing 2026-02-02 10:02:05 -07:00
6.Followthrough.rst docs: remove the tips on how to submit patches from MAINTAINERS 2023-07-03 08:35:23 -06:00
7.AdvancedTopics.rst Doc: correct spelling and wording mistakes 2026-01-06 14:39:58 -07:00
8.Conclusion.rst docs: process: remove outdated submitting-drivers.rst 2022-07-14 15:03:57 -06:00
adding-syscalls.rst docs: fix 're-use' -> 'reuse' in documentation 2026-02-02 09:54:15 -07:00
applying-patches.rst Documentation: describe how to apply incremental stable patches 2022-03-09 16:29:44 -07:00
backporting.rst docs: fix typos and whitespace in Documentation/process/backporting.rst 2024-11-12 13:22:16 -07:00
botching-up-ioctls.rst Documentation: Fix typos 2023-08-18 11:29:03 -06:00
changes.rst Documentation: Fix typos and grammatical errors 2026-01-16 11:13:45 -07:00
code-of-conduct-interpretation.rst Documentation/CoC: Spell out the TAB role in enforcement decisions 2025-03-12 16:31:48 -06:00
code-of-conduct.rst Code of Conduct: Change the contact email address 2018-10-22 07:33:36 +01:00
coding-assistants.rst docs: add AI Coding Assistants documentation 2026-01-06 14:55:06 -07:00
coding-style.rst docs: kdoc: move kernel-doc to tools/docs 2026-01-20 15:31:06 -07:00
conclave.rst Documentation: Project continuity 2026-01-24 16:16:47 -08:00
contribution-maturity-model.rst Documentation/process: Add Linux Kernel Contribution Maturity Model 2023-03-14 12:22:59 -06:00
cve.rst Documentation: Document the Linux Kernel CVE process 2024-02-17 14:46:39 +01:00
deprecated.rst slab: Introduce kmalloc_flex() and family 2026-01-14 14:43:01 -08:00
development-process.rst docs: use toctree :caption: and move introduction 2023-11-17 13:05:26 -07:00
email-clients.rst docs: process: email-client: add Thunderbird "Toggle Line Wrap" extension 2026-01-06 14:38:28 -07:00
embargoed-hardware-issues.rst Documentation: embargoed-hardware-issues.rst: Add myself for Power 2025-06-18 16:38:50 +02:00
generated-content.rst Documentation: Provide guidelines for tool-generated content 2026-01-20 14:51:22 -07:00
handling-regressions.rst docs: handling-regressions.rst: recommend using "Closes:" tags 2024-05-30 13:56:06 -06:00
howto.rst Documentation: fix links to mailing list services 2024-07-03 16:52:54 -06:00
index.rst A slightly calmer cycle for docs this time around, though there is still a 2026-02-09 20:53:18 -08:00
kernel-docs.rst kernel-docs: Add book to process/kernel-docs.rst 2025-02-18 13:24:01 -07:00
kernel-driver-statement.rst doc:it_IT: add some process/* translations 2018-11-20 09:11:12 -07:00
kernel-enforcement-statement.rst Documentation: drop optional BOMs 2021-05-10 15:17:34 -06:00
license-rules.rst docs/licensing: Clarify wording about "GPL" and "Proprietary" 2024-11-22 10:44:25 -07:00
maintainer-handbooks.rst Documentation/process: maintainer-soc: add clean platforms profile 2023-08-12 14:04:51 +02:00
maintainer-kvm-x86.rst Documentation/process: Add a maintainer handbook for KVM x86 2023-06-22 14:25:38 -07:00
maintainer-netdev.rst docs: netdev: refine 15-patch limit 2026-01-17 15:59:25 -08:00
maintainer-pgp-guide.rst Documentation: Improve wording on requirements for a free Nitrokey 2025-12-22 15:30:51 -07:00
maintainer-soc-clean-dts.rst docs: process: maintainer-soc-clean-dts: linux-next is decisive 2025-02-26 13:15:57 -06:00
maintainer-soc.rst Documentation/process: maintainer-soc: Mark 'make' as commands 2026-01-07 17:47:43 +01:00
maintainer-tip.rst Align git commit ID abbreviation guidelines and checks 2024-12-30 11:40:45 -07:00
maintainers.rst doc-rst: Programmatically render MAINTAINERS into ReST 2019-10-02 10:03:17 -06:00
management-style.rst Documentation: management-style: Fix formatting of emphsized word 2020-03-10 11:32:34 -06:00
programming-language.rst docs: programming-language: add Rust programming language section 2023-03-07 10:24:40 -07:00
researcher-guidelines.rst Documentation: update mailing list addresses 2024-02-21 13:44:21 -07:00
security-bugs.rst Documentation: insist on the plain-text requirement for security reports 2025-12-22 15:32:03 -07:00
stable-api-nonsense.rst doc: process: GPL -> GPL-compatible 2019-02-01 16:19:11 -07:00
stable-kernel-rules.rst docs: stable-kernel-rules: fix typo sent->send 2024-05-02 10:20:27 -06:00
submit-checklist.rst docs/.../submit-checklist: Use Documentation/admin-guide/abi.rst for cross-ref of README 2025-03-12 16:41:56 -06:00
submitting-patches.rst docs: submitting-patches: suggest adding previous version links 2026-01-06 14:52:48 -07:00
volatile-considered-harmful.rst Replace HTTP links with HTTPS ones: documentation 2020-06-08 09:30:19 -06:00