)]}'
{
  "commit": "ef777ef05ebcc5ea5393b4bd5af6fc3ad1b3aec9",
  "tree": "0ab7211d338ecb6195d0b5ac916af7345fb5356a",
  "parents": [
    "eddd14da6bede7b3f321fa6412ab7836b0a1ecfe"
  ],
  "author": {
    "name": "Sasha Levin",
    "email": "sashal@kernel.org",
    "time": "Fri May 29 09:15:29 2026 -0400"
  },
  "committer": {
    "name": "Sasha Levin",
    "email": "sashal@kernel.org",
    "time": "Wed Oct 07 18:26:44 2026 -0400"
  },
  "message": "kernel/api: add syscall enter/exit tracepoints\n\nAdd two tracepoints to the CONFIG_KAPI_RUNTIME_CHECKS syscall validation\npath so the framework\u0027s behavior can be observed without the noise and\nloss of pr_warn_ratelimited():\n\n  kapi_syscall_enter - the spec name, the raw argument values, and a\n                       rendered \"name\u003dvalue\" list of the specified\n                       parameters (pointer-like values in hex, signed\n                       integers and file descriptors in decimal)\n  kapi_syscall_exit  - the spec name, the return value, and whether it\n                       matched the specification (spec_match)\n\nBoth fire only for syscalls that have a KAPI specification and live\ninside the existing CONFIG_KAPI_RUNTIME_CHECKS region, so they exist\nexactly when the runtime checks do; they compile to no-ops without\nCONFIG_TRACEPOINTS and stay dormant until enabled. The parameter list\nis rendered only when the enter tracepoint is enabled.\n\nkapi_syscall_exit is also emitted on the parameter-validation rejection\npath -- where the validator returns -EINVAL and the real handler is\nskipped -- with spec_match\u003d0, so every kapi_syscall_enter has a matching\nexit.\n\nAssisted-by: LLM\nSigned-off-by: Sasha Levin \u003csashal@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "95b72060f8ef8a3cb6f110a4f372d9d19f1716e6",
      "old_mode": 33188,
      "old_path": "Documentation/dev-tools/kernel-api-spec.rst",
      "new_id": "818c9b966a0c0d3513e48e3cc38744214584b41e",
      "new_mode": 33188,
      "new_path": "Documentation/dev-tools/kernel-api-spec.rst"
    },
    {
      "type": "modify",
      "old_id": "1d9e55b6bf5ffb4394b1a1b606f38eb2f307d64f",
      "old_mode": 33188,
      "old_path": "MAINTAINERS",
      "new_id": "20020705921a645128ef180c3544649adb09fe63",
      "new_mode": 33188,
      "new_path": "MAINTAINERS"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "47828f333882854d87ad4c1169bc4018ece400b9",
      "new_mode": 33188,
      "new_path": "include/trace/events/kapi.h"
    },
    {
      "type": "modify",
      "old_id": "c3b220104c04bea8b0cdd3b982ca063b168bd625",
      "old_mode": 33188,
      "old_path": "kernel/api/kernel_api_spec.c",
      "new_id": "993674ce67789357ed60b62210017eeb169035c5",
      "new_mode": 33188,
      "new_path": "kernel/api/kernel_api_spec.c"
    }
  ]
}
