linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: Kees Cook <kees@kernel.org>
Cc: corbet@lwn.net, linux-doc@vger.kernel.org,
	workflows@vger.kernel.org, josh@joshtriplett.org,
	konstantin@linuxfoundation.org, linux-kernel@vger.kernel.org,
	rostedt@goodmis.org
Subject: Re: [PATCH 2/4] agents: add core development references
Date: Wed, 30 Jul 2025 12:25:41 -0400	[thread overview]
Message-ID: <aIpHhR8AhPJZE2Rp@lappy> (raw)
In-Reply-To: <202507272310.FCB96F5E93@keescook>

On Sun, Jul 27, 2025 at 11:18:14PM -0700, Kees Cook wrote:
>I think the above list is perfect contents for the README. Yes, please
>make that an entry point, or point to some other .rst entry point that
>will have a list of roles like that, with some common starting points.
>And yes, a line for agents in there seems fine. Maybe "If you are a
>coding agent, also see ... for agent-specific details."

What about something like below for README:

Linux kernel
============

The Linux kernel is the core of any Linux operating system. It manages hardware,
system resources, and provides the fundamental services for all other software.

Quick Start
-----------

* Report a bug: See Documentation/admin-guide/reporting-issues.rst
* Get the latest kernel: https://kernel.org
* Build the kernel: make defconfig && make -j$(nproc)
* Join the community: https://lore.kernel.org/

Essential Documentation
-----------------------

All users should be familiar with:

* Code of Conduct: Documentation/process/code-of-conduct.rst
* License: COPYING (GPLv2)

Documentation can be built with make htmldocs or viewed online at:
https://www.kernel.org/doc/html/latest/


Who Are You?
============

Find your role below:

* New Kernel Developer - Getting started with kernel development
* Academic Researcher - Studying kernel internals and architecture
* Security Expert - Hardening and vulnerability analysis
* Backport/Maintenance Engineer - Maintaining stable kernels
* System Administrator - Configuring and troubleshooting
* Maintainer - Leading subsystems and reviewing patches
* Hardware Vendor - Writing drivers for new hardware
* Distribution Maintainer - Packaging kernels for distros
* Agentic Coding - AI assistants working with kernel code


For Specific Users
==================

New Kernel Developer
--------------------

Welcome! Start your kernel development journey here:

* Getting Started: Documentation/process/development-process.rst
* Your First Patch: Documentation/process/submitting-patches.rst
* Coding Style: Documentation/process/coding-style.rst
* Build System: Documentation/kbuild/index.rst
* Development Tools: Documentation/dev-tools/index.rst
* Kernel Hacking Guide: Documentation/kernel-hacking/hacking.rst
* Core APIs: Documentation/core-api/index.rst

Academic Researcher
-------------------

Explore the kernel's architecture and internals:

* Researcher Guidelines: Documentation/process/researcher-guidelines.rst
* Memory Management: Documentation/mm/index.rst
* Scheduler: Documentation/scheduler/index.rst
* Networking Stack: Documentation/networking/index.rst
* Filesystems: Documentation/filesystems/index.rst
* RCU (Read-Copy Update): Documentation/RCU/index.rst
* Locking Primitives: Documentation/locking/index.rst
* Power Management: Documentation/power/index.rst

Security Expert
---------------

Security documentation and hardening guides:

* Security Documentation: Documentation/security/index.rst
* LSM Development: Documentation/security/lsm-development.rst
* Self Protection: Documentation/security/self-protection.rst
* Reporting Vulnerabilities: Documentation/process/security-bugs.rst
* CVE Procedures: Documentation/process/cve.rst
* Embargoed Hardware Issues: Documentation/process/embargoed-hardware-issues.rst
* Security Features: Documentation/features/seccomp/index.rst

Backport/Maintenance Engineer
-----------------------------

Maintain and stabilize kernel versions:

* Stable Kernel Rules: Documentation/process/stable-kernel-rules.rst
* Backporting Guide: Documentation/process/backporting.rst
* Applying Patches: Documentation/process/applying-patches.rst
* Subsystem Profile: Documentation/maintainer/maintainer-entry-profile.rst
* Git for Maintainers: Documentation/maintainer/configure-git.rst

System Administrator
--------------------

Configure, tune, and troubleshoot Linux systems:

* Admin Guide: Documentation/admin-guide/index.rst
* Kernel Parameters: Documentation/admin-guide/kernel-parameters.rst
* Sysctl Tuning: Documentation/admin-guide/sysctl/index.rst
* Tracing/Debugging: Documentation/trace/index.rst
* Performance Security: Documentation/admin-guide/perf-security.rst
* Hardware Monitoring: Documentation/hwmon/index.rst

Maintainer
----------

Lead kernel subsystems and manage contributions:

* Maintainer Handbook: Documentation/maintainer/index.rst
* Pull Requests: Documentation/maintainer/pull-requests.rst
* Managing Patches: Documentation/maintainer/modifying-patches.rst
* Rebasing and Merging: Documentation/maintainer/rebasing-and-merging.rst
* Development Process: Documentation/process/maintainer-handbooks.rst
* Maintainer Entry Profile: Documentation/maintainer/maintainer-entry-profile.rst
* Git Configuration: Documentation/maintainer/configure-git.rst

Hardware Vendor
---------------

Write drivers and support new hardware:

* Driver API Guide: Documentation/driver-api/index.rst
* Driver Model: Documentation/driver-api/driver-model/driver.rst
* Device Drivers: Documentation/driver-api/infrastructure.rst
* Bus Types: Documentation/driver-api/buses.rst
* Device Tree Bindings: Documentation/devicetree/bindings/
* Power Management: Documentation/driver-api/pm/index.rst
* DMA API: Documentation/core-api/dma-api.rst

Distribution Maintainer
-----------------------

Package and distribute the kernel:

* Stable Kernel Rules: Documentation/process/stable-kernel-rules.rst
* ABI Documentation: Documentation/ABI/README
* Kernel Configuration: Documentation/kbuild/kconfig.rst
* Module Signing: Documentation/admin-guide/module-signing.rst
* Kernel Parameters: Documentation/admin-guide/kernel-parameters.rst
* Tainted Kernels: Documentation/admin-guide/tainted-kernels.rst

Agentic Coding
--------------

Essential guidelines for AI coding assistants:

* How to Do Kernel Development: Documentation/process/howto.rst
* Coding Style: Documentation/process/coding-style.rst
* Submitting Patches: Documentation/process/submitting-patches.rst
* Submit Checklist: Documentation/process/submit-checklist.rst
* Programming Language: Documentation/process/programming-language.rst

Critical Requirements:

* License: ALL code MUST be GPL-2.0 only (see COPYING)
* Signed-off-by: Agents MUST NOT add Signed-off-by tags
   (Only humans can legally certify code submission rights)
* Attribution: Agents MUST add Co-developed-by tag:
   Co-developed-by: $AGENT_NAME $AGENT_MODEL $AGENT_VERSION
   Examples:
   - Co-developed-by: Claude claude-3-opus-20240229
   - Co-developed-by: GitHub-Copilot GPT-4 v1.0.0


Communication and Support
=========================

* Mailing Lists: https://lore.kernel.org/
* IRC: #kernelnewbies on irc.oftc.net
* Bugzilla: https://bugzilla.kernel.org/
* MAINTAINERS file: Lists subsystem maintainers and mailing lists

-- 
Thanks,
Sasha

  parent reply	other threads:[~2025-07-30 16:25 UTC|newest]

Thread overview: 101+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-27 19:57 [PATCH 0/4] Add agent coding assistant configuration to Linux kernel Sasha Levin
2025-07-27 19:57 ` [PATCH 1/4] agents: add unified agent coding assistant configuration Sasha Levin
2025-07-28  2:37   ` Kees Cook
2025-07-28  4:43     ` Sasha Levin
2025-07-28  5:16       ` Kees Cook
2025-07-28  5:39         ` Sasha Levin
2025-07-30 22:06   ` Kevin Hilman
2025-07-30 23:47     ` Sasha Levin
2025-08-01 20:53     ` Rob Herring
2025-08-08 18:07       ` Kevin Hilman
2025-07-27 19:58 ` [PATCH 2/4] agents: add core development references Sasha Levin
2025-07-28  2:39   ` Kees Cook
2025-07-28  5:00     ` Sasha Levin
2025-07-28  5:10       ` Kees Cook
2025-07-28  5:59         ` Sasha Levin
2025-07-28  6:18           ` Kees Cook
2025-07-28 12:35             ` Sasha Levin
2025-07-30 16:25             ` Sasha Levin [this message]
2025-07-30 17:35               ` Al Viro
2025-07-30 18:29                 ` Sasha Levin
2025-07-30 18:18               ` Matthew Wilcox
2025-07-30 18:41                 ` Sasha Levin
2025-07-28  4:24   ` Greg KH
2025-07-28  4:52     ` Sasha Levin
2025-07-28  5:02       ` Kees Cook
2025-07-27 19:58 ` [PATCH 3/4] agents: add coding style documentation and rules Sasha Levin
2025-07-28  2:40   ` Kees Cook
2025-07-28  5:10     ` Sasha Levin
2025-07-28  5:21       ` Kees Cook
2025-07-28  6:03         ` Sasha Levin
2025-07-30  9:31           ` Krzysztof Kozlowski
2025-07-30 14:48             ` Jakub Kicinski
2025-07-30 15:10             ` Steven Rostedt
2025-07-27 19:58 ` [PATCH 4/4] agents: add legal requirements and agent attribution guidelines Sasha Levin
2025-07-28  2:43   ` Kees Cook
2025-08-05 22:08   ` Jeff Johnson
2025-08-05 23:11     ` Laurent Pinchart
2025-08-05 23:33       ` Sasha Levin
2025-08-06 14:12   ` Konstantin Ryabitsev
2025-08-06 21:53     ` Sasha Levin
2025-07-28  7:58 ` [PATCH 0/4] Add agent coding assistant configuration to Linux kernel Vlastimil Babka
2025-07-28  9:27   ` David Hildenbrand
2025-07-28 10:37     ` Greg KH
2025-07-28 10:47       ` David Hildenbrand
2025-07-28 13:05         ` Sasha Levin
2025-08-04  9:23           ` Michal Hocko
2025-08-04  9:41             ` Michal Hocko
2025-08-04 13:25             ` Sasha Levin
2025-08-04 22:03               ` Jiri Kosina
2025-08-04 22:14                 ` Steven Rostedt
2025-08-04 22:30                   ` Jiri Kosina
2025-08-04 22:53                   ` dan.j.williams
2025-08-04 23:30                     ` Sasha Levin
2025-08-04 23:39                       ` Laurent Pinchart
2025-08-05 13:29                         ` Steven Rostedt
2025-07-28 11:57   ` Sasha Levin
2025-07-28  8:42 ` Lorenzo Stoakes
2025-07-28 10:35   ` Greg KH
2025-07-28 10:52     ` Lorenzo Stoakes
2025-07-28 12:45       ` Sasha Levin
2025-07-28 13:13         ` Lorenzo Stoakes
2025-07-28 13:23           ` Sasha Levin
2025-07-28 13:28             ` Lorenzo Stoakes
2025-07-30 15:27       ` Steven Rostedt
2025-07-30 15:34         ` Lorenzo Stoakes
2025-07-30 16:18           ` Steven Rostedt
2025-07-30 16:33             ` Mauro Carvalho Chehab
2025-07-30 16:36             ` Sasha Levin
2025-07-30 16:59               ` Lorenzo Stoakes
2025-07-30 17:12                 ` Sasha Levin
2025-07-30 17:23                   ` Lorenzo Stoakes
2025-07-30 17:32                     ` Steven Rostedt
2025-07-30 18:03                       ` Sasha Levin
2025-07-30 18:18                         ` Lorenzo Stoakes
2025-07-30 18:04                       ` Lorenzo Stoakes
2025-07-30 19:16                         ` Mark Brown
2025-07-30 17:25                   ` Steven Rostedt
2025-07-30 17:34                 ` Mark Brown
2025-07-30 17:36                 ` Kees Cook
2025-08-04 10:20                 ` Jiri Kosina
2025-07-30 17:05               ` Steven Rostedt
2025-07-30 17:46                 ` Sasha Levin
2025-07-30 17:59                   ` Al Viro
2025-07-30 18:10                     ` Sasha Levin
2025-07-30 18:24                       ` Lorenzo Stoakes
2025-07-30 18:59                         ` Sasha Levin
2025-07-30 19:10                     ` Theodore Ts'o
2025-07-30 19:40                       ` Steven Rostedt
2025-07-30 19:51                       ` Al Viro
2025-07-30 19:27                   ` Steven Rostedt
2025-07-31  0:02                   ` Mauro Carvalho Chehab
2025-07-30 16:40             ` Dr. David Alan Gilbert
2025-07-30 17:10               ` Lorenzo Stoakes
2025-07-30 17:20                 ` Steven Rostedt
2025-07-30 17:33                   ` Lorenzo Stoakes
2025-07-30 17:12               ` Steven Rostedt
2025-07-30 17:39                 ` Dr. David Alan Gilbert
2025-07-30 17:51               ` Kees Cook
2025-07-30 16:58             ` Lorenzo Stoakes
2025-07-28 10:56     ` Laurent Pinchart
2025-08-12 18:13 ` Nicolas Frattaroli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aIpHhR8AhPJZE2Rp@lappy \
    --to=sashal@kernel.org \
    --cc=corbet@lwn.net \
    --cc=josh@joshtriplett.org \
    --cc=kees@kernel.org \
    --cc=konstantin@linuxfoundation.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    --cc=workflows@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).