)]}'
{
  "log": [
    {
      "commit": "2e6b8da9457170363f0929459e2120ecf2c7d55f",
      "tree": "4de239ecee23a9830c9e28a4dceb9728c1e64460",
      "parents": [
        "e8a492ea68466401c289553f0c8836e575285788"
      ],
      "author": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Tue Oct 20 20:43:21 2026 +0300"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:21 2026 +0300"
      },
      "message": "KEYS: Verify the key identity in __key_unlink_begin\n\nWhen two keys have identical type and description, linking the second key\nreplaces the first in a keyring. However, attempting to unlink the first\nkey (no longer in the keyring) unlinks the second key.\n\nThis happens because __key_unlink_begin() calls assoc_array_delete() with\n\u0026key-\u003eindex_key, matching only on type and description rather than the\nkey\u0027s identity.\n\nExample:\n\n  keyctl new_session \u003e/dev/null\n  keyctl newring ring_a @s\n  keyctl newring ring_b @s\n  A\u003d$(keyctl add user A ss %:ring_a)\n  B\u003d$(keyctl add user A qq %:ring_b)\n  keyctl newring R @s\n  keyctl link $A %:R\n  keyctl link $B %:R\n  keyctl unlink $A %:R\n  keyctl show\n\nVerify the key identity before unlinking, and return -ENOENT on mismatch,\ninstead of unlinking the key with the wrong identity.\n\nCc: stable@vger.kernel.org\nAssisted-by: LLM\nFixes: b2a4df200d57 (\"KEYS: Expand the capacity of a keyring\")\nReviewed-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: Eric Biggers \u003cebiggers@kernel.org\u003e\nLink: https://lore.kernel.org/r/20261020174325.2229448-4-jarkko@kernel.org\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "e8a492ea68466401c289553f0c8836e575285788",
      "tree": "31253ae8732c291dda9c49524a09f02321b57349",
      "parents": [
        "bb24e4ed45e2ace11672f7c197c8804d41488a6f"
      ],
      "author": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Tue Oct 20 20:43:20 2026 +0300"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:21 2026 +0300"
      },
      "message": "KEYS: Reject descriptions larger than KEY_MAX_DESC_SIZE\n\nKEY_MAX_DESC_SIZE includes the trailing NULL character. Descriptions\ngenerated from payloads and in-kernel paths bypass the userspace limit.\n\nReject descriptions at or above KEY_MAX_DESC_SIZE with -EINVAL at the\nfollowing sites:\n\n- key_alloc(): before quota calculation\n- __key_create_or_update(): before key_set_index_key()\n- keyring_search(): before match_preparse\n- request_key_and_link(): before match_preparse\n- request_key_rcu(): before check_cached_key()\n\nCc: stable@vger.kernel.org\nAssisted-by: LLM\nFixes: f771fde82051 (\"keys: Simplify key description management\")\nReviewed-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: Eric Biggers \u003cebiggers@kernel.org\u003e\nLink: https://lore.kernel.org/r/20261020174325.2229448-3-jarkko@kernel.org\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "bb24e4ed45e2ace11672f7c197c8804d41488a6f",
      "tree": "eb5e3f079e4a4b53cbb58e623973da1d2c0005ab",
      "parents": [
        "071aa806f00cf2948ce8082102d5f64515f53215"
      ],
      "author": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Tue Oct 20 20:43:19 2026 +0300"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:21 2026 +0300"
      },
      "message": "KEYS: Expand key-\u003e{datalen,quotalen} to unsigned int\n\nIn key_alloc() and key_payload_reserve(), key-\u003equotalen and key-\u003edatalen\ncan receive values larger than USHRT_MAX.\n\nExample:\n\n  keyctl new_session \u003e/dev/null\n  owner\u003d$(keyctl newring owner @s)\n  keeper\u003d$(keyctl newring keeper @s)\n\n  for ((i\u003d0; i\u003c16384; i++)); do\n      key\u003d$(keyctl add user \"k$i\" x \"$keeper\")\n      keyctl link \"$key\" \"$owner\"\n  done\n\n  awk -v uid\u003d\"$(id -u):\" \u0027$1 \u003d\u003d uid {print $NF}\u0027 /proc/key-users\n  keyctl clear \"$owner\"\n  awk -v uid\u003d\"$(id -u):\" \u0027$1 \u003d\u003d uid {print $NF}\u0027 /proc/key-users\n\nBecause key-\u003edatalen wraps around 65535, the quota refunded upon clearing\nis truncated, causing quota bytes to leak in /proc/key-users.\n\nChange the types of key-\u003edatalen and key-\u003equotalen from unsigned short to\nunsigned int so that they can carry the full payload length without\ntruncation.\n\nCc: stable@vger.kernel.org\nAssisted-by: LLM\nFixes: 1da177e4c3f4 (\"Linux-2.6.12-rc2\")\nReviewed-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: Eric Biggers \u003cebiggers@kernel.org\u003e\nLink: https://lore.kernel.org/r/20261020174325.2229448-2-jarkko@kernel.org\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "071aa806f00cf2948ce8082102d5f64515f53215",
      "tree": "537de1e53054c2de368d37722fa8f65f42c056d9",
      "parents": [
        "03f05257358dabb673ed21c64b0217442a55bfe2"
      ],
      "author": {
        "name": "Yuqi Xu",
        "email": "xuyuqiabc@gmail.com",
        "time": "Mon Sep 28 16:27:00 2026 +0800"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:21 2026 +0300"
      },
      "message": "tpm: reject duplicate PCR banks in tpm2_get_pcr_allocation\n\nThe TPM2_CAP_PCRS response is external input. tpm2_get_pcr_allocation()\nadds every active selection to allocated_banks, while\ntpm_sysfs_add_device() has one group slot per distinct hash algorithm.\nEight duplicate selections can therefore write past chip-\u003egroups[].\n\nThe TPM protocol does not allow a hash algorithm to appear twice in\nthis capability response. Treat a duplicate as a broken TPM and return\n-EIO so the chip is not enabled, instead of silently dropping the\nextra selection.\n\nAssisted-by: LLM\nSigned-off-by: Yuqi Xu \u003cxuyuqiabc@gmail.com\u003e\nReviewed-by: Ren Wei \u003cweir@nebusec.ai\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/9d27c4513a3c6fc32f9574ba192cd3bfcb2bac98.1790568982.git.xuyuqiabc@gmail.com\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "03f05257358dabb673ed21c64b0217442a55bfe2",
      "tree": "aa640b8e0e6c171842699b28e29ae04b63906210",
      "parents": [
        "fc0ddb3174b06800d8414d87e551eb60c36d1f38"
      ],
      "author": {
        "name": "Li Jun",
        "email": "lijun01@kylinos.cn",
        "time": "Wed Sep 09 16:24:59 2026 +0800"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:21 2026 +0300"
      },
      "message": "tpm: use DEFINE_SIMPLE_DEV_PM_OPS and pm_sleep_ptr()\n\nReplace the deprecated SIMPLE_DEV_PM_OPS with DEFINE_SIMPLE_DEV_PM_OPS\nand wrap the struct assignment with pm_sleep_ptr(). The old code keeps\na completely empty dev_pm_ops structure -- all callbacks are NULL --\nas dead code in the object file when CONFIG_PM_SLEEP\u003dn, because\nSET_SYSTEM_SLEEP_PM_OPS() expands to nothing while __maybe_unused on\nthe struct only silences the warning without removing the struct.\nSwitching to DEFINE_SIMPLE_DEV_PM_OPS() lets pm_sleep_ptr() eliminate\nthe callback references at compile time, and wrapping the struct\nassignment with pm_sleep_ptr() drops the entire structure when\nCONFIG_PM_SLEEP is disabled, instead of retaining an empty one.\n\nSigned-off-by: Li Jun \u003clijun01@kylinos.cn\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/20260909082459.796628-1-lijun01@kylinos.cn\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "fc0ddb3174b06800d8414d87e551eb60c36d1f38",
      "tree": "14f2f5c6dcbf6ef85bf8663f8e9371cb86d4d34a",
      "parents": [
        "95ae1ad345658632a20c45a4b471a11fdcd438d0"
      ],
      "author": {
        "name": "Li Jun",
        "email": "lijun01@kylinos.cn",
        "time": "Wed Aug 19 16:35:47 2026 +0800"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "char: tpm: Use SIMPLE_DEV_PM_OPS for ibmvtpm power management\n\nReplace the manually defined dev_pm_ops structure with the\nSIMPLE_DEV_PM_OPS macro to simplify the power management code.\nThis macro automatically handles CONFIG_PM_SLEEP configuration,\ngenerating the same suspend/resume callbacks while reducing\nboilerplate code.Add the value of \u0027thaw,freeze,poweroff,restore\u0027.\n\nSigned-off-by: Li Jun \u003clijun01@kylinos.cn\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/20260819083547.2703228-1-lijun01@kylinos.cn\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "95ae1ad345658632a20c45a4b471a11fdcd438d0",
      "tree": "20ae01710177d16b89d048989425ab2fc1538158",
      "parents": [
        "a32b7973d65021486a6ae63d06a575d700eb1f91"
      ],
      "author": {
        "name": "Stefano Radaelli",
        "email": "stefano.r@variscite.com",
        "time": "Thu Sep 17 14:42:11 2026 +0200"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "tpm: tis_i2c: Deassert optional reset line before probing\n\nThe common TPM Device Tree binding already documents resets and\nreset-gpios, but the TIS I2C driver never requests a reset control.\nAs a result, an I2C TPM held in reset by board wiring remains\ninaccessible and the first register access during probe fails.\n\nRequest the optional reset control and deassert it before\ncommunicating with the TPM. This keeps existing boards without a reset\nline unchanged while allowing platforms using resets or reset-gpios to\nrelease the TPM before probe continues.\n\nTested on a Variscite DART-MX95 with an ST33KTPM2XI2C TPM using\nreset-gpios.\n\nSigned-off-by: Stefano Radaelli \u003cstefano.r@variscite.com\u003e\nLink: https://lore.kernel.org/r/20260917124211.136221-1-stefano.r@variscite.com\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "a32b7973d65021486a6ae63d06a575d700eb1f91",
      "tree": "d29e949ece6ced83d87d480eb6961b18b4c32805",
      "parents": [
        "313acd594a799d6b4b3af937eaca7bf4a1803c4a"
      ],
      "author": {
        "name": "Richard Lyu",
        "email": "richard.lyu@suse.com",
        "time": "Thu Sep 10 10:44:31 2026 +0800"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "tpm: Remove ineffective wmb() from tpm_pm_resume()\n\nThe comment above the wmb() in tpm_pm_resume() states that the barrier\nguarantees TPM_CHIP_FLAG_SUSPENDED is written last, so that hwrng does\nnot activate before the chip has been fully resumed.  It cannot do so:\nit is placed after the store that clears the flag, and therefore does\nnot order the preceding resume work before that store.  It also has\nnothing to pair with, as tpm_try_get_ops() contains no matching read\nbarrier.\n\nDrop the barrier along with the comment rather than leave a no-op\nbehind.  Should such ordering turn out to be needed, it would require\npaired barriers or locking.\n\nLink: https://lore.kernel.org/all/a62fc816-259a-4d28-a265-e425bc17ed50@gmail.com/\nSigned-off-by: Richard Lyu \u003crichard.lyu@suse.com\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/20260910024430.40418-1-richard.lyu@suse.com\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "313acd594a799d6b4b3af937eaca7bf4a1803c4a",
      "tree": "9ff1051b45b028b9bf135de20d226b4cc2134149",
      "parents": [
        "6fc1b05077b8ac7c3193616f0bc419f6185988c6"
      ],
      "author": {
        "name": "Mario Limonciello",
        "email": "mario.limonciello@amd.com",
        "time": "Tue Sep 01 16:37:22 2026 -0500"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "tpm: Call cmd_ready/go_idle for each command transmission\n\nSome TPM implementations, particularly fTPM using the CRB interface,\nrequire the TPM to transition through idle and ready states for each\ncommand rather than once per session.\n\nThe current implementation calls cmd_ready once during tpm_chip_start()\nand go_idle once during tpm_chip_stop(). For fTPM, when multiple commands\nare sent without per-command idle transitions, subsequent commands timeout\nas the TPM is waiting for the transition.\n\nFix this by calling cmd_ready before each command and go_idle on all exit\npaths in tpm_try_transmit(). For TPM implementations that don\u0027t require\nper-command transitions, the callbacks return immediately based on the\nstart method.\n\nRemove the now-redundant per-session calls from tpm_chip_start() and\ntpm_chip_stop() along with their helpers.\n\nThis resolves timeout errors during TPM initialization on systems where\nBIOS has already performed TPM startup.\n\nSigned-off-by: Mario Limonciello \u003cmario.limonciello@amd.com\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/20260901213723.3017371-1-mario.limonciello@amd.com\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "6fc1b05077b8ac7c3193616f0bc419f6185988c6",
      "tree": "f8c2429d53aa9109687bc79b48c6c38126fbbfa2",
      "parents": [
        "df0ef271087623439a1e900f323ed2a57204706d"
      ],
      "author": {
        "name": "Pei Xiao",
        "email": "xiaopei01@kylinos.cn",
        "time": "Sat Oct 03 16:27:54 2026 +0800"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "tpm: fix zero-length read discarding the pending response\n\nPOSIX requires that a read() with a count of zero returns zero and\nhas no other effects.  tpm_common_read() treats such a call as a\nconsumed response: it marks the pending response as read and drops\nit, so the response can never be retrieved; subsequent reads return\nzero and the next write() is allowed to overwrite the response\nbuffer, silently breaking the command/response pairing of the TPM\ncharacter devices.\n\nReturn early when the caller passes a zero count, leaving any\npending response untouched for the next read.  A zero-length read\nwill not report a deferred asynchronous error; POSIX permits read()\nto skip error detection for a zero count.\n\nCc: stable@vger.kernel.org\nFixes: 9488585b21be (\"tpm: add support for partial reads\")\nAssisted-by: GLM-5.3\nSigned-off-by: Pei Xiao \u003cxiaopei01@kylinos.cn\u003e\nLink: https://lore.kernel.org/r/3f15140ab3c26e98b49d6aceaaa826585d56960b.1791015549.git.xiaopei01@kylinos.cn\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "df0ef271087623439a1e900f323ed2a57204706d",
      "tree": "ef70397e7d0735ad58cdfae008fd93e3ac1c75f3",
      "parents": [
        "1900449684cf71427a51e0bb1d7914c0c8b39152"
      ],
      "author": {
        "name": "Pei Xiao",
        "email": "xiaopei01@kylinos.cn",
        "time": "Sat Oct 03 16:27:53 2026 +0800"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "tpm: tpm_nsc: stop using the cleanup callback as dev.release\n\ntpm_nsc_remove() is called explicitly from cleanup_nsc() and also\nruns as the platform device release callback on the final\nplatform_device_put(), so the cleanup executes twice on module\nexit; the second invocation operates on a chip that has already\nbeen freed by the devm cleanup, and the I/O region is released\ntwice.\n\nOverwriting the release callback installed by\nplatform_device_alloc() also keeps platform_device_release() from\nrunning, leaking the platform object allocation.\n\nLeave the default release callback in place; the explicit call in\ncleanup_nsc() remains the single cleanup point.\n\nCc: stable@vger.kernel.org\nFixes: 570302a31149 (\"[PATCH] tpm: move nsc driver off pci_dev\")\nAssisted-by: GLM-5.3\nSigned-off-by: Pei Xiao \u003cxiaopei01@kylinos.cn\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/a6155310e6772f708b47291cc959e02c05b90eb7.1791015549.git.xiaopei01@kylinos.cn\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "1900449684cf71427a51e0bb1d7914c0c8b39152",
      "tree": "aeecc65be544bebad58a667ccf50f5712c38bbf8",
      "parents": [
        "7d4f1cbfe063af5581dac66abe9e9c965e1031cc"
      ],
      "author": {
        "name": "Pei Xiao",
        "email": "xiaopei01@kylinos.cn",
        "time": "Sat Oct 03 16:27:52 2026 +0800"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "tpm: tpm_nsc: fix NULL pointer dereference on init failure\n\ntpm_nsc_remove() is used as the release callback of the hand-created\nplatform device and dereferences the chip drvdata unconditionally.\nIf init fails before tpmm_chip_alloc() (e.g. request_region() cannot\nclaim the ports), the error path drops the last device reference and\nthe release callback runs with chip \u003d\u003d NULL, crashing module init.\n\nReturn early when the chip has not been created yet.\n\nCc: stable@vger.kernel.org\nFixes: afb5abc262e9 (\"tpm: two-phase chip management functions\")\nAssisted-by: GLM-5.3\nSigned-off-by: Pei Xiao \u003cxiaopei01@kylinos.cn\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/d5f0b38d6d6c17c01519c879d26448dbae388b0e.1791015549.git.xiaopei01@kylinos.cn\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "7d4f1cbfe063af5581dac66abe9e9c965e1031cc",
      "tree": "486713fb79851f4d05d0960397aa1a2aebf4d4c2",
      "parents": [
        "a1c2b1da93f5f612aa7a33190c4900c98e51f6da"
      ],
      "author": {
        "name": "Alexander Sverdlin",
        "email": "alexander.sverdlin@siemens.com",
        "time": "Thu Oct 01 08:01:11 2026 +0200"
      },
      "committer": {
        "name": "Jarkko Sakkinen",
        "email": "jarkko@kernel.org",
        "time": "Fri Oct 23 00:59:20 2026 +0300"
      },
      "message": "tpm: tpm2_probe: propagate transport errors\n\ntpm2_probe() reads the protocol version from the response tag and is\ndocumented to return -errno on failure, but it always returns 0.  A\ntransport error (tpm_transmit_cmd() \u003c 0) is thus swallowed together with\nthe intentionally ignored TPM response code, leaving TPM_CHIP_FLAG_TPM2\nunset. A transient bus failure on the first command then misdetects a\nTPM 2.0 as a 1.2 and the probe fails on the TPM 1.2 path:\n\n  tpm_tis_i2c 0-002e: 1.2 TPM (device-id 0x1C, rev-id 22)\n  tpm tpm0: A TPM error (-62) occurred attempting to determine the timeouts\n\nReturn the transport error instead; rc \u003e\u003d 0 still means a valid header was\nreceived and the TPM\u0027s own response code is still ignored.\n\nFixes: 94e266ba1fa3 (\"tpm: migrate tpm2_probe() to use struct tpm_buf\")\nCc: stable@vger.kernel.org\nSigned-off-by: Alexander Sverdlin \u003calexander.sverdlin@siemens.com\u003e\nReviewed-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\nLink: https://lore.kernel.org/r/20261001060114.1582092-1-alexander.sverdlin@siemens.com\nSigned-off-by: Jarkko Sakkinen \u003cjarkko@kernel.org\u003e\n"
    },
    {
      "commit": "a1c2b1da93f5f612aa7a33190c4900c98e51f6da",
      "tree": "d321c6eb9b42aa7a9b7f9a14056760b9530400cc",
      "parents": [
        "98aec86f8c6bf2e1091fefb99eaba8b910e8eef1",
        "47193113641e5e1f9b5758b73d7b7a0273acb836"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:41:18 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:41:18 2026 -1000"
      },
      "message": "Merge tag \u0027for-linus-tsm\u0027 of https://github.com/jgunthorpe/linux\n\nPull TSM update from Jason Gunthorpe:\n \"One patch to update the maintainers file following Dan\u0027s passing for\n  TSM subsystem. Three people have volunteered to help complete this\n  work\"\n\n* tag \u0027for-linus-tsm\u0027 of https://github.com/jgunthorpe/linux:\n  coco/tsm: Update maintainership\n"
    },
    {
      "commit": "98aec86f8c6bf2e1091fefb99eaba8b910e8eef1",
      "tree": "262edefdccfcca1df2cd15ffef6bfc7563ad48ef",
      "parents": [
        "77f77fb7923feab3edd0accf793235623ef4b342",
        "1f5dde349ac2fca1f119ae8de3f0d2f1c2a8d338"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:37:35 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:37:35 2026 -1000"
      },
      "message": "Merge tag \u0027sched_ext-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext\n\nPull sched_ext updates from Tejun Heo:\n\n - Proxy execution can now be enabled together with sched_ext. A BPF\n   scheduler can opt in to receive mutex-blocked tasks that donate their\n   scheduling context to the lock owner and place them itself.\n\n - Lazy preemption: a BPF scheduler can preempt or kick a CPU lazily,\n   deferring the switch to the next return to user space or tick, as the\n   fair class can.\n\n - Sub-schedulers: a parent now learns which child runs on each CPU it\n   delegated and when a cap change takes effect. A detaching child loses\n   its caps before the parent restores the CPUs.\n\n - New kfuncs re-enqueue single tasks from a dispatch queue iteration\n   and report a cgroup\u0027s CPU count and a CID\u0027s NUMA node. The CID\n   topology now includes clusters.\n\n - Hot path optimizations: dispatch queue and task lookups compare keys\n   inline, remote task moves no longer take a dispatch queue lock twice,\n   and sub-scheduler hooks cost nothing without sub-schedulers.\n\n - Kfuncs callable from tracing programs are hardened against NMI and\n   IRQ nesting, which could hard-lock the CPU or pick a wrong idle CPU.\n\n - Built-in dispatch queues no longer allocate per-CPU state that grew\n   with the square of the CPU count.\n\n - Header syncs with the scx repo, a BTF workaround for pahole 1.32, and\n   selftest fixes and coverage.\n\n* tag \u0027sched_ext-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext: (69 commits)\n  sched_ext: Drop the locks periodically while walking a user DSQ for re-enqueue\n  sched_ext: scx_qmap: Also re-enqueue stranded tasks with scx_bpf_dsq_reenq_task()\n  sched_ext: Add scx_bpf_dsq_reenq_task() to re-enqueue single tasks from a DSQ iteration\n  sched_ext: Factor out the rq lock switch of scx_dsq_move()\n  sched_ext: Don\u0027t queue balance callbacks from a core-sched pick\n  sched_ext: Don\u0027t leave balance callbacks queued across a pick retry\n  sched_ext: Fix a bypassed task stalling on a cpu its scheduler has no caps on\n  sched_ext: Fix the running task keeping its protection into bypass\n  sched_ext: Fix use-after-free of a local reenq node left on an inactive cpu\n  sched_ext: Keep proxy donors with slice left on the local DSQ\n  selftests/sched_ext: Report reload_loop attach failures\n  selftests/sched_ext: Bound exit waits\n  selftests/sched_ext: Add SCX_ASSERT_ALIVE and adopt it\n  selftests/sched_ext: Fail loudly when EXIT_KIND is missing from BTF\n  sched_ext: Add SCX_ECODE_RSN_CGROUP_OFFLINE to user_exit_info.h\n  selftests/sched_ext: Fix reload_loop error-path use-after-free\n  selftests/sched_ext: Fix build error in dequeue_remote selftest\n  sched_ext: scx_qmap: Reset a child\u0027s cpuperf targets once its PERF revoke takes effect\n  sched_ext: Add ops.sub_child_ecaps_updated() to report a child\u0027s effective cap changes\n  sched_ext: scx_qmap: Show actual cid use per participant\n  ...\n"
    },
    {
      "commit": "77f77fb7923feab3edd0accf793235623ef4b342",
      "tree": "b29b6def51ee7717014c6e1d7a757622eddd26f0",
      "parents": [
        "031cb4ccf803f15b73e153d71024d75031bef5f3",
        "1850c669516cb8568150937497a9a16a7bfa1582"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:28:11 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:28:11 2026 -1000"
      },
      "message": "Merge tag \u0027cgroup-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup updates from Tejun Heo:\n\n - A write to cgroup.subtree_control or cgroup.type could hang in D\n   state for as long as a task pinning a dying controller took to exit,\n   as syzbot reported. The wait is now interruptible.\n\n - cpuset: the deadline bandwidth check ran on cpusets that weren\u0027t\n   valid partition roots, failing cpuset writes with -EBUSY while\n   deadline tasks existed. The CPU count the fair class takes from\n   cpuset assumed a shared hierarchy that cgroup1 may not have.\n\n - Finding a cgroup\u0027s effective controller state no longer walks up the\n   hierarchy, for per-I/O users such as nvmet. io.stat reads of cgroups\n   without block devices skip the stat flush.\n\n - cpuset v1-only code moved to the v1 file and the exclusive flag\n   dropped from v2, with documentation corrections for partition roots\n   and boot-isolated CPUs.\n\n - Dead cgroups fail writes with -ENODEV consistently, plus small\n   cleanups.\n\n - Selftest fixes, most visibly for tests that skipped on machines with\n   many mounts, and a new pids.events notification test.\n\n* tag \u0027cgroup-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (27 commits)\n  selftests/cgroup: test pids.events notification\n  selftests: cgroup: make test_memcg_sock check flushed sock stats\n  selftests: cgroup: skip test_memcg_sock under cgroup.memory\u003dnosocket\n  selftests/cgroup: Free the paths returned by cg_control()\n  selftests: memcg: Don\u0027t close an uninitialized fd\n  cgroup: Track the effective css in each cgroup\n  cgroup/cpuset: Move cpuset_update_flag() to cpuset-v1.c\n  selftests: cgroup: Preserve command arguments in with_stress.sh\n  selftests: cgroup: Enable the cpu controller in test_cpu\n  cgroup/cpuset: Use cpuset_v2() in cpuset_num_cpus()\n  selftests/cgroup: add settings file with a longer timeout\n  cgroup/cpuset: Remove CS_CPU_EXCLUSIVE handling code from v2\n  cgroup/cpuset: Run SCHED_DEADLINE shrink test on valid partition root only\n  docs: cgroup-v2: Describe effective CPUs of partition roots\n  docs: cgroup-v2: Describe boot-isolated CPUs in cpuset.cpus.isolated\n  cgroup/cpuset: Remove redundant sched domain rebuild from update_prstate()\n  selftests/cgroup: don\u0027t crash on a truncated mount entry in cg_find_root()\n  selftests/cgroup: read the entire file in read_text()\n  blk-cgroup: skip rstat flush for cgroups without blkgs\n  cgroup: use assign_bit() where applicable\n  ...\n"
    },
    {
      "commit": "031cb4ccf803f15b73e153d71024d75031bef5f3",
      "tree": "3c72a2a510e46d594870fb3bb22c52f7e8d416c3",
      "parents": [
        "14785eff402944f56466ef0058408334cfc2f91d",
        "bda345b3fc59f2899c50379c64a0734a3e720683"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:25:52 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:25:52 2026 -1000"
      },
      "message": "Merge tag \u0027wq-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\nPull workqueue updates from Tejun Heo:\n\n - Flushing a workqueue now visits only the queues used since the last\n   flush instead of one per possible CPU. Idle flushes get 10 to 100\n   times faster on large machines, which XFS hits on every log force.\n\n - Per-cpu workqueues are built through the same attribute path as\n   unbound ones and get a max_active of their own, continuing the work\n   to turn them into an affinity scope of unbound workqueues.\n\n - New tracepoints for work items turning CPU-intensive, rescuer mayday\n   and rescue events, and BH workers yielding with work pending.\n\n - A KCSAN annotation and small cleanups\n\n* tag \u0027wq-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: mark pool-\u003enr_running as __data_racy\n  workqueue: BUG_ON() a pwq release before workqueue_init()\n  workqueue: Derive the standard attrs from the workqueue flags\n  workqueue: Give percpu workqueues their own max_active\n  workqueue: Make flush_workqueue() visit only pwqs active since the last flush\n  workqueue: Maintain pwq-\u003etotal_in_flight\n  workqueue: Add for_each_node_with_fallback()\n  workqueue: Fix typo \"upto\" in comment\n  workqueue: Add workqueue_bh_budget_yield tracepoint\n  workqueue: Add workqueue_mayday and workqueue_rescued tracepoints\n  workqueue: Add workqueue_cpu_intensive tracepoint\n  workqueue: rename the pwq slot helpers shared with percpu\n  workqueue: build percpu pwqs through the attrs path\n  workqueue: make the default pwq optional\n  workqueue: resolve the backing pool in alloc_pwq()\n  workqueue: move the unbound-only attrs check to apply_workqueue_attrs()\n"
    },
    {
      "commit": "14785eff402944f56466ef0058408334cfc2f91d",
      "tree": "b61a8af6aa38f266bb7ee6a34de837a295a1853a",
      "parents": [
        "3815f7d55ae18564f4eac57557479f8b3548af95",
        "722658cac48a6ba49f5506fd74d010ad9dbb2f05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:02:37 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 10:02:37 2026 -1000"
      },
      "message": "Merge tag \u0027keys-v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd\n\nPull keys updates from Jarkko Sakkinen:\n \"Highlight:\n\n   - Don\u0027t leak local kernel addresses (and complement the ongoing\n     rhashtable migration) (Kyle Zeng)\n\n     The index value for the associative array has been calculated with\n     the following formula:\n\n\tmult_64x32_and_fold(description + type address + domain address)\n\n     By creating a sequence of dummy keys (e.g., \"A\", \"B\", \"C\", ...), it\n     is trivial to form a group of equations with a predictable hash\n     function, and ultimately break KASLR.\n\n     Kyle\u0027s solution is based on an ephemeral SipHash key and an atomic\n     64-bit counter, which is encapsulated to a key_index_id(). This\n     function is then used to assign identifiers for types and domains,\n     and since the IDs are unique for each power on, they are as unique\n     as memory addresses are.\n\n     With these ingredients the index value calculation can be changed\n     into form, which is not leaking any kernel addresses:\n\n\tSipHash(description + type id + domain id)\n\n  Features and improvements:\n\n   - TPM fields were moved from trusted_key_options to the TPM backend.\n     They cost memory for non-TPM backends.\n\n   - A TPM trusted key now caches tpm_is_tpm2() at the root of each call\n     chain, and passes the result as a parameter. This decreases the\n     amount of I/O traffic given that tpm_is_tpm2() starts and stops the\n     chip via tpm_try_get_ops() and tpm_put_ops().\n\n  Bugfixes:\n\n   - A TPM trusted key corrupted the return value of a failed key\n     unsealing operation if the pcrlock feature was used.\n\n   - A TPM 2 trusted key allocated an off-by-four too large buffer for\n     the decoded ASN.1 blob coming from keyctl add trusted.\n\n   - Sometimes a TPM 2 trusted key rejected created keys based on the\n     TPM2_Create response size, treating them as too large. Now it\n     correctly checks the extracted TPM2 key blob size.\n\n   - The keyctl reject operation raced with keyctl restrict_keyring\n     because keyring-\u003esem was not held in key_reject_and_link() before\n     accessing keyring-\u003erestrict_link.\n\n   - keyctl_describe_key() was not holding key-\u003esem while accessing its\n     fields, which can lead to use-after-free of a retired key type.\n\n   - find_keyring_by_name() and procfs code were reading the UID from\n     key-\u003euser-\u003euid instead of key-\u003euid. The latter is the cached value\n     and is meant to protect against a use-after-free caused by keyctl\n     chown.\n\n   - search_process_keyrings_rcu() did not properly RCU-dereference the\n     authorization key payload, which could cause a null dereference if\n     the payload was revoked.\n\n   - keyctl_read_key() checked key-\u003etype-\u003eread without holding key-\u003esem,\n     which can lead to use-after-free if the type is retired. Based on\n     my suggestion, this was addressed in __keyctl_read_key(), which\n     already did take key-\u003esem\"\n\n* tag \u0027keys-v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd:\n  keys/trusted_keys: reuse TPM version in option handling\n  security: keys: Fix comment of search_process_keyrings_rcu()\n  keys/trusted/tpm2: Validate TPM2_Create object sizes separately\n  keys/trusted_keys: move TPM-specific fields into struct trusted_key_tpm\n  keys: Protect the read method check against type removal\n  keys: Avoid owner account dereferences in /proc/keys\n  keys: make keyring indexes independent of kernel addresses\n  keys: Check the authorization payload in process keyring searches\n  keys: Avoid the owner account dereference in named keyring lookup\n  keys: Protect the type name while describing a key\n  KEYS: Fix key_reject_and_link() race with keyring restriction\n  KEYS: trusted: Fix blob allocation size in tpm2_key_decode()\n  keys/trusted_keys: return immediately after TPM unseal failure\n"
    },
    {
      "commit": "3815f7d55ae18564f4eac57557479f8b3548af95",
      "tree": "e8ec39efb4107e35910700c2ea8bc91c9a0bf77e",
      "parents": [
        "bbc48daecac6c69ccbce4005aa2a681298e2fc7d",
        "3e271a27c46fd591d1011c7de5a644a41e2010f1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:58:44 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:58:44 2026 -1000"
      },
      "message": "Merge tag \u0027landlock-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux\n\nPull Landlock update from Mickaël Salaün:\n \"The main change adds composable Landlock controls for namespace types\n  and Linux capabilities, thanks to new LSM hooks (merged via the LSM\n  tree). A umount race condition is also fixed\"\n\n* tag \u0027landlock-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux:\n  landlock: Fix superblock use-after-free in release_inode()\n  selftests/landlock: Fix snprintf truncation checks in test files\n  landlock: Add documentation for capability and namespace restrictions\n  samples/landlock: Add capability and namespace restriction support\n  selftests/landlock: Add capability restriction tests\n  selftests/landlock: Add namespace restriction tests\n  landlock: Enforce capability restrictions\n  landlock: Enforce namespace use restrictions\n  landlock: Wrap per-layer access masks in struct layer_config\n  landlock: Rename quiet_masks to quiet_access\n"
    },
    {
      "commit": "bbc48daecac6c69ccbce4005aa2a681298e2fc7d",
      "tree": "b5c0b56132d8479e376f3491ed30b8af38e4465b",
      "parents": [
        "31aa19260278943f8539da6837f03fdeadf4aa7e",
        "e2f08fadb48509c239e47cdaf81438c162395932"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:55:12 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:55:12 2026 -1000"
      },
      "message": "Merge tag \u0027ipe-pr-20261019\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wufan/ipe\n\nPull IPE updates from Fan Wu:\n\n - Fix an extra empty audit record on enforcement changes\n\n   ipe_audit_enforce() started an audit buffer but logged the state\n   change with audit_log(), which emits its own record. Ending the\n   unused buffer produced an additional empty AUDIT_MAC_STATUS record\n   every time the enforcement state was changed.\n\n - Keep the name and token tables in sync with their enums\n\n   The audit name tables now use designated initializers, so each name\n   stays bound to its enum value, and static assertions on the policy\n   parser token tables break the build if an enum value is added without\n   a matching token.\n\n - Constify token_default() and correct a comment about policy text\n   ownership, with no functional changes\n\n - Fix an invalid sgid value in an audit event example in the docs\n\n - Point the docs to the new IPE website and test suite repository\n\n* tag \u0027ipe-pr-20261019\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wufan/ipe:\n  ipe: update the project and test suite links\n  ipe: fix enforcement audit\n  ipe: correct policy text ownership comment\n  ipe: check parser token table sizes\n  ipe: use designated initializers for audit name tables\n  ipe: constify token_default()\n  ipe: fix invalid sgid value in audit event documentation\n"
    },
    {
      "commit": "31aa19260278943f8539da6837f03fdeadf4aa7e",
      "tree": "d89756dea1d72b52387189e2fd15258de0021f49",
      "parents": [
        "bf2325084583daaea91084b25069f121d5d8832b",
        "ceb24c7052cc4649e3b52a51a7cca7dfe4896cec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:53:20 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:53:20 2026 -1000"
      },
      "message": "Merge tag \u0027integrity-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity\n\nPull IMA updates from Mimi Zohar:\n  \"Cleanup:\n\n   - Update ima_audit_msg() to report errno directly, revert making it a\n     wrapper for ima_audit_message(), and remove ima_audit_message()\n\n  Two bug fixes when carrying the IMA measurement list across kexec:\n\n   - Restore the number of violations in the IMA measurement list\n\n   - Reject restoring IMA measurement list record(s) beyond the expected\n     buffer size (out-of-bounds)\"\n\n* tag \u0027integrity-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:\n  ima: reject a kexec buffer whose declared size exceeds the buffer\n  ima: recover number of violations after kexec\n  integrity: Replace integrity_audit_message() with integrity_audit_msg()\n  integrity: Report error code in integrity_audit_msg() call sites\n"
    },
    {
      "commit": "bf2325084583daaea91084b25069f121d5d8832b",
      "tree": "92934f2b651890d36f1a2177c31a246b25b412c0",
      "parents": [
        "2a08195e4db5aba84600db6518089a1dbe2d04c7",
        "178aff4cf425b3fc51ff09c571fa1bfbc1eb8ea4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:36:46 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 09:36:46 2026 -1000"
      },
      "message": "Merge tag \u0027v7.4-p1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nPull crypto updates from Herbert Xu:\n \"API:\n   - Fix algif_skcipher source SG overrun\n   - Allow hmac(sha512) for non-root users\n\n  Algorithms:\n   - Add wrapper for zeroing AES key context\n   - Avoid redundant stream initialisations in zstd\n\n  Drivers:\n   - Remove hisilicon/sec.\n   - Handle digest-only authenc requests in atmel\n   - Handle zero-length skcipher requests in mxs-dcp\n   - Lower the default priority of caam/qi2\n\n  Others:\n   - Optimise key comparison in rhashtable lookup that uses constant\n     parameters\"\n\n* tag \u0027v7.4-p1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (146 commits)\n  crypto: atmel-tdes - consolidate error paths in atmel_tdes_dma_init()\n  crypto: atmel-tdes - reuse fast in atmel_tdes_crypt_start()\n  crypto: atmel-tdes - use separate DMA scatterlists\n  MAINTAINERS: delete entry for John Allen\n  hwrng: amd - use PMBASE_OFFSET consistently\n  hwrng: cctrng - simplify cctrng_probe()\n  hwrng: intel - simplify intel_rng_mod_init()\n  crypto: qat - fix use of destroyed vf2pf_lock on VF restart\n  crypto: qat - initialise state_lock on every path in adf_devmgr_add_dev()\n  hwrng: imx-rngc - Use optional clock\n  crypto: talitos - init tasklets before requesting IRQs\n  crypto: algif_skcipher - rewind rounded output bytes\n  crypto: algif_hash - Allow hmac(sha512) for unpriviledged users\n  crypto: sa2ul - Remove unused fields\n  hwrng: stm32 - use devm_platform_ioremap_resource() in stm32_rng_probe()\n  hwrng: stm32 - drop redundant initializations\n  hwrng: amd - simplify control flow in amd_rng_mod_init()\n  hwrng: stm32 - reuse clock rate in stm32_rng_clock_freq_restrain()\n  hwrng: stm32 - use swap() in stm32_rng_probe()\n  hwrng: cctrng - drop redundant initializations\n  ...\n"
    },
    {
      "commit": "2a08195e4db5aba84600db6518089a1dbe2d04c7",
      "tree": "5053309d3c336648459a7673be388b3d5fd23355",
      "parents": [
        "968de9d17980a0e538fc4e4394af49465294386d",
        "e38f53f0482468efd04397f66bda4648b70ac9fa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:23:28 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:23:28 2026 -1000"
      },
      "message": "Merge tag \u0027linux_kselftest-kunit-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest\n\nPull kunit update from Shuah Khan:\n \"A single fix to kunit_run_all_tests() to return void since callers\n  don\u0027t check the return value and the integer return type is a remnant\n  from when the function was executed as initcall which is no longer the\n  case\"\n\n* tag \u0027linux_kselftest-kunit-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:\n  kunit: Return void from kunit_run_all_tests()\n"
    },
    {
      "commit": "968de9d17980a0e538fc4e4394af49465294386d",
      "tree": "9e091112c98c09b034805c67637b118148c1d67f",
      "parents": [
        "7cd80b8168c9269e4b11788ce815c0f446ab5b34",
        "368e5d4d12a802ee3708800319cd13904721286f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:20:22 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:20:22 2026 -1000"
      },
      "message": "Merge tag \u0027linux_kselftest-next-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest\n\nPull kselftest updates from Shuah Khan:\n\n - Improve selftest build, run-time, and install framework\n\n   Install even when some modules fail to build, print summary of test\n   results at the end of the default test run, keep the build status\n   from wrapping to success so build errors are reported, and optionally\n   record per-suite build and install results.\n\n - Add LLVM support to kselftest_deps.sh\n\n - Fix resctrl, breakpoints suspend, ftrace, and tracing tests\n\n - Fix and enhance resctrl test\n\n* tag \u0027linux_kselftest-next-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:\n  selftests: breakpoints: Skip step_after_suspend_test on systems without a wakeup capable RTC\n  selftests: optionally record per-suite build and install results\n  selftests: keep the build status from wrapping to success\n  selftests/ftrace: Add nice dependency\n  selftests: kselftest_deps.sh: Support LLVM\n  selftests: lib.mk: Don\u0027t fail install if no modules were built\n  selftests/ftrace: Avoid unlink error on first run\n  tracing/selftests: Fix incorrect invocation of exit_fail\n  selftests/lib.mk: run_tests: print summary at the end\n  selftests/ftrace: skip gcov symbols when picking a function to probe\n  selftests/resctrl: Enable dynamic management of IMC counters via linked list\n  selftests/resctrl: Replace counter index references with pointers\n  selftests/resctrl: Introduce linked list management for IMC counters\n  selftests/resctrl: Skip L3_CAT when no exclusive cache portion exists\n"
    },
    {
      "commit": "7cd80b8168c9269e4b11788ce815c0f446ab5b34",
      "tree": "070863419ab62749f44af44a1ba3174c315fff29",
      "parents": [
        "bb2235894a8a604c08b3f93f4e1082b9df03265a",
        "4ad423aa2108485f8bc5dde51fdf9c1ed979ee4b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:12:31 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:12:31 2026 -1000"
      },
      "message": "Merge tag \u0027uml-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/uml/linux\n\nPull UML updates from Johannes Berg:\n\n - NOMMU support, mostly for mm/ testing\n\n   The only bigger change, we added support for building with\n   !CONFIG_MMU, mostly for testing, e.g. via kunit. Some new\n   selftests targetted to NOMMU are moving elsewhere, but are\n   runnable on ARCH\u003dum without MMU.\n\n - Tighter page permissions\n\n   Tighten page permissions to catch more bugs (ARCH\u003dum is,\n   after all, often used for testing), and also mark __init\n   memory inaccessible for the same reason.\n\n - Various maintenance/cleanups\n\n   Fix build on really old hosts, fix leaks, make the code a\n   bit more robust, header cleanups, typo fixes, the usual.\n\n* tag \u0027uml-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/uml/linux: (38 commits)\n  um: place large BSS inputs in an output section\n  um: fix shutdown __inittext access\n  um: time-travel: fix sched_yield() behaviour\n  um: require MMU for UML PCI support\n  um: vector: avoid NULL queue dereference in legacy RX mode\n  um: use %pB to print functions in stack traces\n  um: mprotect() __init memory\n  um: move init text between __init_begin/end\n  um: improve checking for --no-warn-rwx-segments\n  um: make stub compilation more robust\n  um: link .lbss/.ldata/.lrodata correctly\n  um: add perf-event support\n  x86/um: remove unused \u003casm/required-features.h\u003e header\n  um: fix typo \"hander\" in comment\n  um: Add definition of __NR_close_range for older host OSs\n  um: virtio_uml: switch to dynamic root device\n  um: Tighten exec permissions on page mappings\n  Documentation: um: document nommu UML\n  um: allow deselecting CONFIG_MMU\n  um: nommu: add userspace runner processes\n  ...\n"
    },
    {
      "commit": "bb2235894a8a604c08b3f93f4e1082b9df03265a",
      "tree": "c6e58a900d8e77472ecd8d5c7837985f2023055b",
      "parents": [
        "979fac3eaaa02fa887c7dfe6509248b21dca3872",
        "129f5d395fd66b6587a5ac156b232cca060d6512"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:05:19 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:05:19 2026 -1000"
      },
      "message": "Merge tag \u0027powerpc-7.4-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux\n\nPull powerpc updates from Madhavan Srinivasan:\n\n - powerpc/numa: Support coregroup on PowerNV\n\n - powerpc/irq: Move __softirq_pending out of irq_stat\n\n - powerpc/512x: Remove pdm360ng platform setup in favor of mpc512x_generic\n\n - powerpc/ps3: Simplify control flow in ps3_{virq,irq_plug}_setup()\n\n - KVM: PPC: Book3S HV: Add preempt_disable() around virtual-mode HPTE bit-lock users\n\n - powerpc/syscall: Avoid atomic test_and_clear_thread_flag on fast path\n\n - pseries/plpks cleanup and fixes\n\n - Misc fixes and cleanup\n\nThanks to Abhishek Dubey, Amit Machhiwal, Anushree Mathur, Bui Nguyen\nNhu Quynh, Christophe Leroy (CS GROUP), Dmitry Torokhov, Gaurav Batra,\nGautam Menghani, Geert Uytterhoeven, Greg Joyce, Hari Bathini, Harsh\nPrateek Bora, Karl Mehltretter, Link Mauve, Michal Suchánek, Mukesh\nKumar Chaurasiya (IBM), Nayna Jain, Ritesh Harjani (IBM), R Nageswara\nSastry, Saket Kumar Bhaskar, Samir Mulani, Shivang Upadhyay, Shrikanth\nHegde, Sourabh Jain, Srikar Dronamraju, Srish Srinivasan, Thorsten Blum,\nVaibhav Jain (IBM), Venkat Rao Bagalkote, and Yeswanth Krishna Tellakula\n\n* tag \u0027powerpc-7.4-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (44 commits)\n  powerpc/numa: Support coregroup on PowerNV\n  powerpc/numa: Allow cpu_to_coregroup_id without PPC_SPLPAR\n  powerpc/numa: Simplify find_primary_domain_index\n  powerpc/fadump: collect dump when CPU_STATE_DATA is less than reserved\n  powerpc/syscall: Avoid atomic test_and_clear_thread_flag on fast path\n  powerpc/kasan: fix r2 corruption in mem*() on GENERIC_ENTRY with old compilers\n  powerpc: fix NMI exit ordering: restore soft masks after irqentry_nmi_exit()\n  powerpc/pseries/iommu: Add TCEs for 16GB pages when RAM is pre-mapped\n  KVM: PPC: Book3S HV: Free the queue pages in error path\n  KVM: PPC: Book3S HV: Add missing mappings for tracing exits\n  powerpc/interrupt: Use early_radix_enabled() in NMI real-mode guard\n  KVM: PPC: Fix get_d_signext() 12-bit displacement for paired-single D-form\n  KVM: PPC: Book3S HV: Add preempt_disable() around virtual-mode HPTE bit-lock users\n  KVM: PPC: Book3S HV: Add SRCU protection for virtual-mode HPT hcalls\n  pseries/plpks: update PKS documentation and MAINTAINERS entry\n  pseries/plpks: rename the default wrapping key macro\n  pseries/plpks: make narrowing conversions explicit\n  pseries/plpks: hide wrapping_features when unsupported\n  pseries/plpks: fix self-reference in plpks_var initializer\n  pseries/plpks: clear SED key data after use\n  ...\n"
    },
    {
      "commit": "979fac3eaaa02fa887c7dfe6509248b21dca3872",
      "tree": "feba5ab6a2305c92162cd09549fd7832b8aaa22a",
      "parents": [
        "5b6eaf4aeba0aab8cc757d79102aa9662d148f97",
        "b74843b38da8f1186fd7d447646c835b47096a15"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:02:35 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 08:02:35 2026 -1000"
      },
      "message": "Merge tag \u0027alpha-fixes-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha\n\nPull alpha floating point emulation fix from Matt Turner:\n \"Make the FP emulation determine tininess after rounding, as the\n  hardware does.\n\n  soft-fp always determined it before rounding, so an operation that\n  trapped for software completion could report an underflow the same\n  operation would not report when it did not trap. glibc\u0027s math\n  testsuite catches the disagreement.\n\n  This adds _FP_TININESS_AFTER_ROUNDING to the shared soft-fp code in\n  include/math-emu/, as glibc\u0027s copy already has, and sets it only for\n  alpha. It defaults to zero, so powerpc, sh and sparc are unchanged.\n\n  This is the last patch of a three-patch series; the first two were\n  merged for v7.3\"\n\n* tag \u0027alpha-fixes-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:\n  alpha: determine tininess after rounding in the FP emulation\n"
    },
    {
      "commit": "5b6eaf4aeba0aab8cc757d79102aa9662d148f97",
      "tree": "b6ad7d0f455a40d0297b01357fc2f44680240bc3",
      "parents": [
        "aad73b807cd1a5bff9c5277e8a42e75bbdc8adab",
        "01330dac0fa7c16ef0f3da39757e9509653a2e3f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:58:09 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:58:09 2026 -1000"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux\n\nPull ARM updates from Russell King:\n\n - remove supersection support\n\n - set \"current\" earlier to avoid KASAN issues\n\n - fix a couple of corner cases in the alignment handler\n\n - fix wrong free function in iommu allocation path\n\n - cacheinfo updates\n\n - properly align hugetlb mappings\n\n - always set endianness on xscale\n\n - fix clang backtracer\n\n - avoid replacing active_asids if already 0\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rmk/linux:\n  ARM: 9493/1: asid: Do not replace active_asids if already 0\n  ARM: 9490/1: backtrace-clang: fix wrong sp usage for unwinding\n  ARM: 9482/5: decompressor: always set endianess on xscale\n  ARM: 9524/1: mm: align hugetlb mappings to the huge page size\n  ARM: 9523/1: topology: allocate the cacheinfo early on the boot CPU\n  ARM: 9522/1: cacheinfo: guard the CLIDR read in populate_cache_leaves()\n  ARM: 9521/1: cacheinfo: count external caches in early_cache_level()\n  ARM: 9520/1: cacheinfo: avoid out-of-bounds write in populate_cache_leaves()\n  ARM: 9519/1: dma-mapping: Fix wrong free function in __iommu_alloc_simple() error path\n  ARM: 9492/1: alignment: fix LSR #32 and ASR #32 offset decoding\n  ARM: 9491/1: alignment: restore uaccess state on emulation fault\n  ARM: 9488/1: smp: set current pointer in assembly before jumping into C\n  ARM: 9486/1: set !LPAE MAX_PHYSMEM_BITS to 32 and remove supersection mappings\n"
    },
    {
      "commit": "aad73b807cd1a5bff9c5277e8a42e75bbdc8adab",
      "tree": "8c1f0864efd1be92f97e2d804a7bf619173922db",
      "parents": [
        "4e092c2be4320f06dde1206652746ce0d83540b7",
        "cfe69169c03e71e2a22870317ef4cffb51f6f06d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:56:27 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:56:27 2026 -1000"
      },
      "message": "Merge tag \u0027soc-arm-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc\n\nPull ARM SoC board file updates from Arnd Bergmann:\n \"These are mostly smaller cleanups for the remaining platform code in\n  arch/arm/, the most notable one being the conversion of the\n  s3c/crag6410 board to use software nodes for GPIO references in place\n  of plain GPIO numbers.\n\n  The earlier plan was to drop the deprecated (since 7.3) board files\n  here, which would have been a much larger set of changes, but that is\n  now deferred to 7.5\"\n\n* tag \u0027soc-arm-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:\n  MAINTAINERS: Drop arm64 dts/intel path from ARM/SOCFPGA ARCHITECTURE\n  ARM: tegra: Fix Trun -\u003e Turn typo\n  ARM: vexpress: fix device_node refcount leak in vexpress_smp_dt_prepare_cpus()\n  ARM: vexpress: fix device_node refcount leak in vexpress_flags_set()\n  MAINTAINERS: Change ARM Visconti5 architecture maintenance status to Odd Fixes\n  ARM: mvebu: fix Cortex-A9 errata selection for Armada 38x\n  ARM: OMAP2+: remove unused ctrl_module_wkup_44xx.h header\n  ARM: EXYNOS: Replace __ASSEMBLY__ with __ASSEMBLER__\n  ARM: s3c: crag6410: use software nodes/properties to set up GPIO keys\n  Input: samsung-keypad - remove support for platform data\n  ARM: s3c: crag6410: switch keypad device to software properties\n  ARM: s3c: register and attach software nodes for Samsung gpio_chips\n  Input: samsung-keypad - handle compact binding\n  dt-bindings: input: samsung,s3c6410-keypad: introduce compact binding\n  ARM: imx6q: remove KSZ9021 PHY fixup\n  ARM: imx: Fix suspend/resume crash with Clang CFI\n  ARM: OMAP2+: Replace __ASSEMBLY__ with __ASSEMBLER__\n  soc: imx: Replace __ASSEMBLY__ with __ASSEMBLER__ in header file\n  ARM: imx: Replace __ASSEMBLY__ with __ASSEMBLER__\n  MAINTAINERS: Add git tree for TI K3 ARCHITECTURE\n"
    },
    {
      "commit": "4e092c2be4320f06dde1206652746ce0d83540b7",
      "tree": "306a7c29df7e142235a7ffde7eab3582a0ce28e3",
      "parents": [
        "2e51c645fee243dbcb5cee3eb063b5713317444c",
        "6db3ea21a541d34e45f3727b71575424495df44c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:55:27 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:55:27 2026 -1000"
      },
      "message": "Merge tag \u0027soc-defconfig-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc\n\nPull SoC defconfig updates from Arnd Bergmann:\n \"Only a few new drivers get enabled this time.\n\n  The size of the defconfigs actually shrinks here, though that is only\n  the result of all the Qualcomm clock drivers now being configured as\n  modules by default when the corresponding platforms are enabled\"\n\n* tag \u0027soc-defconfig-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:\n  arm64: defconfig: Update coreboot firmware symbols\n  arm64: defconfig: Enable I3C and SPD5118 hwmon\n  arm64: defconfig: Enable EMC2305 and PCA963x drivers\n  arm64: defconfig: Switch Qualcomm SDM845, SM8150 and SM8250 drivers to modules\n  ARM/arm64: defconfig: Drop redundant Qualcomm clock entries\n  arm64: configs: defconfig: Convert TISCI to modules\n  arm64: defconfig: Enable PMIC5 Gen3 ADC thermal monitor\n  arm64: defconfig: Enable QMP PCIe Multi-PHY driver\n  ARM: shmobile: defconfig: Refresh for v7.3-rc1\n  arm: multi_v7_defconfig: Enable SND_ALOOP\n  arm64: defconfig: enable the necessary drivers for the Ayaneo Pocket S2\n  ARM: omap2plus_defconfig: Support for compressed firmware\n  ARM: omap2plus_defconfig: Enable SND_ALOOP\n"
    },
    {
      "commit": "2e51c645fee243dbcb5cee3eb063b5713317444c",
      "tree": "ee6bfb3eabdc46763c050c98a7549e504313a286",
      "parents": [
        "7b9a0e857b427cdda5a08b662dbea7321e6bb470",
        "0045cd6b8ab2319e9d8de46e5e329cdc35ce6d05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:52:50 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:52:50 2026 -1000"
      },
      "message": "Merge tag \u0027soc-drivers-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc\n\nPull SoC driver updates from Arnd Bergmann:\n \"There are lots of minor updates for driver subsystems managed through\n  the soc tree (turris-omnia platform, cache driver, tee drivers,\n  arm-cci, bus, memory) as well as soc vendor specific drivers\n  (starfive, xilinx, microchip, nxp, amlogic, imx, renesas, samsung, ti,\n  nvidia).\n\n  The more notable changes are:\n\n   - Larger updates for Qualcomm SoCs including support for SM8950\n     (Maili) SM8975 (Hawi), Glymur, Shikra, and IPQ5424\n\n   - Added SoC support for Exynos5515, Tegra264, Tegra410, R8A774A3, and\n     MT8167 in existing drivers\n\n   - Arm SCMI firmware driver support for ACPI PCC transport and module\n     autoloading of protocol specific drivers\n\n   - Apple crash log support for CrgA embedded controller\"\n\n* tag \u0027soc-drivers-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (176 commits)\n  platform: cznic: turris-omnia-mcu: stop button emulation producers\n  cache: Make cpu_cache_invalidate_memregion() error out if there are no handlers\n  soc: mpfs: use kref cleanup on probe failure\n  arm64: enable HAVE_SHARED_GPIOS for all ARM64 platforms\n  bus: arm-cci: Drop cci-control-port node reference in __cci_ace_get_port()\n  bus: arm-cci: Drop CPU node reference in cci_ace_init_ports()\n  soc: fsl: dpio: Free the IRQ before releasing the I/O object\n  soc: fsl: dpio: Fix cleanup on IRQ registration failure\n  bus: fsl-mc: Annotate fsl_mc_io.portal_virt_addr with __counted_by_ptr\n  bus: fsl-mc: drop the fwnode links of the dpmacs nodes\n  soc: fsl: cpm1: tsa: Fix clock leak in tsa_of_parse_tdms()\n  soc: qcom: geni-se: Drop unused icc_ddr parameter from geni_icc_get()\n  firmware: qcom: scm: Allow QSEECOM on ThinkPad T14s Gen 7\n  dt-bindings: mailbox: qcom: Document Maili CPUCP mailbox controller\n  dt-bindings: spmi: glymur-spmi-pmic-arb: Add compatible for Qualcomm Maili SoC\n  soc: qcom: pmic_pdcharger_ulog: prevent work requeue during remove\n  ASoC: dt-bindings: qcom,apr: Add modem_apps GLINK channel for shikra\n  firmware: qcom: tzmem: disable SHM bridge for SM7125 platform\n  soc: qcom: ubwc: Add Kalambo UBWC config\n  firmware: qcom: scm: Allow QSEECOM on Kalambo CRD\n  ...\n"
    },
    {
      "commit": "7b9a0e857b427cdda5a08b662dbea7321e6bb470",
      "tree": "f54d9637f27a40a848ed29eba6eff73a1afb880d",
      "parents": [
        "6876634d0fc254362ed6cc4f475c16ddd5e2c0eb",
        "15644868ad522eac914d368fd08c340051f1076c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:48:17 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:48:17 2026 -1000"
      },
      "message": "Merge tag \u0027soc-dt-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc\n\nPull SoC devicetree updates from Arnd Bergmann:\n \"This is a rather large update of over 1000 non-merge commits touching\n  devicetree files and bindings.\n\n  A few notable SoC were added this time:\n\n   - Apple M4 and A18 Pro are used in laptops, these follow the M3 model\n     added in 7.2.\n\n   - Google Laguna (aka Tensor G5) is used last year\u0027s Pixel phone\n     generation. Unlike the earlier Tensor chips, this is not based on\n     Samsung\u0027s Exynos family design but starts a new chip family.\n\n   - Qualcomm\u0027s Hawi and Nord SoCs are two powerful chips using the\n     custom Oryon cores. Product names and applications are so far not\n     known, which means that Qualcomm is doing something right by\n     upstreaming kernel support early.\n\n  The ST stm32mp23xc/stm32mp25xc SoC support was previously removed\n  because there were no users upstream, but they are back now that\n  boards have shown up. Renesas RZ/G2M v3.0 (R8A774A3) is just a minor\n  variation of the already supported SoC.\n\n  In total, there are 81 new dts files for individual boards, and they\n  are all over the place. Only one riscv based machine is added, the\n  Milk-V Meles SBC using the T-Head th1520 chip. For 32-bit Arm, we have\n  13 new boards. About half are industrial embedded boards using NXP\n  i.MX6/7 chips, the rest are older products: two Amazon tablets, two\n  Motorola phones and two SoM boards.\n\n  Everything else is 64-bit Arm:\n\n   - many industrial embedded boards using NXP layerscape, NXP i.MX8/9,\n     Qualcomm Hamoa, ST stm32mp2, Rockchip rk35xx, and Renesas RZ/G2\n     SoCs\n\n   - Laptops and tablets using Apple M4, Qualcomm Snapdragon X2,\n     Snapdragon X1 Elite and Allwinner A133 chips\n\n   - Valve Steam Frame VR headset using Snapdragon 8 Gen 3\n\n   - Seven handheld game consoles using Qualcomm Dragonwing qcs8550\n\n   - Mobile phones using Google Tensor G5, Samsung Exynos 850, and\n     various Qualcomm Snapdragon chips\n\n  Aside from the new stuff, there is still a lot going on for existing\n  socs and boards, including GPU hardware support on MediaTek MT8173\n  based laptops. Most patches actually add features this time, as the\n  compile-time diagnostic changes are slowing down\"\n\n* tag \u0027soc-dt-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (1022 commits)\n  arm64: dts: rockchip: Add Radxa E54C\n  dt-bindings: arm: rockchip: Add Radxa E54C\n  arm64: dts: rockchip: remove FRL GPIO for 100ASK DshanPi A1\n  arm64: dts: rockchip: fix M.2 E-key reset pinctrl on rk3588 rock-5-itx\n  arm64: dts: rockchip: add pcie30phy data-lanes on rk3588 coolpi-cm5-evb\n  arm64: dts: rockchip: Add the fan tachometers to Kobol Helios64\n  arm64: dts: rockchip: enable NPU on Radxa E52C\n  arm64: dts: rockchip: fix adc button voltage on Radxa E52C\n  riscv: dts: sophgo: sg2002-milkv-duo256m: drop reserved memory node\n  riscv: dts: sophgo: cv1800b-milkv-duo: drop reserved memory node\n  arm64: dts: nuvoton: npcm845-evb: Add peripheral nodes\n  arm64: dts: nuvoton: npcm845-evb: Fix DTS coding style\n  arm64: dts: nuvoton: npcm845: Add peripheral nodes\n  arm64: dts: nuvoton: npcm845: Split APB address ranges\n  riscv: dts: sophgo: cv180x: Fix internal ephy node name\n  riscv: dts: sophgo: add Milk-V Duo 256M ethernet support overlay\n  riscv: dts: sophgo: Limit SG2042 SPI NOR to 12.5 MHz\n  riscv: dts: sophgo: Enable SPI NOR on SRD3-10\n  riscv: dts: spacemit: set ETH MAC from eeprom for OrangePi\n  arm64: dts: allwinner: sun50i-h616: Add video engine\n  ...\n"
    },
    {
      "commit": "6876634d0fc254362ed6cc4f475c16ddd5e2c0eb",
      "tree": "c81988632f72bd9ccea6dbb4d1a80d3103c0dab2",
      "parents": [
        "2c2fe95ab19b09bef7391e3e5cdf8146d09792b6",
        "01a40ad5a9687ea5a837857d4b21ddd764be7aa3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:44:26 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:44:26 2026 -1000"
      },
      "message": "Merge tag \u0027mailbox-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jassibrar/mailbox\n\nPull mailbox updates from Jassi Brar:\n\n - altera: shut down RX polling timer on channel teardown\n\n - arm-mhu: timeout if receiver never comes up in mhuv2, keep combined\n   IRQ enabled during suspend in mhuv3, and drop redundant unregister on\n   probe failure in doorbell\n\n - axiado: fix RX frame draining and error handling, and fix debugfs\n   name truncation warning\n\n - bcm74110: cap rx_svc_init_list growth to prevent PMC-induced OOM\n\n - hisilicon: convert Hi3660 and Hi6220 bindings to DT schema\n\n - mtk-cmdq: fix runtime PM leak in cmdq_mbox_flush()\n\n - pcc: free channel before unmapping shared memory and serialize\n   channel updates with teardown\n\n - qcom: guard against NULL con_priv race in IPCC send_data, use\n   dev_name() for IRQ names, drop stray disable_irq_wake(), read 64-bit\n   register with readq() in CPUCP, drop redundant unregister on probe\n   failure, and add SDM670 and IPQ9650 APCS bindings\n\n - rockchip: prefix register defines, simplify device variant handling,\n   and convert to use dev_err_probe()\n\n - ti-msgmgr: add TDA54 main secure-proxy support and DT bindings, read\n   exact trailing bytes for non-word-aligned messages, and do not report\n   RX poll timeout as a send failure\n\n - misc: use designated initializers for acpi_device_id across drivers\n\n* tag \u0027mailbox-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jassibrar/mailbox: (27 commits)\n  mailbox: Use named initializers for acpi_device_id\n  mailbox: qcom-cpucp: read mbox hardware register using readq()\n  mailbox: qcom-ipcc: remove stray disable_irq_wake() call\n  mailbox: qcom-ipcc: Use dev_name() as IRQ name instead of a static counter\n  mailbox: qcom-ipcc: Guard against NULL con_priv in send_data()\n  mailbox: mtk-cmdq: Fix runtime PM leak in cmdq_mbox_flush()\n  mailbox: bcm74110: Cap rx_svc_init_list growth to prevent PMC-induced OOM\n  mailbox: arm_mhuv2: time out if the receiver never comes up\n  mailbox: altera: shut down RX polling timer on channel teardown\n  dt-bindings: mailbox: qcom: Add IPQ9650 APCS compatible\n  dt-bindings: mailbox: Convert hisilicon,hi6220-mbox to DT schema\n  dt-bindings: mailbox: Convert hisilicon,hi3660-mbox to DT schema\n  mailbox: ti-msgmgr: Read exact number of trailing message bytes\n  mailbox: ti-msgmgr: Do not report rx poll timeout as a send failure\n  mailbox: arm_mhuv3: Keep the combined IRQ enabled during system suspend\n  mailbox: arm_mhu_db: Remove redundant mbox_controller_unregister() on probe failure\n  mailbox: qcom-ipcc: Remove redundant mbox_controller_unregister() on probe failure\n  dt-bindings: mailbox: qcom: Add SDM670 APCS compatible\n  mailbox: rockchip: Convert to use dev_err_probe()\n  mailbox: rockchip: Simplify device variant handling\n  ...\n"
    },
    {
      "commit": "2c2fe95ab19b09bef7391e3e5cdf8146d09792b6",
      "tree": "6c7c7a675bf70ad1ad3ffc37d8620a58f0303d00",
      "parents": [
        "7e3f52ef2fe67ae9689496760ab6bd3d5d68ea6f",
        "60ccbc2343d37c65a76b736eb7cf41ce0ec343b8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:40:27 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:40:27 2026 -1000"
      },
      "message": "Merge tag \u0027hid-for-linus-2026102101\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid\n\nPull HID updates from Jiri Kosina:\n \"Core:\n   - OOB fix in s32ton() (Alan Stern)\n   - switch to named initializers for acpi_device_id (Pawel Zalewski)\n   - UAF fix in hiddev (Yousef Alhouseen)\n\n  AMD SFH:\n   - support for newer AMD SoCs (Basavaraj Natikar)\n   - sysfs attributes of operating-mode telemetry (Basavaraj Natikar)\n\n  Apple:\n   - power management fix for Apple Touch Bar (Andre Eikmeyer)\n   - fix for trackpad hanling on T2 Macs (Aditya Garg)\n\n  ASUS:\n   - power management fix for ROG Ally (Deni Benato)\n   - asus_work() hardening (Denis Benato)\n\n  Intel-THC:\n   - conversion of intel-thc-hid to hid_safe_input_report() (Even Xu)\n\n  Nintendo:\n   - support for Switch 2 controller (Vicki Pfau)\n   - support for PDP Afterglow controller (Aiman Najjar)\n\n  Roccat:\n  - fixes for proper handling of short reports (Jiale Yao)\n\n  Wacom:\n   - UAF fixes (Lee Jones)\n\n  .. other assorted fixes, device ID additions and code cleanups\"\n\n* tag \u0027hid-for-linus-2026102101\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (80 commits)\n  HID: nintendo: introduce dependency in USB_HID\n  HID: asus: add keyboard dock of the ASUS Transformer Book T302CHI device ID\n  HID: wacom: fix wacom_intuos_irq NULL pen_input deref\n  HID: hid-lenovo-go-s: Use devm_kzalloc for drvdata\n  HID: hid-lenovo-go-s: Move static led_classdev_mc to drvdata struct\n  HID: hid-lenovo-go-s: Reorganize and rename hid_gos_cfg\n  HID: hid-lenovo-go-s: Move attribute init to after device query\n  HID: hid-lenovo-go-s: Add suspend function and gate access under bool.\n  HID: hid-lenovo-go-s: Add kobject_uevent notify during reset-resume\n  HID: hid-lenovo-go-s: Use pm_ptr for reset_resume callback\n  HID: hid-lenovo-go-s: Prevent deadlock if device removed during setup\n  HID: hid-lenovo-go-s: Bound stale reply window before reusing send_cmd_complete\n  HID: hid-lenovo-go-s: Return ret instead of 0 in mcu_property_out()\n  HID: logitech-hidpp: cancel reset_hi_res_work on probe failure\n  HID: apple: ignore the trackpad on T2 Macs\n  HID: usbhid: skip interrupt IN polling for devices with no input reports\n  HID: mcp2221: always initialize and cancel init_work\n  HID: magicmouse: fix null pointer dereference in magicmouse_event()\n  HID: core: Fix out-of-bounds left shift by 32 in s32ton()\n  HID: asus: add support for xgm led\n  ...\n"
    },
    {
      "commit": "7e3f52ef2fe67ae9689496760ab6bd3d5d68ea6f",
      "tree": "ace6e4a6949fe4fd73c13e2b7bc799f106837df4",
      "parents": [
        "bb436f2a8568d14f176475c79b0d5069f0a6f9e3",
        "f63dc0eea92d07c5bb799a406571b555cd2bbd97"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:38:51 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:38:51 2026 -1000"
      },
      "message": "Merge tag \u0027auxdisplay-v7.4-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-auxdisplay\n\nPull auxdisplay updates from Andy Shevchenko:\n \"A tiny batch of auxdisplay changes, which resided in Linux next for\n  more than enough without any regression reports:\n\n   - Fix ABI documentation formatting\n\n   - Miscellaneous cleanups\"\n\n* tag \u0027auxdisplay-v7.4-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-auxdisplay:\n  docs: ABI: auxdisplay: use literal blocks for commands\n  auxdisplay: panel: use assign_bit() where applicable\n  auxdisplay: arm-charlcd: Use DEFINE_SIMPLE_DEV_PM_OPS for power management\n"
    },
    {
      "commit": "bb436f2a8568d14f176475c79b0d5069f0a6f9e3",
      "tree": "3dac357c4e7176ec0e1b3e42bdc9c14d4201659d",
      "parents": [
        "8279fb300585e0a8ee69bd0a12d343e59b6fe7be",
        "0f6be986ad0eb6fe7338d963a14eaf0dee87677d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:36:22 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:36:22 2026 -1000"
      },
      "message": "Merge tag \u0027i2c-7.4-part1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux\n\nPull i2c updates from Andi Shyti:\n \"The main changes are the new Novatek NT72676 driver, the qcom-cci\n  clock and timing updates and a collection of smaller driver, core and\n  DT binding improvements.\n\n  Core and helpers:\n   - acpi: run ASUS and Dell touchpads at 100 kHz to avoid lag\n   - core: return bool from check_functionality() and update users\n   - smbus: limit block reads to the caller\u0027s buffer size\n   - acpi: mark I2C transfer buffers as DMA-safe\n\n  Drivers:\n   - qcom-geni: several firmware node and runtime PM improvements\n   - qcom-cci: several patches rework clock selection and timings\n   - qcom-cci: enable SCL clock stretching\n   - imx-lpi2c: fix DMA mapping device selection and cleanup\n   - designware: tune RX FIFO thresholds to reduce interrupts\n   - i801: respect SPD write protection when probing DDR5 modules\n   - bcm2835: fully initialize clock configuration data\n\n  Generic cleanups:\n   - mux: simplify channel lookup and firmware node handling\n   - core, busses: tidy up ACPI device ID tables\n   - docs: clarify adapter lookup and fix a client driver example\n   - xlnx: update maintainer for Xilinx IIC bindings\n   - ljca: remove redundant adapter deletion\n\n  New support and DT bindings:\n   - add DW compatibles for Synaptics SL2610 and UltraRISC DP1000\n   - allow six DMA channels for R-Car Gen5\n   - add Allwinner A733 compatible to mv64xxx bindings\n   - add support for Novatek NT72676 (new driver)\"\n\n* tag \u0027i2c-7.4-part1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux: (37 commits)\n  i2c: imx-lpi2c: remove dmaengine_desc_free()\n  i2c: busses: use named initializers for acpi_device_id\n  i2c: i2c-core-acpi: use named initializers for acpi_device_id\n  i2c: i801: Gate SPD instantiation on SPD Write Disable bit\n  i2c: acpi: Use I2C_M_DMA_SAFE in acpi_gsb_i2c_[read|write]_bytes()\n  dt-bindings: i2c: dw: Add Synaptics sl2610 i2c\n  i2c: designware: size the RX FIFO threshold to the queued transfer\n  i2c: imx-lpi2c: use dmaengine_get_dma_device() for DMA mapping\n  docs: i2c: writing-clients: Add missing end of command\n  i2c: qcom-cci: skip core clock rates the clock cannot provide\n  i2c: core: document preference for i2c_get_adapter_by_fwnode()\n  i2c: qcom-cci: always enable SCL clock stretching\n  MAINTAINERS: Add entry for Novatek NT72676 I2C controller driver\n  i2c: nt72676: Add Novatek NT72676 I2C controller driver\n  dt-bindings: i2c: Add Novatek NT72676 I2C controller\n  i2c: acpi: Force ASUE140D touchpads to 100 kHz\n  i2c: qcom-cci: Enforce the required CCI clock rate\n  i2c: qcom-cci: Share the timing table across CCI revisions\n  i2c: qcom-cci: Add 19.2 MHz timings for the v2 CCI\n  i2c: qcom-cci: Support per-mode CCI clock rates\n  ...\n"
    },
    {
      "commit": "8279fb300585e0a8ee69bd0a12d343e59b6fe7be",
      "tree": "92d16536982b12ab0d7110a7b176c458104d5d4a",
      "parents": [
        "22cbcdafe135752082853355168460c730d1c4aa",
        "30167fadbf87fa901a2fee49c30a5c5a506a43e8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:34:52 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:34:52 2026 -1000"
      },
      "message": "Merge tag \u0027for-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux\n\nPull hte updates from Dipen Patel:\n\n - prevent releasing GPIO before time expires in the test code\n\n - initialize spin lock before registering the chip in the provider\n   driver\n\n* tag \u0027for-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pateldipen1984/linux:\n  hte: tegra194-test: shut down timer before GPIO release\n  hte: tegra194: Initialize slice locks before registering chip\n  hte: tegra194: Remove redundant dev_err()\n"
    },
    {
      "commit": "22cbcdafe135752082853355168460c730d1c4aa",
      "tree": "db72161f4ac6693ead6ee146a366512e1c7abec0",
      "parents": [
        "0e557fc68a1667183b5f4649ee76e833160c6714",
        "6276c8195e598361942082423114877265c17692"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:32:49 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:32:49 2026 -1000"
      },
      "message": "Merge tag \u0027watchdog-for-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging\n\nPull watchdog updates from Guenter Roeck:\n \"Core/generic:\n   - Replace __MODULE_STRING() with __stringify()\n   - Use assign_bit() where applicable\n   - Use DEFINE_SIMPLE_DEV_PM_OPS and pm_sleep_ptr for dev_pm_ops\n   - Fix repeated words and typos in comments\n   - Differentiate scenarios when watchdog is closed\n\n  Added device support in existing drivers:\n   - mtk_wdt: Support for MediaTek MT8167 and MT8127\n   - apple_wdt: Support for T8140\n   - s3c2410_wdt: Support for Exynos 5515\n\n  Various other minor bug fixes and improvements\"\n\n* tag \u0027watchdog-for-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (22 commits)\n  watchdog: mediatek: Apply the driver\u0027s mode to a watchdog left running\n  dt-bindings: watchdog: apple,wdt: Add t8140 compatible\n  watchdog: Replace __MODULE_STRING() with __stringify()\n  watchdog: use assign_bit() where applicable\n  watchdog: mediatek: Add support for mt8167 toprgu/watchdog\n  dt-bindings: watchdog: Add compatible for MediaTek mt8167\n  watchdog: sp805_wdt: fix suspend/resume handling of HW_RUNNING watchdog\n  watchdog: PM: use DEFINE_SIMPLE_DEV_PM_OPS and pm_sleep_ptr for dev_pm_ops\n  watchdog: mediatek: Add wdt/toprgu resets for mt6589\n  watchdog: msc313e: Replace commas with semicolons in probe()\n  watchdog: sp805: Replace SIMPLE_DEV_PM_OPS with DEFINE_SIMPLE_DEV_PM_OPS\n  watchdog: fix repeated words in comments\n  watchdog: fix typos in comments\n  watchdog: i6300esb: do not stop an already running watchdog\n  dt-bindings: watchdog: mediatek: Add MT8127\n  watchdog: Differentiate scenarios when watchdog is closed\n  dt-bindings: watchdog: renesas,r9a09g057-wdt: Add CPG/MSSR syscon support\n  watchdog: mediatek: acknowledge pretimeout interrupt\n  watchdog: s3c2410_wdt: Add exynos5515-wdt compatible data\n  dt-bindings: watchdog: samsung-wdt: Add exynos5515-wdt compatible\n  ...\n"
    },
    {
      "commit": "0e557fc68a1667183b5f4649ee76e833160c6714",
      "tree": "9ba10d6cbfc66303c188bc8abf7c2563d9279969",
      "parents": [
        "03480653ddfd1b004dc622acb4fa913b05c3edaa",
        "6d318db9ffcb611f9b3b6b3201c963690541a943"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:31:02 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:31:02 2026 -1000"
      },
      "message": "Merge tag \u0027pmdomain-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm\n\nPull pmdomain updates from Ulf Hansson:\n \"pmdomain core:\n   - Add a genpd config to support unknown initial status\n   - Add support system wide resume latency constraints\n   - Enable a non-CPU device in a CPU PM domain to do power on\n   - Fall back to use device node name for domain idle states\n\n  pmdomain providers:\n   - cpuidle-psci: Initialize the PM domains in powered off state for OSI\n   - cpuidle-psci: Move initialization a bit earlier in the boot sequence\n   - qcom: Add NMXC power domain for Nord\n   - qcom: Add support for SM7250, Kuno and MSM8952 power domains\n   - renesas: Add support for r8a774a3 SYSC power domains\n   - renesas: Fix lockdep false positive for r8a78000\n   - riscv: Add RPMI device power service\n   - st: Add the actual power domains on U8500\n   - st: Convert Ux500 PM domains to schema\n\n  pm qos:\n   - Add a flag for system wide latency constraints\n   - Add lockless read for flags\"\n\n* tag \u0027pmdomain-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm: (36 commits)\n  dt-bindings: arm: Add the actual power domains on U8500\n  dt-bindings: arm: ux500: Drop NR_DOMAINS\n  dt-bindings: power: Convert Ux500 PM domains to schema\n  dt-bindings: power: rpmpd: Add MSM8952 power domains\n  pmdomain: rockchip: drop duplicated errno from supply failure message\n  pmdomain: core: add support system-wide resume latency constraints\n  pmdomain: core: add genpd_for_each_child() helper\n  PM / QoS: add lockless read for flags\n  PM / QoS: add flag to indicate latency applies system-wide\n  pmdomain: renesas: rcar-sys: Add r8a774a3 support\n  dt-bindings: power: Add r8a774a3 SYSC power domain definitions\n  dt-bindings: power: renesas,rcar-sysc: Document vendor-prefixed header paths\n  pmdomain: imx93-blk-ctrl: Use pm_runtime_resume_and_get()\n  pmdomain: imx8m-blk-ctrl: Use pm_runtime_resume_and_get()\n  pmdomain: imx: gpcv2: Use pm_runtime_resume_and_get()\n  pmdomain: rockchip: Fix domain check in rockchip_pm_add_one_domain()\n  pmdomain: core: Fall back to node name for idle states\n  pmdomain: renesas: r8a78000: Fix lockdep false positive\n  pmdomain: fix typo \"releated\" in comment\n  pmdomain: imx: Propagate SCU provider registration failures\n  ...\n"
    },
    {
      "commit": "03480653ddfd1b004dc622acb4fa913b05c3edaa",
      "tree": "5523a2d035f09a3dfbb57c09f359b13c0ddf026f",
      "parents": [
        "9aa54fb74ead1737b92a9dc2f7a5d9d5e48dc7b5",
        "fd9af27f6c2319713bb23832066585f8a59a1771"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:29:07 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:29:07 2026 -1000"
      },
      "message": "Merge tag \u0027mmc-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc\n\nPull MMC updates from Ulf Hansson:\n \"MMC core:\n   - Add a power-off-delay-us DT property to support HW specific delays\n   - Add mmc_send_tuning_timeout() to allow hosts to specify a timeout\n   - Enable hosts to control the re-programming of the crypto keys\n\n  MMC host:\n   - dw_mmc: Add a common watchdog and convert the various timeouts to use it\n   - dw_mmc: Expose the watchdog state in debugfs\n   - dw_mmc-rockchip: Use a tighter per command tuning timeout\n   - greybus-sdio: Convert to devm_mmc_alloc_host()\n   - meson-gx: Enable the bus pipeline clock on T7\n   - rtsx_usb_sdmmc: Start card power-up at 3.3V\n   - sdhci-cadence: Add Altera Agilex5 SD6HC support\n   - sdhci-cadence: Add Cadence SD6HC support\n   - sdhci-msm: Add support for the MSM8952 and Maili variants\n   - sdhci-msm: Use pm ops to better manage restoring of crypto keys\n   - sdhci-of-dwcmshc: Disable CQE error halt request for Rockchip\n   - sdhci-pxav3: Disable clock inversion for SD HS cards\n   - sunplus: Fixup initialization for DDR modes\n   - sunxi: Add support for Allwinner B288\n   - vub300: Remove the driver for the obsolete HW\"\n\n* tag \u0027mmc-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (43 commits)\n  dt-bindings: mmc: sun4i-a10-mmc: add Allwinner B288\n  mmc: dw_mmc-rockchip: use a tighter per-command tuning timeout\n  mmc: core: add mmc_send_tuning_timeout()\n  mmc: sdhci-of-dwcmshc: Disable CQE error halt request for Rockchip\n  dt-bindings: mmc: sdhci-msm: Add MSM8952 compatible\n  mmc: use assign_bit() where applicable\n  mmc: sdhci-pci: Replace deprecated PCI functions\n  mmc: sunplus: initialise rd_crc_dly\u003d1 for DDR modes\n  mmc: core: fix stale mmc_start_req() references in comments\n  docs: mmc: fix stale async request documentation\n  docs: mmc: document eMMC health status support in mmc-tools\n  mmc: cavium-thunderx: Drop redundant calls to get|put_device()\n  mmc: core: Turn mmc_alloc|free_host() into static functions\n  staging: greybus: sdio: Convert to devm_mmc_alloc_host()\n  mmc: vub300: Remove the driver for the obsolete HW\n  mmc: dw_mmc: remove unused slot member\n  mmc: sdhci-pxav3: avoid of_node\n  CREDITS: Add Pierre Ossman\n  mmc: fix typos in comments\n  mmc: meson-gx: enable the bus pipeline clock on T7\n  ...\n"
    },
    {
      "commit": "9aa54fb74ead1737b92a9dc2f7a5d9d5e48dc7b5",
      "tree": "c6c88491978082614d156ae91e58aa9e2169a2a0",
      "parents": [
        "6ef8f742f9008132db003313bf7a6ca2edb8bbae",
        "2dee91ee94eec85d09c13c7ca83e3005906d3732"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:23:27 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:23:27 2026 -1000"
      },
      "message": "Merge tag \u0027regmap-v7.4-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nPull regmap updates from Mark Brown:\n \"This is a relatively busy release, mostly due to the general cleanup\n  work which people have been doing throughout the kernel - for regmap\n  that\u0027s mostly been some work from Peng Fan.\n\n  I also added some more tests for the sparse caches to catch some\n  gotchas people might run into trying to improve the maple cache.\n\n   - Test very high register numbers to help people avoid a nasty gotcha\n     trying to optimise the maple cache\n\n   - Make more use of scoped lock and allocation guards\n\n   - A couple of other smaller improvements and fixes\"\n\n* tag \u0027regmap-v7.4-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:\n  regmap: debugfs: Use __free(kfree) for regmap_reg_ranges_read_file\n  regmap: debugfs: Use guard to simplify code\n  regmap: debugfs: Use __free(kfree) in regmap_name_read_file()\n  regmap: fix potential double-free of map-\u003ereg_defaults on cache reinit\n  regmap: use krealloc_array() in regmap_register_patch()\n  regcache: simplify control flow and reduce nesting\n  regcache: extract __regcache_sync() to deduplicate sync dispatch\n  regcache: extract locked helpers to replace open-coded lock/unlock pairs\n  regmap: debugfs: use the regmap scoped lock guard\n  regcache: rbtree: use the regmap scoped lock guard\n  regcache: use the regmap scoped lock guard\n  regmap: convert lock/unlock to a scoped guard\n  regmap: fix typo \"asynchrnous\" in comment\n  regmap: Test rbtree and maple caches for very high register numbers\n  regmap: Allow a base register to be specified for the RAM regmap\n"
    },
    {
      "commit": "6ef8f742f9008132db003313bf7a6ca2edb8bbae",
      "tree": "a0320a0403df3621a688d2e9424c676aa81ae850",
      "parents": [
        "003e5a0c479e16f06b7684a1b82543aa941a5043",
        "d5acef12e819c1627c8bf6a0325845ab39d8c99d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:16:16 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:16:16 2026 -1000"
      },
      "message": "Merge tag \u0027spi-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi\n\nPull spi updates from Mark Brown:\n \"Quite a lot of work in the SPI subsystem this time around, almost all\n  in drivers rather than the core.\n\n  As well as the general cleanup/fix work we\u0027re seeing over most of the\n  kernel there\u0027s been some substantial performance work to two existing\n  drivers and support for a number of new devices including a couple of\n  new drivers. There was also a big overhaul of the spidev_test utility\n  from the Pengutronix people.\n\n   - Improvements for spidev_test to cover additional use cases, plus be\n     a bit easier to use.\n\n   - Substantial performance work in both DesignWare and Tegra210 QSPI\n     drivers, making their interrupt handling more efficient to drive up\n     hardware utilisation.\n\n   - Documentation clarifications.\n\n   - Fixes for some runtime PM and error handling issues.\n\n   - Support for Nuvoton MA35D1, Qualcomm QPIC SNAND v2, Renesas R-Car\n     Gen5 and X5H and Realtek RTD1625\"\n\n* tag \u0027spi-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (136 commits)\n  spi: ch341: handle transfers without a TX or RX buffer\n  spi: dt-bindings: spi-qpic-snand: Add IPQ9650 compatible\n  spi: spi-pci1xxxx: quiesce DMA engines on transfer timeout\n  spi: amd: fix len\u003d\u003d0 underflow and FIFO overflow\n  spi: tegra114: initialize native chip selects inactive\n  spi: bcm-qspi: reject oversized dummy bytes in mspi exec_mem_op\n  spi: npcm-fiu: limit UMA data_size to the 16-byte staging buffer\n  spi: omap2-mcspi: handle DMA setup failures\n  spi: jcore: fix divide-by-zero when speed_hz is zero\n  spi: cadence-xspi: fix stack buffer overflow in the Marvell b0 path\n  spi: cadence-xspi: reject SDMA transfers larger than the requested length\n  spi: meson-spicc: fix invalid DMA unmap on mapping failure\n  spi: s3c64xx: Use snprintf() instead of sprintf()\n  spi: omap2-mcspi: Use snprintf() instead of sprintf()\n  spi: tle62x0: Use kstrtoul() instead of simple_strtoul()\n  spi: lm70llp: Use strscpy() instead of strcpy()\n  spi: butterfly: Use strscpy() instead of strcpy()\n  spi: jcore: Use devm_platform_ioremap_resource()\n  spi: sh-hspi: Use devm_platform_ioremap_resource()\n  spi: ljca: validate the response length before copying the data\n  ...\n"
    },
    {
      "commit": "003e5a0c479e16f06b7684a1b82543aa941a5043",
      "tree": "1e03fe19b81e1d03b99de0cca5830cb2dbf7b588",
      "parents": [
        "5a12cbf26134d417531289e89375bbe580803dec",
        "ba83dd4a47bb47da3d2791b2ad6cd816a851b5d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:08:48 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:08:48 2026 -1000"
      },
      "message": "Merge tag \u0027regulator-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator\n\nPull regulator updates from Mark Brown:\n \"This is quite a quiet release, especially given the general onslaught\n  of cleanup patches seen elsewhere. There is some of that, but not as\n  much as I\u0027m seeing elsewhere relatively to the size of the subsystem.\n  We do have some new drivers as well, plus Linus Walleij has done a big\n  overhaul of the AB8500 driver including feature buildout.\n\n   - Substantial cleanups and feature additions for the ST Ericsson AB8500\n\n   - Overhaul of the configuration for the LP872x.\n\n   - A bunch of DT binding conversions\n\n   - Support for Maxim MAX20024, MPS MPQ4210, Nexperia NEX10000UB\"\n\n* tag \u0027regulator-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (60 commits)\n  regulator: rpi-panel-attiny: Fix probe failure after a host cold boot\n  regulator: lp872x: Use macro to fill regulator descriptor\n  regulator: lp872x: Add support for input and regulator power supplies\n  regulator: lp872x: Remove platform_data based probing\n  regulator: lp872x: Remove redundant regmap wrappers\n  regulator: lp872x: Fold driver header into driver file\n  regulator: dt-bindings: ti,lp872x: Document input supplies\n  regulator: dt-bindings: ti,lp872x: Deprecate ti,dvs-gpio and ti,update-config\n  regulator: dt-bindings: sy8827n: support standard properties\n  regulator: dt-bindings: Reference Tegra regulator coupling schema\n  regulator: dt-bindings: nvidia,tegra-regulators-coupling: Convert to DT schema\n  regulator: dt-bindings: ti,lp872x: Convert to DT schema\n  regulator: dt-bindings: Drop obsolete MAX8925 .txt binding\n  regulator: 88pm886: Add Vbus regulator\n  regulator: core: Export helpers used by regulator couplers\n  regulator: core: Fix coupled regulators reference leak on removal\n  regulator: dt-bindings: ti,tps6586x: Convert to DT schema\n  regulator: dt-bindings: Add MAX20024 sd4\n  regulator: dt-bindings: Convert mediatek,mt6380-regulator to DT schema\n  regulator: mp886x: fix pontential division by zero\n  ...\n"
    },
    {
      "commit": "5a12cbf26134d417531289e89375bbe580803dec",
      "tree": "c694976186da755776bcae583317495ec608e851",
      "parents": [
        "bfa231bb4c7eae56b9967da19d1678bf0847259d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:03:40 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 07:03:40 2026 -1000"
      },
      "message": "rust: missed rustfmt fix up in rust/kernel/mem.rs\n\nMiguel had mentioned this rustfmt issue, but I overlooked this one when\ndoing the driver core merge.\n\nMake rustfmt happy again.\n\nReminded-by: Miguel Ojeda \u003cojeda@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bfa231bb4c7eae56b9967da19d1678bf0847259d",
      "tree": "857a1be5784d9e9600ea1dac5fcd6e4bd67a7eec",
      "parents": [
        "74b1dbf6f236f4fe88bd1077ae4657ca4b2c339e",
        "47f16cf7a6017212230985f6bc7f1b55b6d234d9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 06:59:20 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 06:59:20 2026 -1000"
      },
      "message": "Merge tag \u0027gpio-updates-for-v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux\n\nPull gpio updates from Bartosz Golaszewski:\n \"Nothing stands out as particularly interesting, it\u0027s been a calm\n  cycle. We have three new drivers, support for more models and lots of\n  updates across many modules (details are in the signed tag as usual).\n  There are also some minor changes and additions to the in-kernel GPIO\n  API.\n\n  GPIO core:\n   - provide a new controller API: gpiochip_generic_get_config()\n   - return -EOPNOTSUPP instead of -ENODEV to user-space if it requests\n     hardware timestamping on systems where it\u0027s unavailable (no\n     user-space regressions reported)\n\n  New drivers:\n   - add a driver for ROHM BD73800 PMIC GPIO controller\n   - add a driver for Axiado AX3005 SGPIO controller\n   - add a driver for Analog Devices AD7768 GPIO controller\n\n  New hardware support:\n   - extend gpio-rcar with support for R-Car X5H (R8A78000)\n   - extend gpio-tegra186 with support for Tegra 268\n\n  Driver changes:\n   - refactor and improve gpio-rtd1625: switch to modern or better\n     fitting interfaces and improve coding style\n   - improve error handling of return values of\n     platform_get_irq_optional() in several drivers\n   - normalize the return value of the gpio_chip::get() callback in\n     gpio-siox in order to not propagate invalid values up to the GPIO\n     core\n   - implement gpio_chip::get_direction() for gpio-pcf857x\n   - use managed variants of notifier registration functions in several\n     drivers\n   - remove legacy gpio_set_value_cansleep() as it has no more users\n   - add pinctrl support to gpio-realtek-otto\n   - add runtime PM support to the gpio-regmap helper module\n   - add more ACPI GPIO quirks for various hardware\n   - stop needlessly reading gpio_chip::base in gpio-pxa\n   - add support for tracking of direction of generic GPIO chips with no\n     direction registers via pinctrl backend to gpio-mmio (use the new\n     core API: gpiochip_generic_get_config())\n   - use the \"safe\" variants of debugfs_create_file() in\n     gpio-sloppy-analyzer\n   - use device name as GPIO chip label in gpio-omap\n   - refactor bit ops in gpio-dln2\n   - prepare gpio-it87 for upcoming kmalloc_obj() conversion\n\n  Devicetree bindings:\n   - document new model in gpio-pca95xx\n   - allow the gpio-hogs property in gpio-zynq and fsl,qoriq-gpio\n   - allow the gpio-ranges property in gpio-realtek-otto\n\n  Misc fixes:\n   - add missing MODULE_ALIAS() to gpio-crystalcove\n   - fix a comment typo in example GPIO tools\n   - fix unbalanced brackets in documentation\n   - add names to regmaps in gpio-mvebu to avoid collisions in debugfs\n     output\n   - fix GPIO lookup using relative paths in GPIO ACPI\"\n\n* tag \u0027gpio-updates-for-v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (63 commits)\n  gpiolib: acpi: Fix GPIO lookup using relative path\n  gpio: legacy: Kill gpio_set_value_cansleep()\n  dt-bindings: gpio: pca95xx: add onnn,pca9655 with nxp,pca9555 fallback\n  gpiolib: acpi: Ignore GPIO 11 interrupt on Acer Nitro V 16S AI\n  gpio: pxa: stop reading gpio_chip::base in direction callbacks\n  gpio: axiado: add AX3005 SGPIO controller support\n  dt-bindings: gpio: add Axiado AX3005 SGPIO controller\n  gpiolib: acpi: Add quirk for Lenovo IdeaPad Slim 3 15ABR8\n  MAINTAINERS: Add ROHM BD73800 PMIC files\n  gpio: bd73800: Support ROHM BD73800 PMIC GPIOs\n  clk: bd718x7: Support ROHM BD73800\n  regulator: bd71828: Support ROHM BD73800\n  rtc: bd70528: Support RTC on ROHM BD73800\n  mfd: Support for ROHM BD73800 PMIC core\n  dt-bindings: mfd: ROHM BD73800 PMIC\n  dt-bindings: regulator: ROHM BD73800 regulators\n  dt-bindings: rohm,bd*: Ref common ROHM bindings\n  dt-bindings: mfd: Common ROHM PMIC properties\n  gpio: siox: normalize return value of gpio_get()\n  gpio: dln2: use assign_bit() where applicable\n  ...\n"
    },
    {
      "commit": "74b1dbf6f236f4fe88bd1077ae4657ca4b2c339e",
      "tree": "8ac15152cc01c612f89c25232b7e2738ae902b48",
      "parents": [
        "b0e1eda687a2f19a8fa3958303fbb45d493ea46b",
        "eadea156f11b2c9a780b60c1699c2da145c9d1f2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 06:56:33 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 06:56:33 2026 -1000"
      },
      "message": "Merge tag \u0027pwrseq-updates-for-v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux\n\nPull power sequencing updates from Bartosz Golaszewski:\n \"The bulk of added lines are kunit tests that comprehensively verify\n  the core functionality of the power sequencing framework.\n\n  Other than that, we have another pwrseq driver: Renesas RZ/G3L Power\n  Ready and support for more models in pwrseq-pcie-m2. We also added a\n  new consumer-facing API in the form of pwrseq_is_controllable()\n  function which allows consumers to check if a given target resource is\n  actually host-controllable.\n\n  Summary:\n\n  Power sequencing core:\n   - add a suite of kunit test cases for the power sequencing core\n     functionalities\n   - provide a new consumer API: pwrseq_is_controllable()\n\n  New Drivers:\n   - add the Renesas RZ/G3L Power Ready driver which provides\n     information on power readiness for various IPs on RZ/G3L\n\n  Driver changes:\n   - use pwrseq_is_controllable() to report controllability to consumers\n     in pwrseq-qcom-wcn and pwrseq-pcie-m2\n   - add support for PCIe switch topologies to pwrseq-pcie-m2\n   - add the PCI ID for Foxconn WCN7850 to pwrseq-pcie-m2\"\n\n* tag \u0027pwrseq-updates-for-v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:\n  power: sequencing: pcie-m2: Add Foxconn WCN7850 subsystem PCI ID\n  power: sequencing: qcom-wcn: Report power controllability\n  power: sequencing: pcie-m2: Report power controllability\n  power: sequencing: Add pwrseq_is_controllable() API\n  power: sequencing: add kunit test cases\n  power: sequencing: pwrseq-pcie-m2: Support PCIe switch topologies\n  power: sequencing: Add Renesas RZ/G3L Power Ready driver\n"
    },
    {
      "commit": "b0e1eda687a2f19a8fa3958303fbb45d493ea46b",
      "tree": "5b93d55489e7299b5649c5afbd66e24c55cacbe7",
      "parents": [
        "7be4bc52fd9e0e55dc9a2e0232b89427d2c4b614",
        "00e917df050d79ac26ec700717680ad6421d2808"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 06:44:27 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 22 06:44:27 2026 -1000"
      },
      "message": "Merge tag \u0027pwm/for-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux\n\nPull pwm updates from Uwe Kleine-König:\n \"The usual mix of fixes for older issues, devicetree changes and\n  cleanups.\n\n  Part of this is a shared branch that introduces device-managed\n  variants of atomic_notifier_chain_register() and\n  blocking_notifier_chain_register()\"\n\n* tag \u0027pwm/for-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux:\n  dt-bindings: pwm: Add IPQ5210 binding\n  pwm: tiehrpwm: Clear period on disable to allow reconfiguration\n  pwm: Allow 32-bit tasks to use the character device\n  pwm: lp3943: fix NULL pointer dereference for an unconfigured channel\n  pwm: mtk-disp: Fix period readback\n  pwm: ipq: Prevent potential 32-bit integer overflow in hi_div calculation\n  pwm: loongson: Reload PWM configuration through counter reset\n  pwm: Fix typos in comments\n  dt-bindings: pwm: Convert TI PWM Subsystem to DT schema\n  docs: pwm: Fix bracket and punctuation\n  pwm: iqs620a: Use devm_blocking_notifier_chain_register()\n  pwm: renesas-tpu: Fix runtime PM reference leak\n  notifier: add device-managed registration APIs\n"
    },
    {
      "commit": "47193113641e5e1f9b5758b73d7b7a0273acb836",
      "tree": "6eeec07677ff10922fe134ffb3bbb140b27f7380",
      "parents": [
        "72d3fcf802c45d00b300f25b848a93c3a2bd7c7e"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Mon Sep 28 20:17:32 2026 -0300"
      },
      "committer": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Thu Oct 22 10:31:23 2026 -0300"
      },
      "message": "coco/tsm: Update maintainership\n\nWith Dan\u0027s passing Alexey, Aneesh and Jason have volunteered to take this\non, with the support of their employers.\n\nReviewed-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nReviewed-by: Leon Romanovsky \u003cleon@kernel.org\u003e\nReviewed-by: Lukas Wunner \u003clukas@wunner.de\u003e\nAcked-by: Aneesh Kumar K.V (Arm) \u003caneesh.kumar@kernel.org\u003e\nAcked-by: Suzuki K Poulose \u003csuzuki.poulose@arm.com\u003e\nAcked-by: Mathieu Poirier \u003cmathieu.poirier@linaro.org\u003e\nAcked-by: Jonathan Cameron \u003cjonathan.cameron@oss.qualcomm.com\u003e\nAcked-by: Dave Jiang \u003cdave.jiang@intel.com\u003e\nAcked-by: Ankit Agrawal \u003cankita@nvidia.com\u003e\nSigned-off-by: Jason Gunthorpe \u003cjgg@nvidia.com\u003e\n"
    },
    {
      "commit": "7be4bc52fd9e0e55dc9a2e0232b89427d2c4b614",
      "tree": "c5705f05f97dd869c257a1c35db062eba3fbd5c6",
      "parents": [
        "4403278e4ea2f654f8130a5c03eb8b4516a0f201",
        "d4ffc4896b3e709c6a5d7e5a78a1fddfc774fa25"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 18:53:14 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 18:53:14 2026 -1000"
      },
      "message": "Merge tag \u0027driver-core-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/driver-core/driver-core\n\nPull driver core updates from Danilo Krummrich:\n \"Core:\n\n   - Add TAINT_FORCED_BIND to taint the kernel and driver module before\n     manual sysfs bind/unbind operations; make add_taint_module()\n     available to driver core and update taint decoding tools and\n     documentation\n\n   - Constify device_show/store_*() attribute parameters and adapt x86\n     MCE and perf users to prepare for const dev_ext_attribute instances\n\n   - Fix UAF in NUMA access node registration failure handling by\n     dropping the device reference with put_device() instead of directly\n     freeing the node\n\n  debugfs:\n\n   - Make debugfs_create_str() read-only to eliminate double-free races\n     between concurrent writers; reject writable modes; convert\n     interconnect and SoundWire users to local file operations with\n     mutex-protected strings\n\n  kobject:\n\n   - Fix out-of-bounds access in kobject_action_type() when parsing\n     action strings containing embedded NUL bytes\n\n   - Fix the kobject_set_name() reference in kset_register() kernel-doc\n\n  Rust:\n\n   - DMA:\n\n      - Tie Coherent, CoherentBox and CoherentHandle to the device\u0027s\n        bound lifetime to prevent retaining DMA allocations beyond\n        driver unbind; propagate the lifetime through nova-core and the\n        DMA sample driver\n\n   - I/O:\n\n      - Require explicit base types for registers and replace relative\n        registers with typed subregion projections; reimplement\n        register!() as a proc macro, support registers using existing\n        types without inline bitfields, and convert nova-core, Tyr and\n        the PCI sample; add AsRepr/AsReprMut and transmute helpers with\n        deferred size checks for representation conversions\n\n      - Wrap ResourceSize in a transparent newtype with explicit\n        conversions, including checked conversion to usize\n\n   - PCI:\n\n      - Add typed PCIe extended capability lookup and SR-IOV accessors\n        for the First VF Offset and decoded VF BAR addresses and widths,\n        keeping raw SR-IOV registers private to preserve PCI core\n        ownership of their state\n\n   - scatterlist:\n\n      - Honor the device\u0027s maximum segment size as well as the DMA\n        mapping limit when constructing SG tables\n\n      - Return u32 from SGEntry::dma_len() to match the C segment length\n        type\n\n   - misc:\n\n      - Validate auxiliary DeviceId name length explicitly to improve\n        compile-time diagnostics for oversized device ID table entries\n\n      - Drop unnecessary \u0027static bounds from debugfs ScopedDir file\n        creation methods to support data containing non-\u0027static\n        references, including DMA buffers\n\n  Misc:\n\n   - Add Johan Hovold as driver core maintainer\n\n   - Simplify platform_device_alloc() by returning early on allocation\n     failure\n\n   - Fix typos in driver core and kernfs comments\"\n\n* tag \u0027driver-core-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/driver-core/driver-core: (41 commits)\n  rust: pci: add extended capability and SR-IOV support\n  kobject: Fix the kobj_set_name reference in kset_register() kernel-doc\n  rust: io: convert ResourceSize into a transparent newtype\n  rust: scatterlist: return u32 from SGEntry::dma_len()\n  MAINTAINERS: add myself as driver core maintainer\n  debugfs: make debugfs_create_str() read-only\n  soundwire: debugfs: replace writable string helper\n  interconnect: debugfs: replace writable string helper\n  docs: admin-guide: Handle TAINT_FORCED_BIND when parsing /proc/sys/kernel/tainted\n  driver core: platform: Simplify platform_device_alloc()\n  kobject: fix out-of-bounds access in kobject_action_type()\n  rust: scatterlist: honor the device\u0027s maximum segment size\n  driver core: add TAINT_FORCED_BIND for when userspace manually messes with devices and drivers\n  module: fix up documentation for add_taint() and add_taint_module()\n  module: pull out add_taint_module() to be public\n  driver core: Constify the signature of device_show/store_*()\n  drivers: perf: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute\n  x86/mce: Use __DEVICE_ATTR() macro to initialize dev_ext_attribute\n  rust: auxiliary: validate DeviceId name length\n  driver core: fix typos in comments\n  ...\n"
    },
    {
      "commit": "4403278e4ea2f654f8130a5c03eb8b4516a0f201",
      "tree": "921a7aaf5b1143c9cb2f9b9a4828280208c03616",
      "parents": [
        "df37e3924292fb41d325721008520ba93deced42",
        "503bb6e70bbf6304b8113373d09dfffcc4aa9183"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 14:38:01 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 14:38:01 2026 -1000"
      },
      "message": "Merge tag \u0027thermal-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull thermal control updates from Rafael Wysocki:\n \"These are mostly updates of thermal drivers including a new Exynos\n  ACPM thermal driver for Google GS101, new Renesas RZ/G3L thermal\n  sensor support, new Qualcomm MSM8952 TSENS support, new Qualcomm\n  PMAU0102 Master BandGap temperature monitor support in DT bindings,\n  and new rugged Panther Lake support in intel_tcc_cooling. Moreover,\n  the AN7583 driver is extended to register separate thermal zones for\n  bandgap, GbE and CPU (its DT bindings are updated accordingly).\n\n  There are also multiple fixes and assorted cleanups, as usual.\n\n  Specifics:\n\n   - Make the Intel powerclamp thermal driver reject invalid window_size\n     values, drop redundant clamp() from duration_set() in it, and\n     simplify 4 functions in it (Thorsten Blum)\n\n   - Add rugged Panther Lake support to the intel_tcc_cooling thermal\n     driver (Srinivas Pandruvada)\n\n   - Fix temperature selection around 0 C in the int340x thermal driver,\n     drop redundant else from proc_thermal_add() in it, and simplify\n     slider_def_*_set() in it (Thorsten Blum)\n\n   - Drop unbalanced paren from cpu-idle-cooling.rst (Manuel Ebner)\n\n   - Use %pe to print error pointers symbolically in the thermal control\n     code and fix assorted typos in comments in it (Sumeet Pawnikar and\n     Hemanth Selam)\n\n   - Add the Exynos ACPM thermal driver for Google GS101, along with DT\n     bindings and a MAINTAINERS entry (Tudor Ambarus)\n\n   - Add Renesas RZ/G3L thermal sensor support and DT bindings, and move\n     default calibration values to per-SoC match data (Biju Das)\n\n   - Add Qualcomm MSM8952 TSENS support and the corresponding DT binding\n     compatible (Muzaffer Kadir)\n\n   - Document the Qualcomm PMAU0102 Master BandGap temperature monitor\n     compatible in the DT bindings (Dhruvin Rajpura)\n\n   - Extend the QCom TSENS v2 trip temperature limits to the hardware\n     range of -204°C to +204°C to prevent interrupt storms when\n     operating beyond the previous software limits (Priyansh Jain)\n\n   - Fix temperature threshold map indexing in the QCom SPMI temperature\n     alarm driver to prevent out-of-bounds reads (Georgi Djakov)\n\n   - Describe the additional bus clock required by the Amlogic T7\n     thermal sensor and switch the driver to the clk_bulk API to manage\n     multiple clocks (Ronald Claveau)\n\n   - Request the Airoha EN7581 IRQ after thermal zone registration to\n     prevent the interrupt handler from accessing an unregistered or\n     already freed thermal zone (Vitaliy Sochnev)\n\n   - Fix the Airoha AN7583 ADC mux field mapping, serialize access to\n     the shared ADC, and verify mux selection to avoid invalid\n     temperature readings and spurious critical shutdowns (Vitaliy\n     Sochnev)\n\n   - Register separate thermal zones for the AN7583 bandgap, GbE and CPU\n     sensors, and update the DT bindings to use one thermal sensor cell\n     to select the sensor (Vitaliy Sochnev)\n\n   - Fix signed integer overflow in the Renesas RZ/G3E\n     temperature-to-code conversion, preserve compare interrupt state\n     across runtime PM, and prevent overlapping temperature conversions\n     (Ovidiu Panait)\n\n   - Remove redundant trip window validation and runtime PM\n     pm_runtime_mark_last_busy() calls from the Renesas RZ/G3E driver\n     (Ovidiu Panait)\n\n   - Propagate reset assertion failures from Renesas RZ/G3E suspend and\n     attempt to restore power if the sensor was active (Pengpeng Hou)\n\n   - Stop the TI bandgap alert IRQ before removing sensor interfaces and\n     cancel pending alert work to prevent use-after-free on driver\n     removal (Weigang He)\n\n   - Validate Spreadtrum sensor IDs read from the device tree before\n     using them for register offsets and array indexing (Weigang He)\n\n   - Convert the TI OMAP bandgap DT bindings to schema and document the\n     DRA752 compatible and thermal sensor cells (Bhargav Joshi)\n\n   - Use DT property helpers matching the signed temperature and\n     unsigned hysteresis types defined by the thermal zone bindings (Rob\n     Herring)\n\n   - Reuse common error handling code in the power allocator governor\n     bind callback (Markus Elfring)\n\n   - Constify the thermal zone device operations in the i.MX9 driver\n     (Christophe JAILLET)\n\n   - Fix kernel-doc parameter names and firmware node references in the\n     cooling device registration helpers (Aryan Sinha)\n\n   - Correct the documented return value of ti_bandgap_get_sensor_data()\n     to describe validation errors and potentially NULL stored data\n     (Karl Mehltretter)\n\n   - Ensure NUL-termination when copying the cooling device command-line\n     argument in tmon and fix the associated string truncation warning\n     (Florian Fainelli)\n\n   - Fix undefined behavior caused by a signed shift in the tmon thermal\n     zone binding display (Liu Jing)\n\n   - Fix wording in tmon comments (Hemanth Selam)\n\n   - Simplify cpufreq_set_cur_state() in the cpufreq_cooling thermal\n     control driver (Thorsten Blum)\"\n\n* tag \u0027thermal-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (51 commits)\n  thermal/drivers/rzg3e: Propagate reset assertion failure from suspend\n  thermal: ti-soc-thermal: Fix the return value in ti_bandgap_get_sensor_data() kernel-doc\n  thermal/fw: Fix kernel-doc parameter names\n  thermal/qcom/tsens: Add support for MSM8952 tsens\n  dt-bindings: thermal: tsens: Add MSM8952\n  thermal/drivers/amlogic: Switch to clk_bulk API to support multiple clocks\n  dt-bindings: thermal: amlogic: describe bus clock for t7-thermal\n  tools/thermal/tmon: Fix string truncation warning in optarg copy\n  thermal/drivers/airoha: Register a thermal zone per AN7583 sensor\n  dt-bindings: arm: airoha: Use one thermal sensor cell for AN7583\n  thermal/drivers/airoha: Serialise access to the shared ADC\n  thermal/drivers/airoha: Fix AN7583 ADC mux field mapping\n  thermal/drivers/sprd: validate the sensor id from the device tree\n  thermal/drivers/ti-soc-thermal: Cancel pending alert work on remove\n  thermal/drivers/qcom-spmi-temp-alarm: Fix temp_map indexing\n  thermal: gov_power_allocator: Use common error handling code in power_allocator_bind()\n  tools/thermal/tmon: Fix signed shift UB in binding display\n  MAINTAINERS: Add entry for Samsung Exynos ACPM thermal driver\n  thermal/drivers/samsung: Add Exynos ACPM TMU driver GS101\n  dt-bindings: thermal: Add Google GS101 TMU\n  ...\n"
    },
    {
      "commit": "df37e3924292fb41d325721008520ba93deced42",
      "tree": "27ff6b17f0f540c5ecb76be9f18c21be313550bd",
      "parents": [
        "4df4d2a577db2d3d57b888bcfb1206fc74661d16",
        "6c326a54b0738ec3b2cc89e1da953a3586c6a8c4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 14:24:26 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 14:24:26 2026 -1000"
      },
      "message": "Merge tag \u0027pm-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management updates from Rafael Wysocki:\n \"This time, the most visible part are the ACPI CPPC updates from\n  Christian Loehle, including CPPC cpufreq driver changes, even though\n  updates of cpufreq drivers proper are still the largest topic group.\n  However, the updates of cpufreq drivers depend on the ACPI CPPC\n  updates, so they should really be counted together and that is well\n  over 1/2 of the total commit count.\n\n  Interestingly enough, almost all of the updates included here are\n  fixes or cleanups, with some new feature support in the amd-pstate\n  cpufreq driver and IPQ9650 support in the qcom-nvmem cpufreq driver.\n  The runtime PM documentation improvements from Brian Norris can also\n  be mostly regarded as fixes, but a new kunit test goes along with\n  them.\n\n  Specifics:\n\n   - Fix multiple issues related to input validation, synchronization,\n     access safety, memory layout and register field validation, and\n     error handling in the ACPI CPPC library (Christian Loehle and Sumit\n     Gupta)\n\n   - Select the frequency-invariance callback per CPU in the CPPC\n     cpufreq driver and create the FIE worker before enabling PCC\n     callbacks in it to avoid queueing work through a missing worker and\n     dereferencing a NULL pointer (Christian Loehle)\n\n   - Update the CPPC cpufreq driver entry in MAINTAINERS and add a new\n     entry for the ACPI CPPC library (Christian Loehle)\n\n   - Minor fixes in various cpufreq drivers (Alexander Koskovich, Daniel\n     Schwierzeck, Frank Zhang, Haotian Zhang, Kathiravan Thirumoorthy,\n     Sumeet Pawnikar, and Xueqin Luo)\n\n   - Fix wrong behaviors on multi-node servers in the Loongson cpufreq\n     driver (Huacai Chen)\n\n   - Reject NULL from cpufreq_cpu_get() in the Rust code (Mehmet\n     Koseoglu)\n\n   - Add suspend OPP to mediatek cpufreq driver and DT (Ryan Brue)\n\n   - Fixups for a few bugs identified by Sashiko in the amd-pstate\n     cpufreq driver (Mario Limoncielloi, Wentao Guan)\n\n   - Initial support for maximum frequency capacity handling on Zen6\n     client in amd-pstate (Mario Limonciello)\n\n   - Fix for amd-pstate-ut with \u0027Requested CPU Min frequency\u0027 BIOS\n     option (K Prateek Nayak)\n\n   - New Zen6 tuning values for EPP in amd-pstate (Mario Limonciello,\n     Vishal Badole)\n\n   - amd-pstate documentation fix (Karl Mehltretter)\n\n   - Restrict deferred downscaling to low load for shared policies in\n     the conservative cpufreq governor to avoid undesirable CPU\n     frequency reduction in some cases (Shengming Hu)\n\n   - Serialize sugov_start() against rate limit updates in the schedutil\n     cpufreq governor to avoid using a stale rate limit value (Hui Su)\n\n   - Prevent cpuidle governors menu and teo from returning idle state 0\n     after it has been disabled (Xueqin Luo)\n\n   - Replace min_t() with the better alternatives in the intel_idle\n     driver and make it use 2-argument strscpy() (Andy Shevchenko)\n\n   - Fix two repeated phrase instances in cpuidle (Hemanth Selam,\n     Syazwina Fazrul)\n\n   - Add rugged Panther Lake support to the intel_rapl power capping\n     driver and make it use %pe for printing error pointers (Srinivas\n     Pandruvada and Sumeet Pawnikar)\n\n   - Update and improve runtime PM documentation and add a kunit test\n     for supplier idle/suspend (Brian Norris)\n\n   - Add a pm_runtime_dont_use_autosuspend() call to pm_runtime_reinit()\n     to ensure autosuspend disabling on driver teardown (Joshua Crofts)\n\n   - Ignore page-zero RAM in E820 checksum during hibernation on x86 to\n     avoid rejecting images created after kexec() (Matthias Goergens)\n\n   - Add resume event mapping for PMSG_POWEROFF to the PM core to allow\n     it to carry out device shutdown in the future (Mario Limonciello)\n\n   - Add DPM watchdog to prepare/late/early/noirq/complete phases of\n     device suspend and resume (Mayank Rungta)\n\n   - Update swsusp.txt references to swsusp.rst in hibernation\n     documentation (Li Jun)\n\n   - Fix use-after-free of perf domain in netlink doit handlers for\n     energy models (Fan Wu)\n\n   - Add synchronize_rcu() back to cpu_pm_unregister_notifier() after it\n     was removed inadvertently in previous development cycles to avoid\n     use-after-free (Bradley Morgan)\n\n   - Unregister CPU PM notifier outside the timer lock in the\n     timer-ti-dm clocksource driver (Bradley Morgan)\n\n   - Fix typo \"sucessfully\" in a comment in pm_clk_add_clk() kerneldoc\n     comment and typo \"hierachy\" in a comment in pm-graph (Hemanth\n     Selam)\n\n   - Fix the return value in dev_pm_opp_get_of_node() kernel-doc (Karl\n     Mehltretter)\"\n\n* tag \u0027pm-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (89 commits)\n  cpufreq: loongson3: Replace IOCSR read/write with MMIO ones\n  cpufreq: loongson3: Use global physical CPU ID in get/target callbacks\n  cpufreq: loongson3: Replace per-package mutex with per-node\n  cpufreq: loongson3: Adjust the width of id and val in smc_message\n  cpufreq: loongson3: Make this driver depend on MACH_LOONGSON64\n  PM: runtime: Expand introduction with core concepts and structure\n  cpufreq: schedutil: Serialize sugov_start() against rate limit updates\n  MAINTAINERS: ACPI: Add a separate CPPC entry\n  MAINTAINERS: cpufreq: Replace CPPC reviewer\n  arm64: dts: mediatek: mt8173: Mark the lowest CPU OPPs for suspend\n  cpufreq: mediatek: Enter system sleep at the suspend OPP\n  cpufreq: qcom-cpufreq-hw: fix device node refcount leak in phandle parsing\n  cpufreq: qcom-nvmem: Add IPQ9650 support\n  cpufreq: Add Milos to cpufreq-dt-platdev blocklist\n  cpufreq: Use %pe to print error pointers symbolically\n  rust: rcpufreq_dt: add module alias\n  cpufreq: sti: avoid NULL dereference in dev_err()\n  cpufreq: tegra194: fix double-pointer error in get_cpu_ndiv\n  cpufreq: sparc-us2e: fix frequency table index copy-paste error\n  rust: cpufreq: reject NULL from cpufreq_cpu_get()\n  ...\n"
    },
    {
      "commit": "01a40ad5a9687ea5a837857d4b21ddd764be7aa3",
      "tree": "abbb91004d0339934223f82e6f530c37e67754ee",
      "parents": [
        "74f1cf02d9fe0fd32ca299cd4d71bc29d3bf2a54"
      ],
      "author": {
        "name": "Pawel Zalewski",
        "email": "pzalewski@thegoodpenguin.co.uk",
        "time": "Thu Oct 15 13:58:28 2026 +0100"
      },
      "committer": {
        "name": "Jassi Brar",
        "email": "jassisinghbrar@gmail.com",
        "time": "Wed Oct 21 18:46:54 2026 -0500"
      },
      "message": "mailbox: Use named initializers for acpi_device_id\n\nUse a designated initializer for the acpi_device_id fields which makes the\ncode more readable and consistent with how lists are initialized in the\nrest of the kernel code base. Also drop explicitly setting fields to 0\nwhere it is redundant.\n\nUnify the list terminator to have a single space between the brackets and\nno trailing comma.\n\nSigned-off-by: Pawel Zalewski \u003cpzalewski@thegoodpenguin.co.uk\u003e\nSigned-off-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n"
    },
    {
      "commit": "74f1cf02d9fe0fd32ca299cd4d71bc29d3bf2a54",
      "tree": "a451c501e10d977c68c33bd7a1e2654436d5234c",
      "parents": [
        "134ef0278d4e48bcc325a7699250dfe861c11953"
      ],
      "author": {
        "name": "Sivansh Gupta",
        "email": "sivansh.gupta@oss.qualcomm.com",
        "time": "Mon Sep 28 10:59:39 2026 +0530"
      },
      "committer": {
        "name": "Jassi Brar",
        "email": "jassisinghbrar@gmail.com",
        "time": "Wed Oct 21 18:44:41 2026 -0500"
      },
      "message": "mailbox: qcom-cpucp: read mbox hardware register using readq()\n\nMailbox hardware registers are 64 bit wide, but the interrupt handler\ncurrently reads only 32 bits with readl() at offset 0x4 (upper 32\nbits). This returns an incorrect value, while reading using readq()\nreturns the expected value.\n\nUse readq() to access the 64 bit register and pass the expected value\nto the mailbox client.\n\nFixes: 0e2a9a03106c (\"mailbox: Add support for QTI CPUCP mailbox controller\")\nSigned-off-by: Sivansh Gupta \u003csivansh.gupta@oss.qualcomm.com\u003e\nReviewed-by: Sibi Sankar \u003csibi.sankar@oss.qualcomm.com\u003e\nSigned-off-by: Jassi Brar \u003cjassisinghbrar@gmail.com\u003e\n"
    },
    {
      "commit": "4df4d2a577db2d3d57b888bcfb1206fc74661d16",
      "tree": "367359c23fde15d3821059affdd4101a7ac447c1",
      "parents": [
        "ccc4d9f8912a5d9f519a34c3633fe53c8f9b429e",
        "84c4409e8566549d0f21f25e2bac9327dc279d23"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 12:08:18 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 12:08:18 2026 -1000"
      },
      "message": "Merge tag \u0027acpi-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull ACPI support updates from Rafael Wysocki:\n \"The most significant change here is the rework of the core ACPI device\n  enumeration code to avoid initializing ACPI power management\n  prematurely for devices with unmet dependencies. This essentially is a\n  problem fix, but it requires taking PCI device enumeration ordering\n  into account among other things, so it is far from straightforward.\n  There was an attempt to do this in the 7.3 time frame that had to be\n  reverted, so this time it is done much more carefully.\n\n  There is also an ACPI thermal control update rearranging the code to\n  register thermal class cooling devices under specific parents, which\n  is visible in sysfs. This helps to figure out what is represented by\n  those devices much more easily, but it also allows the binding of\n  cooling devices to trip points in thermal zones to be adjusted so it\n  need not rely on specific cooling device data usage in thermal\n  drivers.\n\n  From the number of commits perspective, the most visible part is the\n  one replacing acpi_get_first_physical_node() with\n  acpi_bus_get_primary_device() everywhere and dropping the former that\n  was inherently racy and generally unsafe to use. Fortunately, the\n  maintainers involved responded timely and all of that could be done\n  within one development cycle.\n\n  Another quite visible part is Dave Jiang\u0027s series fixing multiple\n  issues reported by Sashiko in the ACPI APEI support code with a PCI\n  AER improvement on top. It took several iterations of this to make\n  Sashiko happy and the code in question should be much more robust\n  going forward.\n\n  One other thing worth mentioning separately is that the ACPI bus type\n  is now going to be registered as a \"companion\" one and it will not be\n  possible to register a driver binding directly to a struct\n  acpi_device. All of the existing users of those drivers in the tree\n  were converted to platform drivers in the previous cycles, so this is\n  just a final step in a longer journey.\n\n  Apart from the above, there are many fixes, mostly in drivers, with a\n  noticeable exception of a fix in the code binding devices to their\n  ACPI companions, new IOVT IOMMU support in ACPICA, new _Ixx object\n  support for suspend-to-idle on x86, multiple new quirks, mostly\n  related to unused ACPI power resources and backlight handling, and\n  assorted cleanups.\n\n  Specifics:\n\n   - Make the core ACPI device enumeration code stop attempting to\n     initialize ACPI power management for devices before they are known\n     to be present and functional (Rafael Wysocki)\n\n   - Simplify and clean up the core ACPI device enumeration code on top\n     of the previous adjustment and reduce debug noise coming from it\n     (Rafael Wysocki)\n\n   - Fix locking in the code binding devices to their ACPI companions,\n     prevent it from replacing a valid ACPI companion pointer with NULL\n     incidentally, improve its messaging (including debug noise\n     reduction), and reduce its overhead by making it skip the cases in\n     which no ACPI companion may exist early (Rafael Wysocki)\n\n   - Reduce runtime memory footprint of struct acpi_device by\n     rearranging fields in it (Andy Shevchenko)\n\n   - Update the driver core to allow bus types without drivers to be\n     registered as \"companion bus types\" without driver-related sysfs\n     attributes and register the ACPI bus type as a companion one\n     (Rafael Wysocki)\n\n   - Use strscpy() instead of strcpy() in the ACPI sysfs interface\n     (Ruslan Vagner)\n\n   - Remove __meminitdata from hmat_adist_nb declaration preserving it\n     even when CONFIG_MEMORY_HOTPLUG is not set to prevent notifier\n     chain corruption in some cases (Alejandro Lucero)\n\n   - Prevent a NULL pointer dereference when attempting to read the\n     table length after a mapping bookkeeping failure during an initrd\n     override invocation with permanent table mappings enabled (Slavin\n     Liu)\n\n   - Use for_each_populated_zone() in get_node_num() in the MRRM table\n     pareser (Sang-Heon Jeon)\n\n   - Use vsnprintf() in acpi_os_vprintf() to prevent memory corruption\n     resulting from overly long diagnostic messages that may not fit\n     into a static buffer used by ACPICA and may be produced by a\n     malformed ACPI table (Vlatko Kosturjak)\n\n   - Ignore leading root scope prefix in string _UID match to allow AMD\n     IOMMU matching to work as expected in some cases (Mario\n     Limonciello)\n\n   - Adjust message printing macros for ACPI objects to use dev_fmt()\n     for more consistency with the analogous dev_*() macros (Rafael\n     Wysocki)\n\n   - Add _Ixx GPE wake indicator support to the x86 suspend-to-idle\n     handling code (Saranya Gopal)\n\n   - Clear driver_data before free in the ACPI PCI Link driver to\n     prevent a dangling pointer from being used later (Jiale Yao)\n\n   - Accumulate the queued flag across error sections of a CPER record\n     in ghes_do_proc() to prevent it from being cleared by a later\n     section or entry that does not queue memory-failure work (Breno\n     Leitao)\n\n   - Map a raw PCI AER Capability image field by field to prevent\n     information loss from occurring while processing it (Dave Jiang)\n\n   - Update a stale driver source reference in the ACPI APEI EINJ driver\n     documentation (Prabhakar Pujeri)\n\n   - Reject CPER records with an out-of-range error_data_length or an\n     error status block length wrapping a u32 in the EFI CPER driver\n     (Dave Jiang)\n\n   - Address multiple assorted issues in the ACPI extlog driver (Dave\n     Jiang)\n\n   - Address two issues related to CXL in the ACPI APEI GHES driver\n     (Dave Jiang)\n\n   - Read only validated fields in cper_mem_err_pack() (Dave Jiang)\n\n   - Validate memory error section length before payload access, prevent\n     writes past array bounds from occurring and sanitize software\n     metadata in the ACPI APEI GHES driver (Dave Jiang)\n\n   - Make cxl_cper_handle_prot_err() static (Dave Jiang)\n\n   - Add IOVT IOMMU support to ACPICA (Bibo Mao)\n\n   - Fix PCC OperationRegion command offsets in ACPICA (Sudeep Holla)\n\n   - Fix memory leak in acpi_ds_create_field() related to the handling\n     of internal_pcc_buffer allocations (Breno Leitao)\n\n   - Fix memory leak due to leftover devm_kcalloc() argument in the ACPI\n     fan driver (Rafael Wysocki)\n\n   - Fix backlight unregistration ordering in the ACPI video bus device\n     driver (Rafael Wysocki)\n\n   - Update the thermal core to allow the registration of thermal class\n     cooling devices under specific parents and convert the ACPI fan,\n     ACPI processor, and ACPI video bus device drivers to do so (Rafael\n     Wysocki)\n\n   - Adjust the ACPI thermal zone driver to use thermal class cooling\n     device parent information for binding cooling devices to trip\n     points in thermal zones (Rafael Wysocki)\n\n   - Use cooling device data that is a better match for a given driver\n     instead of a struct acpi_device pointer that had to be used for\n     this purpose previously in the ACPI fan and processor drivers\n     (Rafael Wysocki)\n\n   - Fix acpi_thermal_guess_offset() in the ACPI thermal zone driver for\n     thermal zone devices with a 273.0°K offset (Hans de Goede)\n\n   - Define a free for ACPI objects allocated by ACPICA helpers and use\n     it to simplify AML error handling in the ACPI fan driver (Rafael\n     Wysocki)\n\n   - Switch over the users of acpi_get_first_physical_node(), that was\n     inherently racy and therefore not really safe to use, to use its\n     replacement acpi_bus_get_primary_device(), and eliminate the former\n     (Rafael Wysocki)\n\n   - Add !CONFIG_ACPI stubs for acpi_find_child_device() and\n     acpi_device_uid() (Mario Limonciello and Robin Murphy)\n\n   - Fix bogus cycle count values on systems without _BIX in the ACPI\n     battery driver (Armin Wolf)\n\n   - Fix NULL pointer dereference on allocation failure and report\n     relative state of charge as CAPACITY in the ACPI SBS driver (Itay\n     Shem-tov and Guangshuo Li)\n\n   - Add lid_init_state quirk for Razer Blade Stealth 13 (Early 2020)\n     RZ09-0310 to the ACPI button driver (Ian Gallagher)\n\n   - Add new quirks to force the native backlight on Dell OptiPlex AIO\n     7410 35W and Acer Nitro AN515-58 in the ACPI video bus device\n     driver (Chitransh Mandhaniya and Dirga Yuza)\n\n   - Fix the shared memory signature handling in the ACPI PCC address\n     space handler, free the PCC mailbox channel on operation region\n     deactivation, and avoid unnecessary repeated computations of the\n     PCC operation region command timeout (Sudeep Holla)\n\n   - Fix a log message typo in the ACPI NUMA support code (Hemanth\n     Selam)\n\n   - Zero-initialize capability query result in the ACPI Platform\n     Firmware Runtime Update and Telemetry driver to avoid disclosure of\n     kernel stack data to user space (Karl Mehltretter)\n\n   - Replace the remaining built-in/module check for CONFIG_ACPI_WMI in\n     a header file with IS_ENABLED() macro (Lalit Shankar Chowdhury)\n\n   - Retry probing battery docks after hotplug in the ACPI docking\n     station driver to avoid missing ACPI add notifications (Vibhor\n     Goel)\n\n   - Detach device after resource transition failure in\n     pnp_device_probe() to avoid blocking later manual PNP configuration\n     attempts (Myeonghun Pak)\"\n\n* tag \u0027acpi-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (90 commits)\n  ACPI: PM: Add Acer Aspire A515-53G to dmi_leave_unused_power_resources_on[]\n  ACPI: video: force native backlight on Dell OptiPlex AIO 7410 35W\n  ACPI: PM: sleep: Drop unused sleep_no_lps0 define\n  ACPI: PM: Add unused power resource quirk for Casper Excalibur G900\n  ACPI: dock: Retry probing battery docks after hotplug\n  ACPI: PCI: pci_link: clear driver_data before free\n  ACPI: APEI: accumulate the queued flag across error sections\n  ACPICA: actbl2.h: Add bit constants of the Flags field in the IOVT IOMMU structure\n  ACPI: bus: Drop acpi_get_first_physical_node()\n  efi/dev-path-parser: Switch to use acpi_bus_get_primary_device()\n  ALSA: hda: tas2781: Switch to use acpi_bus_get_primary_device()\n  ALSA: hda: cs35l41: Switch to use acpi_bus_get_primary_device()\n  iommu/arm-smmu-v3: Switch to use acpi_bus_get_primary_device()\n  PCI/AER: Map a raw AER Capability image field by field\n  ACPI: NUMA: fix typo in log message\n  ACPI: Add stub for acpi_find_child_device()\n  driver core/ACPI: Introduce companion_bus_register()\n  ACPI: PCC: Cache OpRegion command timeout\n  ACPI: PCC: Free channel on OpRegion deactivation\n  ACPI: PCC: Preserve shared memory signature in OpRegion handler\n  ...\n"
    },
    {
      "commit": "ccc4d9f8912a5d9f519a34c3633fe53c8f9b429e",
      "tree": "6b3f0245c4dc1c345f095a541cc6fc65da18e196",
      "parents": [
        "1ae0ee1ba729a0c55c2eb8593fa708c23b66e1b3",
        "8d17190fae2caab89cd5df19257ed9dac0739e3b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:33:33 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:33:33 2026 -1000"
      },
      "message": "Merge tag \u0027timers-vdso-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull VDSO updates from Thomas Gleixner:\n \"Updates for the VDSO subsystem:\n\n   - Ensure that the CLOCK_AUX base calculations are properly scaled\n     against the base timekeeper. The update function failed to take the\n     fractional nanosecond part into account, which results in a\n     rounding error.\n\n   - Cleanup and consolidate the vsyscall headers to get rid of\n     pointless copies all over the architectures.\n\n   - Replace a runtime conditional in the time getter function for\n     namespaced clocks by simple pointer arithmetic which speeds up the\n     read function\"\n\n* tag \u0027timers-vdso-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  vdso/vsyscall: Keep the CLOCK_AUX base scaled\n  vdso/math64: Add and use __iter_div64_u64_rem()\n  vdso/math64: Use OPTIMIZER_HIDE_VAR() in __iter_div_u64_rem()\n  vdso/gettimeofday: Avoid runtime conditional in do_hres_timens()\n  vdso: Remove __ASSEMBLER__ guards from vsyscall.h\n  vdso: Add asm-generic/vdso/vsyscall.h\n  vdso: Remove unnecessary vdso/vsyscall.h includes\n  riscv/hwprobe: Include vdso/datapage.h\n  arm64/vdso: Delete asm/vdso/vsyscall.h inclusions\n  x86/vdso: Delete asm/vdso/vsyscall.h inclusions\n  sparc/vdso: Delete asm/vdso/vsyscall.h inclusion\n  s390/vdso: Delete asm/vdso/vsyscall.h inclusions\n  sparc/vdso: Move __VDSO_PAGES to asm/vdso.h\n  x86/vdso: Move vDSO page definitions to asm/vdso.h\n  vdso: Delete asm-generic/vdso/vsyscall.h\n  vdso/vsyscall: Define fallback time synchronization functions in vsyscall.c\n  vdso/getrandom: Define fallback __arch_get_vdso_u_rng_data() in getrandom.c\n  vdso/gettimeofday: Define fallback __arch_get_vdso_u_time_data() in gettimeofday.c\n  vdso: Move the kernel-side time update helpers to a new header\n"
    },
    {
      "commit": "1ae0ee1ba729a0c55c2eb8593fa708c23b66e1b3",
      "tree": "ff21ce967c8fc860274d30a885f0af52dac7bb35",
      "parents": [
        "aaf3d47e530616ed0cf9110ba8c537ace455dd90",
        "d305927765cf6025bc11db9d96c06ea663230ddd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:29:25 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:29:25 2026 -1000"
      },
      "message": "Merge tag \u0027timers-nohz-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull NOHZ updates from Thomas Gleixner:\n \"Updates for the tick/NOHZ machinery:\n\n   - Add the BLOCK_SOFTIRQ to the hotplug safe local softirq pending\n     mask to prevent false positive error messages. A BLOCK_SOFTIRQ can\n     be pending when a CPU goes offline as the subsequent cleanup will\n     take care of the outstanding completions.\n\n   - Remove a few redundant invocations of local_irq_save/restore() and\n     timekeeping_max_deferment() to speed up the NOHZ idle transitions\"\n\n* tag \u0027timers-nohz-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  tick/nohz: Avoid unused timekeeping_max_deferment() calls\n  tick/nohz: Remove redundant local_irq_save()/restore()\n  tick/nohz: Add BLOCK_SOFTIRQ to the hotplug safe mask\n"
    },
    {
      "commit": "aaf3d47e530616ed0cf9110ba8c537ace455dd90",
      "tree": "d1ef2d72acb7f64963c7051ad8540dccd5ee11e7",
      "parents": [
        "b4460f89a274240204038d559e8571f370d14327",
        "348f54c435bf3177baa78201952810b255d44b30"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:20:38 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:20:38 2026 -1000"
      },
      "message": "Merge tag \u0027timers-core-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer core updates from Thomas Gleixner:\n \"Updates for the core timekeeping and timers subsystem:\n\n   - Futher cleanups for the POSIX timer exit/exec related code to\n     simplify the code flow and to make it more robust against future\n     changes.\n\n   - Prevent tearing of timekeeper::ktime_sec which can be accessed\n     without the sequence count protection.\n\n     The timekeeper is updated by memcpy() with an uneven sequence count\n     to force readers into the retry path. On 64-bit machine the\n     ktime_sec member can be accessed atomically without the sequence\n     count protection. That is only correct when the update side\n     memcpy() guarantees atomicity at the 64-bit granularity. That\u0027s not\n     guaranteed due to debug options, compilers and instruction\n     availability. If the memcpy() does not provide the atomicity then\n     the unprotected readers can observe store tearing.\n\n     To prevent this write the ktime_sec member before the memcpy() so\n     that a non-atomic memcpy() will write the same data. A similar fix\n     has been done for the xtime_sec member, but the ktime_sec\n     equivalent was missed.\n\n   - Prevent time64_to_tm() day truncation on 32-bit kernels\n\n     The function receives a 64-bit seconds value but stores the\n     quotient of the computation in a long, which truncates the result\n     for large input values. Cure this by using div_s64_rem() which\n     stores the quotient in s64 and only leaves the seconds-within-day\n     reminder in a long, which is guaranteed to fit. This fix comes with\n     a corresponding kunit test to prevent further mishaps.\n\n   - Mark data-racy accesses to the hrtimer_sleeper::task member.\n\n     The recent updates to KCSAN flagged these benign races. Annotate\n     them with new helper functions, convert all existing usage sites\n     and mark the task member private after that so that future users\n     which fail to use the helpers can be detected automatically.\n\n   - Address similar benign KCSAN flagged issues in the hrtimer, timer\n     and timer migration code.\n\n   - Fixes for a few selftest issues\"\n\n* tag \u0027timers-core-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (26 commits)\n  selftests/timers: clocksource-switch: Fix unchecked open()/read()\n  selftests: timers: Measure the CPU timers on the clock they count\n  selftests: timers: Count what tick is worth in the drift estimate\n  time/kunit: Add time64_to_tm() case beyond 32-bit day count\n  time: Prevent time64_to_tm() day truncation on 32-bit\n  timekeeping: Use READ_ONCE/WRITE_ONCE() for ktime_sec to prevent tearing\n  timers/migration: Mark racy updates to tmigr_event::ignore field\n  timers: Mark racy updates to hlist_node::pprev field\n  hrtimer: Apply READ_ONCE() to lockless base-\u003erunning loads\n  hrtimer: Mark the hrtimer_sleeper structure\u0027s -\u003etask field __private\n  hrtimer: Update hrtimer_resolution only if value changes\n  futex: Use accessor for hrtimer_sleeper -\u003etask field in requeue\n  rtmutex: Use accessor for hrtimer_sleeper -\u003etask field\n  net: pktgen: Use accessor for hrtimer_sleeper -\u003etask field\n  timers: Use accessor for hrtimer_sleeper -\u003etask field in sleep_timeout.c\n  futex: Use accessor for hrtimer_sleeper -\u003etask field in waitwake.c\n  io-uring/rw: Use accessor for hrtimer_sleeper -\u003etask field\n  wait: Use accessor for hrtimer_sleeper -\u003etask field\n  aio: Use accessor for hrtimer_sleeper -\u003etask field\n  hrtimer: Mark data-racy accesses to hrtimer_sleeper -\u003etask field\n  ...\n"
    },
    {
      "commit": "b4460f89a274240204038d559e8571f370d14327",
      "tree": "ffb307af2d51a4029ed5540042a862bdcffed998",
      "parents": [
        "2e973d4882230079bfbdc9f33077006bb50de700",
        "5bbd49a96e049a0469223743a3b13354d2e8f20a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:19:28 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:19:28 2026 -1000"
      },
      "message": "Merge tag \u0027timers-clocksource-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull clocksource updates from Thomas Gleixner:\n \"Updates for clocksource and clockevent drivers:\n\n   - Support for the Renesas RZ/N1 timers\n\n   - Rework of the per CPU and per cluster MIPS GIC timers to improve\n     performance, sched clock precision and to add VDSO support.\n\n   - The usual assorted pile of small fixes and improvements all over\n     the place\"\n\n* tag \u0027timers-clocksource-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  clocksource/drivers/timer-ti-dm: Handle runtime resume failure\n  clocksource/drivers/timer-mediatek: Request and enable the bus clock\n  clocksource/drivers/timer-mediatek: Convert to OF probing\n  clocksource/drivers/timer-mediatek: Fix random crash at boot\n  clocksource/drivers/timer-econet-en751221: Fix clock reference leak\n  clocksource/drivers/digicolor: Fix clk reference leak on request_irq failure\n  clocksource/drivers/fttmr010: Fix clk reference leak in error paths\n  clocksource/drivers/dbx500-prcmu: Check timer register mapping\n  clocksource/drivers/timer-ti-dm: Register clocksource/event only for am654\n  clocksource/drivers/mips-gic-timer: Use local counter on synced multi-cluster systems\n  clocksource/drivers/mips-gic-timer: Simplify gic_next_event() for per-cpu timer\n  MAINTAINERS: Add the Renesas RZ/N1 timers driver entry\n  clocksource/drivers: Add support for the Renesas RZ/N1 timers\n  dt-bindings: timer: Add the Renesas RZ/N1 timer\n"
    },
    {
      "commit": "2e973d4882230079bfbdc9f33077006bb50de700",
      "tree": "1736ac4b36b9ab08af9f6df2de1a722359d2852b",
      "parents": [
        "1fbe92c39e72f6baf1ebda5a21c54442865d9622",
        "9376df3496753563e3d7f7cb5d91525f9a6e9497"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:16:50 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:16:50 2026 -1000"
      },
      "message": "Merge tag \u0027irq-drivers-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull irq chip driver updates from Thomas Gleixner:\n \"Updates for interrupt chip drivers:\n\n   - Remove the futile attempts to cleanup resources when the probing of\n     the main interrupt chip fails for SiFIVE/PLIC devices. If that\n     probe fails the system will stall immediately afterwards in the\n     boot process without reaching a state where the error could be\n     diagnosed. The lack of resource cleanup led to a frenzy of AI\n     detected/assisted \"fixes\" which just make the code pretend to be\n     correct for no value.\n\n     Remove the existing half baked cleanup and immediately panic the\n     machine when the probe fails. That\u0027s far more useful than letting\n     it proceed and stall out a millisecond later with no information\n     about the root cause.\n\n   - A series of fixes for the ARM GIC-V3 driver addressing a potential\n     double free, a bitmask overrun on 32-bit ARM and a OF node leak.\n\n   - Automatically set the IRQ_DOMAIN_FLAG_DESTROY_GC when a interrupt\n     domain is created that also allocates the generic interrupt chip\n     during domain creation. That removes the requirement for manually\n     setting the flag in the domain creation info structure when it\n     contains a valid entry for allocating the generic interrupt chip.\n     Remove the therefore redundant setters of\n     IRQ_DOMAIN_FLAG_DESTROY_GC in the existing drivers.\n\n   - Add support for Annapurna Labs FIC version 2 and 3 and implement\n     affinity control for the demultiplexed interrupts by utilizing the\n     recently merged interrupt redirection infrastructure.\n\n   - Convert the ACPI device ID structures to named initializers\n\n   - Consolidate the IPI related constants for RISC-V interrupt\n     controllers\n\n   - Add support for Qualcomm Purwa SoC interrupt chip and consolidate\n     the workaround for the previous version in Hamoa SoCs.\n\n   - The usual small fixes and improvements all over the place\"\n\n* tag \u0027irq-drivers-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (61 commits)\n  irqchip/al-fic: Support per-child affinity via interrupt redirection\n  irqchip/al-fic: Add support for FIC v3\n  irqchip/al-fic: Support error and fatal outputs and FIC v2\n  dt-bindings: interrupt-controller: amazon,al-fic: Add mask selection\n  irqchip/al-fic: Switch to shared parent interrupt\n  irqchip/al-fic: Keep the device_node instead of a cached name string\n  irqchip/al-fic: Use %pOF and raise init log level\n  irqchip/al-fic: Use %pe to print init error\n  irqchip/al-fic: Fix coding style issues\n  irqchip: Use named initializers for acpi_device_id\n  irqchip/gic-v5: Fix standalone IRSes OF probe\n  dt-bindings: interrupt-controller: gicv5: Relax IRS properties constraints\n  irqchip/renesas-rzv2h: Preserve TIEN state in rzv2h_tint_set_type()\n  irqchip/loongson-eiointc: Use pa_to_nid() rather than hard-code\n  irqchip/riscv-imsic: Expose the fwnode via the global config\n  irqchip/meson-gpio: Allow the GPIO interrupts to wake the system\n  irqchip/gic-v3: Ensure change to DS is visible\n  irqchip/mips-gic: Transfer interrupt mask state across clusters\n  irqchip/mips-gic: Fix recursive acquisition of gic_lock in gic_set_affinity()\n  irqchip/mips-gic: Fix unbalanced cm_core_lock in for_each_online_cpu_gic()\n  ...\n"
    },
    {
      "commit": "1fbe92c39e72f6baf1ebda5a21c54442865d9622",
      "tree": "e82910b9e2b58470d7beb3dbb902d24db3d00362",
      "parents": [
        "a56a18c14aea31dbb952b8eb03fc4d7b95fb429a",
        "e74798f2f8e1562f2bbd2fed8d81929eeef39ffc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:05:37 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:05:37 2026 -1000"
      },
      "message": "Merge tag \u0027irq-core-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull irq updates from Thomas Gleixner:\n \"Updates for the generic interrupt subsystem:\n\n   - Skip programming of MSI/MSI-X related data while a PCI channel is\n     offline (Link is down) in the error recovery code path. Accessing\n     an offline channel results in a BUS error which affects the\n     underlying Root Port.\n\n     Check for pci_channel_offline() and if true avoid the writes and\n     just cache the modifications which are subsequently applied when\n     the Link has recovered.\n\n   - Prevent a stack UAF when a faulting interrupt thread exits. On X86\n     the crash causes the stack to be discarded, which contains the\n     callback head for the exit task_work to run the destructor. If the\n     stack is clobbered before the destructor runs, then the indirect\n     call of the task work function ends up in a random place. Move the\n     callback head into the interrupt action to prevent that.\n\n   - Prevent an UAF in the interrupt thread exit code which can happen\n     when a faulting interrupt thread exits and races with a concurrent\n     free_irq() by synchronizing free_irq() against thread exit.\n\n   - Ensure that interrupt context accounting is accurate on interrupt\n     return when checking for soft interrupt invocation.\n\n     The code removed the hard interrupt context prematurely so that the\n     subsequent code appeared to be in task context according to the\n     preempt counter. That confuses ftrace, perf and K*SAN which get\n     their recording context wrong. On Preempt-RT this can result in\n     misbehaviour when BPF programs are attached to the affected region.\n\n     Cure it by preserving the hard interrupt count up to the point\n     where soft interrupts are actually invoked and switch directly to\n     soft interrupt processing right there. That avoids the intermediate\n     \"in task context\" state.\n\n   - The usual small fixes and improvements\"\n\n* tag \u0027irq-core-2026-10-20\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq/proc: Fix missing CPU header in /proc/interrupts\n  PCI/MSI: Skip MSI/MSI-X programming while the channel is offline\n  genirq: Fix typos in comments\n  genirq: Move interrupt thread exit_work object to irqaction\n  genirq: Defer kfree(irqaction) until irq_thread_dtor() finishes\n  softirq: Preserve interrupt context on return from interrupt\n  softirq: Remove redundant h-\u003eaction from preempt_count mismatch error\n  genirq: Discard cpumask of irqaffinity\u003d boot parameter if parsing fails\n"
    },
    {
      "commit": "a56a18c14aea31dbb952b8eb03fc4d7b95fb429a",
      "tree": "dd9d32468de18da684e65f1a6879dcdfeb81bba3",
      "parents": [
        "bb29b957eaaa15be33243550d9ee576c2d601669",
        "f929e61143a2842e8f8ec9f2319ee19dbb048e32"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:03:28 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 11:03:28 2026 -1000"
      },
      "message": "Merge tag \u0027csd-lock.2026.10.12a\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu\n\nPull CSD lock updates from Paul McKenney:\n \"Report CSD-lock stall recovery time:\n\n   - Refactor to simplify csd_lock_wait_toolong() function prototype\n\n   - Report time required to recover from a CSD-lock stall\n\n   - Add a test of this reporting\"\n\n* tag \u0027csd-lock.2026.10.12a\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:\n  lib/test_csd_lock: Add a module to stall a CPU on a CSD lock\n  locking/csd-lock: Report how long a stuck CSD lock took to recover\n  locking/csd-lock: Pack csd_lock_wait_toolong() state into a struct\n"
    },
    {
      "commit": "bb29b957eaaa15be33243550d9ee576c2d601669",
      "tree": "6827930af194a0ad5a8d8152fe2892d1be9b711b",
      "parents": [
        "12d5fc96ebbb3b948861805b32a4c3a96105ccd9",
        "997208ce9f43f01febac956cf9aeffe89945e3c1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 10:45:44 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 10:45:44 2026 -1000"
      },
      "message": "Merge tag \u0027kbuild-7.4-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux\n\nPull Kbuild / Kconfig updates from Nathan Chancellor:\n \"Kbuild:\n\n   - Suppress compiler flags in debug info for external module builds\n\n   - Use \u0027-fmacro-prefix-map\u0027 in more places in the build\n\n   - Merge initial set of changes from Lorenzo\u0027s speed up series, along\n     with some fixes found through testing:\n\n     - Avoid allocating .modinfo in vmlinux\n\n     - Speed up kallsyms by indexing symbols by token and outputting\n       binary data to disk directly then including in assembly via\n       .incbin\n\n     - Don\u0027t sort $(NM) output when unnecessary\n\n     - Only emit relocations on the final vmlinx link\n\n     - Reimplement mksysmap in C\n\n     - Move many cc-option and ld-option calls into the Kconfig stage to\n       cache their results\n\n     - Use pigz for gzip compression when available\n\n   - Move gen_init_cpio and gen_initramfs.sh from usr/ to scripts/\n\n   - Add a TOML configuration to scripts/container and update\n     documentation accordingly\n\n   - Add a generic, opt-in mechanism for checking that headers can\n     compile standalone\n\n   - Update machine function splitting argument for LLVM 24 rename in\n     AutoFDO build\n\n   - Miscellaneous minor clean ups, fixes, and hardening, mostly\n     found/fixed via LLMs\n\n  Kconfig:\n\n   - Turn recursive ranges into an error\n\n   - Fix savedefconfig for defaults that were adjusted for being out of\n     range and revert a previously applied workaround\n\n   - Improvements and hardening around integer and hexadecimal values\n\n   - Emit a warning when selecting or implying a choice symbol, which\n     has no effect\n\n   - Emit a warning when KCONFIG_PROBABILITY is malformed\n\n   - Introduce def_string / def_int / def_hex to mirror the existing\n     def_bool / def_tristate to succinctly set a value and type at the\n     same time.\n\n   - Add cc-option-str and ld-option-str macros to act like Kbuild\u0027s\n     cc-option and ld-option, returning the string when the option is\n     supported, allowing many checks to be moved into Kconfig\n\n   - Minor usability improvements to Kconfig tests\"\n\n* tag \u0027kbuild-7.4-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux: (59 commits)\n  kbuild: AutoFDO: Update split machine function argument for upstream rename\n  kbuild: Mark the initcall ordering recipe as recursive\n  kbuild: Mark the gzip recipes as recursive\n  localmodconfig: Explicitly report boolean configs during integrity check\n  scripts/make_fit: Ignore schema checks when decomposing DTBs\n  clang-tools: Import os for broken pipe handling\n  kconfig: use the value argument in sym_get_near_range_bound()\n  kconfig: fix infinite loop in conf_choice() when no choice value is visible\n  kconfig: cleanup stale comment about \u0027keys\u0027 array\n  kconfig: Improve ergonomics around disabling warnings with cc-option\n  scripts/Kconfig.toolchain: Drop compiler symbols from dependencies\n  checkkconfigsymbols.py: Parse Git status output line by line\n  gen_init_cpio: stop parsing on lines with a missing argument list\n  .gitignore: drop Module.markers\n  .gitignore: ignore pacman package signatures\n  kbuild: add header check facility as a manually run static analyzer\n  Documentation: dev-tools: refer to user ID rather than id\n  Documentation: dev-tools: update container.rst with config file\n  scripts: add TOML config to container tool\n  kconfig: tests: {old,save}defconfig: Forward dynamic keyword arguments\n  ...\n"
    },
    {
      "commit": "12d5fc96ebbb3b948861805b32a4c3a96105ccd9",
      "tree": "ee6ea5dfa89edf7a393b3930b6e237f04aad7376",
      "parents": [
        "a7f2bc878742be60e72616586ef2583a75ec810e",
        "7c306f00835a237a70024a8f968dbc3bc8db8fcf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 10:20:36 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 10:20:36 2026 -1000"
      },
      "message": "Merge tag \u0027rust-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux\n\nPull Rust updates from Miguel Ojeda:\n \"Toolchain and infrastructure:\n\n   - Update vendored \u0027zerocopy\u0027 crate to v0.8.62 (released 2026-10-08).\n\n     This update advances 8 releases, with 3 of them carrying most of\n     the changes. It contains new features as well as fixes. However,\n     almost nothing has changed that requires updates on our side (a\n     move of our non-ASCII change and the addition of an SPDX license\n     identifier).\n\n   - Generate Rust KUnit test suites for doctests reusing the\n     \u0027#[kunit_tests]\u0027 and \u0027#[test]\u0027 attributes instead of C FFI\n     functions, which allows to remove the generated C glue file.\n\n     Relatedly, simplify \u0027kunit_assert!\u0027 by using \u0027file!()\u0027 and\n     \u0027line!()\u0027 inside (which doctests override as needed), which allows\n     to remove the \u0027file\u0027 helper and \u0027CONFIG_RUSTC_HAS_SPAN_FILE\u0027.\n\n   - Trim the function names in doctests generated by \u0027rustdoc\u0027 \u003c 1.95.0\n     when building with \u0027O\u003d\u0027, which were not reproducible.\n\n   - Fix the \u0027VM_MAYSHARE\u0027 value in the generated bindings and its\n     blocklist entry, due to typos.\n\n   - Build \u0027core\u0027 with \u0027--cfg no_io_statics\u0027 to ensure \u0027core\u0027 does not\n     introduce any use of \u0027core::sync::atomic\u0027 into the kernel image\n     since upstream Rust is moving \u0027std::io::Error\u0027 into \u0027core\u0027, which\n     uses a global atomic pointer.\n\n     Upstream Rust merged a PR to add a test checking that builds of\n     \u0027core\u0027 are warning-free with that \u0027cfg\u0027 enabled.\n\n   - Enable the unstable \u0027proc_macro_span\u0027 feature in \u0027proc-macro2\u0027,\n     which provides \u0027Span::join\u0027 and thus improves the quality of the\n     diagnostics of all our procedural macros, notably \u0027pin-init\u0027. This\n     is only used for producing diagnostics, thus there is no hard\n     reliance on the feature.\n\n   - Globally allow \u0027clippy::comparison_chain\u0027, since its suggestions\n     are not always ideal and upstream downgraded it to \u0027pedantic\u0027 too.\n\n  \u0027kernel\u0027 crate:\n\n   - New \u0027mem\u0027 module: add the \u0027Align\u003cN\u003e\u0027 zero-sized type so that\n     alignment can be specified via const generics (\u0027repr(align(...))\u0027\n     only works with integer literals), e.g.:\n\n         const N: usize \u003d 128;\n\n         struct S {\n             _align: Align\u003cN\u003e,\n         }\n\n         assert_eq!(align_of::\u003cS\u003e(), N);\n\n   - New \u0027ratelimit\u0027 module: add the \u0027Ratelimit\u0027 abstraction for \u0027struct\n     ratelimit_state\u0027 and, based on it, the \u0027pr_*_ratelimited!\u0027 printing\n     macros, which can be used for printing that may be triggered by\n     userspace.\n\n     In addition, convert Rust Binder to use them.\n\n   - \u0027sync\u0027 module: to construct a global \u0027struct ratelimit_state\u0027, add\n     a \u0027const\u0027 constructor for \u0027raw_spinlock_t\u0027.\n\n     In addition, move the lockdep types into a new \u0027sync::lockdep\u0027\n     submodule, since there were starting to be too many of them.\n\n   - \u0027num\u0027 module: add the \u0027cv!\u0027 macro to create constant values (\"cv\")\n     from an integer constant expression, with validity checked at\n     compile time, inferring the target type from the context. It works\n     for any type that implements the new \u0027FromConst\u0027 trait, e.g.:\n\n         let a: Alignment \u003d cv!(4096);\n         let b: Bounded\u003cu32, 4\u003e \u003d cv!(15);\n\n         // Any integer constant expression works, not only literals.\n         let m: NonZero\u003cusize\u003e \u003d cv!(usize::MAX);\n\n         // Checked narrowing, including in `const` items.\n         const SMALL: u8 \u003d cv!(200u32);\n\n         // The target type can be given explicitly.\n         let e \u003d cv!(200u32 \u003d\u003e u8);\n\n         // With an explicit primitive target, the expression can use\n         // generic parameters.\n         const fn as_u64\u003cconst KEY: u16\u003e() -\u003e u64 {\n             cv!(KEY \u003d\u003e u64)\n         }\n\n     This avoids the verbose turbofish syntax which disincentivized\n     using these types at interface boundaries (e.g.\n     \u0027Alignment::new::\u003c8\u003e()\u0027).\n\n   - \u0027alloc\u0027 module:\n\n       - Allow different error types in \u0027KBox::pin_slice()\u0027, enabling use\n         of infallible initializers.\n\n       - Add \u0027NumaNode::id()\u0027 accessor to retrieve the underlying NUMA\n         node identifier.\n\n   - \u0027time\u0027 module:\n\n       - Add \u0027Delta::to_jiffies_timeout()\u0027 for use in timeout arguments.\n\n       - Add \u0027Delta::as_jiffies_unsigned()\u0027.\n\n       - Make \u0027Delta::ZERO\u0027 generic over the time unit.\n\n       - Warn and assert when passing out-of-range inputs to \u0027fsleep\u0027 and\n         \u0027udelay\u0027.\n\n       - Rename \u0027ClockSource\u0027 to \u0027ClockId\u0027 to better align with naming\n         conventions in C kernel.\n\n       - Make \u0027CONFIG_HZ\u0027 value available as \u0027bindings::HZ\u0027.\n\n       - Add implementation detail documentation for \u0027HrTimer\u0027.\n\n   - \u0027bitmap\u0027 module:\n\n       - Add contiguous area operations (\u0027next_zero_area{,_off}\u0027, \u0027set\u0027\n         and \u0027clear\u0027), with extra checks compared to the underlying C\n         code, plus additional ones under \u0027CONFIG_RUST_BITMAP_HARDENED\u0027.\n         It includes tests demonstrating the edge cases.\n\n       - Restrict bitmap length to at most \u0027i32::MAX\u0027, matching\n         \u0027BitmapVec::MAX_LEN\u0027 and simplifying a few things. This also\n         fixes \u0027u32\u0027 casts truncating in \u0027copy_and_extend\u0027, which could\n         otherwise lead to OOB writes.\n\n   - \u0027bug\u0027 module:\n\n       - Fix \u0027warn_on!\u0027 on UML which called \u0027warn_slowpath_fmt()\u0027 with\n         the wrong arguments; and fix its \u0027// SAFETY:\u0027 comment too.\n\n       - Add a KUnit test for \u0027warn_on!\u0027.\n\n   - \u0027id_pool\u0027 module: add contiguous ID reservation via the new\n     \u0027reserve_ids\u0027 and \u0027release_ids\u0027 methods, built on top of the new\n     bitmap area operations.\n\n   - \u0027sizes\u0027 module: add the sub-1K size constants (\u0027SZ_1\u0027 to \u0027SZ_512\u0027)\n     and implement \u0027SizeConstants\u0027 for \u0027Alignment\u0027, so that one can\n     write e.g. \u0027Alignment::SZ_8\u0027.\n\n  \u0027macros\u0027 crate:\n\n   - Add \u0027#[optional]\u0027 attribute for optional methods in \u0027#[vtable]\u0027 to\n     replace the \u0027build_error!(VTABLE_DEFAULT_ERROR)\u0027 boilerplate, e.g.:\n\n         #[vtable]\n         pub trait Operations: Sized {\n             #[optional]\n             fn f(\u0026self) -\u003e Result;\n         }\n\n     In addition, apply it to miscdevice and hide generated \u0027HAS_\u0027\n     constants for required methods.\n\n   - Allow non-ASCII characters in the \u0027authors\u0027 field of the \u0027module!\u0027\n     macro, which was unintentionally restricted when multiple authors\n     support was introduced.\n\n  \u0027pin-init\u0027 crate:\n\n    [ Extra context from Gary\u0027s pull request:\n       \"This is a cycle packed with feature updates. Two of the most\n        anticipated features, tuple struct support and safe self\n        reference creation, has been included in this pull request.\n\n        Safe self reference is a big one and is pushed a bit late in the\n        cycle. The initial plan was to include a minimum subset for this\n        cycle because I was worried about potential soundness issues;\n        however during Plumbers it was agreed that the features should be\n        upstreamed at once. This is because the initial users (Nova,\n        JobQueue) would all need the advanced features, so it is better\n        to ensure that the feature get put into use for real, and it can\n        iterate with users, rather than being fully designed on paper.\n        The existing safety checks are already very comprehensive, and\n        Benno and I are confident that if new ones are discovered, it\n        wouldn\u0027t affect the overall design.\n\n        That said, the the usage of the advanced features (invariance,\n        existential lifetime) shall be limited to the pre-agreed users\n        only, so even in case where the feature needs to be reworked, the\n        blast radius is limited.\n\n        Another theme in this cycle is to improve the developer\n        experience when things are used wrongly. A lot of work has been\n        done to use proper spans from user-provided tokens so error\n        message point to things that cause them. Many common misuse\n        scenarios also gain additional custom diagnostics.\" ]\n\n   - User visible changes:\n\n       - Support tuple structs.\n\n       - Allow safe creation of self references.\n\n       - Vastly improve diagnostics for common misuse scenarios.\n\n   - Other changes:\n\n       - Use \u0027mixed_site\u0027 hygiene consistently.\n\n  \u0027MAINTAINERS\u0027:\n\n   - Add \u0027RUST [BUG]\u0027 entry for the Rust \u0027bug\u0027 module (i.e. \u0027warn_on!\u0027),\n     which will be maintained by FUJITA Tomonori -- thank you!\n\n   - Add Alice Ryhl as co-maintainer for \u0027Rust [ALLOC]\u0027.\n\n  And some other fixes, cleanups and improvements.\n\n* tag \u0027rust-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux: (91 commits)\n  rust: zerocopy: update to v0.8.62\n  rust: zerocopy: fix link to upstream `README.md`\n  rust: id_pool: add contiguous ID reservation\n  rust: bitmap: add contiguous area operations\n  rust: sizes: implement SizeConstants for Alignment\n  rust: sizes: add sub-1K size constants\n  rust: bitmap: restrict bitmap length to at most i32::MAX\n  rust: bitmap: use function-level cfg on kunit test\n  rust: num: add cv! macro to create values from constant expressions\n  rust: bug: update the SAFETY comment for warn_slowpath_fmt() on UML\n  rust: time: add Delta::as_jiffies_unsigned()\n  rust: time: make Delta::ZERO generic over the time unit\n  rust_binder: use pr_*_ratelimited! for printing\n  rust: add pr_*_ratelimited! macros for printing\n  rust: sync: add const constructor for raw_spinlock_t\n  rust: sync: move lockdep types to rust/kernel/sync/lockdep.rs\n  rust: pin-init: internal: suppress `explicit_outlives_requirements`\n  MAINTAINERS: add entry for the Rust `bug` module\n  rust: pin-init: internal: pin_data: support existential lifetimes\n  rust: pin-init: internal: pin_data: support shared projection\n  ...\n"
    },
    {
      "commit": "a7f2bc878742be60e72616586ef2583a75ec810e",
      "tree": "7158d52fa03bd7cd50ed1819a7bdd548075c1497",
      "parents": [
        "9ba46df344883ca8bade47c0ed7aebf80a1e07b9",
        "d9011419496a3dc6b455b5308846684c63c18de5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 10:04:13 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 10:04:13 2026 -1000"
      },
      "message": "Merge tag \u0027rcu.2026.10.12b\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux\n\nPull RCU updates from Paul McKenney:\n \"Execution contexts and call_rcu() and call_srcu():\n   - Make call_rcu() and call_srcu invocable from NMI handlers and while\n     holding scheduler locks (using irq-work handlers)\n   - Add rcutorture and BPF tests calling these functions from these\n     contexts\n   - Disable rcutorture overload testing for RCU readers that are\n     \"fragile\", that is, that do not either disable preemption or have\n     some form of RCU priority boosting\n\n  SRCU updates:\n   - Add an atomic SRCU where readers run with preemption disabled and\n     grace periods can be invoked from atomic contexts. David Woodhouse\n     has a patch series exploiting this for GPC\n   - Add torture and lockdep tests for atomic SRCU\n   - Add numerous optimizations for atomic SRCU based on the fact that\n     it does not have callbacks, for example, eliminating any transition\n     to \"big\" srcu_struct structures even on systems that configure\n     these to happen at initialization time\n\n  Additional torture-test updates:\n   - Fix a divide-by-zero bug in forward-progress testing\n   - Synchronously wait for all IRQ-queued callbacks to complete\n   - Allow alternative \"ssh\" commands to be specified for use by\n     kvm-remote.sh\n   - Fix kvm-again.sh re-run failure on PowerPC\n   - Add additional lockdep testing for atomic SRCU\n   - Fix error double-counting in srcu_lockdep.sh\n   - Add atomic SRCU cross-CPU IRQ context mismatch testing, with the\n   - trick being that the atomic SRCU readers context must be at least\n     as strict as that of the atomic SRCU grace-period wait. So for\n     example, if the readers have IRQs disabled, so must the\n     grace-period wait\n\n  Miscellaneous updates:\n   - Update stallwarn.rst documentation for the re-implementation of RCU\n     Tasks Trace in terms of SRCU\n   - Fix the lazy-callback shrink scanner budget computation so that it\n     honors the reclaim budget\n   - Avoid panicking on RCU CPU stalls that end before the warning can\n     be printed\n   - Add \"running\" and \"boosted\" indications to the RCU task stall\n     warning output\n   - People have been (incorrectly) relying on rcu_barrier() to wait for\n     kfree_rcu() callbacks and processing. But it turns out to be easier\n     to fix rcu_barrier() to meet their expectations than to fix their\n     code to live within the earlier rcu_barrier() specification. So\n     rcu_barrier() now waits on kfree_rcu() callbacks and processing\n   - Disable RCU Tasks console output that track when this RCU flavor\n     switches between per-CPU and global callback queuing. New use cases\n     appeared that generated enough console traffic to cause trouble,\n     and no one seemed to care about these messages. For those needing\n     those messages, there is a new rcupdate.rcu_task_collapse_debug\n     kernel boot parameter\n   - Fix __rcu pointer attribute handling to eliminate false positives\n   - Fix typos and drop redundant #include directives\"\n\n* tag \u0027rcu.2026.10.12b\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux: (46 commits)\n  rcutorture: Add atomic SRCU cross-CPU IRQ context mismatch test\n  selftests/rcutorture: Fix double nerrs count in srcu_lockdep.sh\n  selftests/rcutorture: Wire atomic SRCU into srcu_lockdep.sh\n  rcutorture: Add atomic SRCU lockdep support\n  rcutorture: Fix kvm-again.sh re-run failure on ppc64\n  torture:  Allow specifying alternative ssh command to kvm-remote.sh\n  rcutorture: Synchronously wait for all rcu_torture_irq() callbacks to complete\n  rcutorture: Fix divide-by-zero with fwd_progress_div\u003d1\n  srcutree: Preserve IRQ state in synchronize_srcu_atomic() callchain\n  srcutiny: Add lockdep and early-boot checks to synchronize_srcu_atomic()\n  srcutree: Add lockdep and early-boot checks to synchronize_srcu_atomic()\n  srcutree: Skip torture to-big transition for atomic SRCU\n  srcutree: Don\u0027t transition atomic SRCU to big in srcu_gp_end()\n  srcutree: Make init_srcu_struct_atomic() prevent transition to big\n  srcu: Restrict atomic-SRCU non_block annotation to task context\n  srcutree: Remove srcu_barrier() sleep for atomic SRCU\n  srcutree: Skip callback scheduling for atomic SRCU grace periods\n  srcutree: Add reader-free fastpath to synchronize_srcu_atomic()\n  rcutorture: Add atomic-SRCU support to torture.sh\n  srcutree: Explicitly note DEFINE_SRCU() needs for srcu_barrier()\n  ...\n"
    },
    {
      "commit": "60ccbc2343d37c65a76b736eb7cf41ce0ec343b8",
      "tree": "e1256bd6866c3a6559d07a53f9db460d82b8b4a2",
      "parents": [
        "5bb58a6777a3d093013305d44133967cac17b2c4",
        "85f1bea97f1909f81577cfcf3e4db9017e7f5337"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:57:39 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:57:39 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/amd_sfh\u0027 into for-linus\n\n- support for newer AMD SoCs (Basavaraj Natikar)\n- sysfs attributes of operating-mode telemetry (Basavaraj Natikar)\n"
    },
    {
      "commit": "5bb58a6777a3d093013305d44133967cac17b2c4",
      "tree": "4d1ea728b3cd17eb0e110e04eb1bbd2fe1047e5e",
      "parents": [
        "5ac62bdef71a4e838ab84b8cdbb31c046524c358",
        "87d9c42eccfe21a4391e48732c1fdb8a1a2565cb"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:56:34 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:56:34 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/apple\u0027 into for-linus\n\n- power management fix for Apple Touch Bar (Andre Eikmeyer)\n- fix for trackpad hanling on T2 Macs (Aditya Garg)\n"
    },
    {
      "commit": "5ac62bdef71a4e838ab84b8cdbb31c046524c358",
      "tree": "d110f0a8663da05d83ef25fa6f0f3ba18d35f8ae",
      "parents": [
        "22434a272ede252be3165d19847cd197a8b45b60",
        "e16927855d822a163099ffb2d6a449913fe9487d"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:54:29 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:54:29 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/asus\u0027 into for-linus\n\n- SG Mobile LED support (Denis Benato)\n- power management fix for ROG Ally (Deni Benato)\n- asus_work() hardening (Denis Benato)\n- fix for invalid keyboard feature reports being sent on ASUS laptops\n  with I2C/HID touchpads (Panz Dev)\n"
    },
    {
      "commit": "9ba46df344883ca8bade47c0ed7aebf80a1e07b9",
      "tree": "aa43e93101bf0f28f00e4c0eaeaf4efe68533240",
      "parents": [
        "22a78a25438d246e4e951960523bee6a5155897d",
        "a73b4d1fa7d334a5f7de5bb0a14726530f66196e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 09:49:47 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 09:49:47 2026 -1000"
      },
      "message": "Merge tag \u0027bitmap-for-v7.4-rc1\u0027 of https://github.com/norov/linux\n\nPull bitmap updates from Yury Norov:\n \"This includes __MAKE_OP() macro removal from me with the follow-up\n  from Mark, cleanups for bitmaps parser from Shashank and a couple Rust\n  docs fixes from Georgios\"\n\n* tag \u0027bitmap-for-v7.4-rc1\u0027 of https://github.com/norov/linux:\n  rust: bitmap: document panics in `next_bit` and `next_zero_bit`\n  rust: id_pool: document panics in `find_unused_id` and `release_id`\n  bitmap: test bitmap_parselist() with a group size close to UINT_MAX\n  bitmap: bitmap_parselist(): don\u0027t wrap around on a huge group size\n  bitmap: test bitmap_parselist() with text after the group size\n  bitmap: bitmap_parselist(): reject trailing characters after group size\n  bitmap: test bitmap_parse() with an illegal character before 8 hex digits\n  bitmap: bitmap_parse(): reject non-hex character before 8 digits\n  bitfield: Restore be16_replace_bits()\n  bitfield: get rid of __MAKE_OP machinery\n"
    },
    {
      "commit": "22434a272ede252be3165d19847cd197a8b45b60",
      "tree": "bfeeeaf816309d5da89b8b0fc8a2275999b36043",
      "parents": [
        "6acb5f386f948ea2c20785a1a26eea5ac37a8bb8",
        "5fe63b415c636c7f4f6848a8e53bdd4bbf0c300d"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:44:43 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:44:43 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/core\u0027 into for-linus\n\n- OOB fix in s32ton() (Alan Stern)\n- switch to named initializers for acpi_device_id (Pawel Zalewski)\n- UAF fix in hiddev (Yousef Alhouseen)\n"
    },
    {
      "commit": "6acb5f386f948ea2c20785a1a26eea5ac37a8bb8",
      "tree": "1f5284768f0ac2db96da0af0384a59380631096c",
      "parents": [
        "bd61ad6215ec10990ff62f1b2bc69f1fb7e47227",
        "59fc35a1edbfa5405122d749cf8843da131fd796"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:43:53 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:43:53 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/i2c-hid\u0027 into for-linus\n\n- power management fix for i2c-hid, removing bus timeout\n  from every reboot (Justin Yeh)\n"
    },
    {
      "commit": "bd61ad6215ec10990ff62f1b2bc69f1fb7e47227",
      "tree": "36cc39a30639432a91300751ca1b9a5b4583067f",
      "parents": [
        "d6e1fb3620fbd984778808eab8dccc20a1fabc81",
        "291f4f310cc18ff8f5addbc3c9fbe33877283ec7"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:43:14 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:43:14 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/intel-thc-hid\u0027 into for-linus\n\n- conversion of intel-thc-hid to hid_safe_input_report() (Even Xu)\n"
    },
    {
      "commit": "d6e1fb3620fbd984778808eab8dccc20a1fabc81",
      "tree": "17839c6360102c50c98aa6d2143ec19d0ddb355c",
      "parents": [
        "a1d9dd9f23b7e1d0c3767123b092e78821496b9f",
        "d3c157b4cdffd14604c2d8435e279761c511bac2"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:42:22 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:42:22 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/lenovo\u0027 into for-linus\n\n- various functionality fixes and code cleanups of lenovo-go-s\n  driver (Derek J. Clark)\n"
    },
    {
      "commit": "a1d9dd9f23b7e1d0c3767123b092e78821496b9f",
      "tree": "149a492e5dcfbbdcdbb581a1b32630aa26475b8e",
      "parents": [
        "1c32a54dafe54c79456d1414dd1769d20704d441",
        "4d2fc1a0e46dba34b232204f06ccd78963cdeea8"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:40:55 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:40:55 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/nintendo\u0027 into for-linus\n\n- support for Switch 2 controller (Vicki Pfau)\n- support for PDP Afterglow controller (Aiman Najjar)\n"
    },
    {
      "commit": "1c32a54dafe54c79456d1414dd1769d20704d441",
      "tree": "1724c64a8f07d21c2fb6fd0bfe092bda243960c8",
      "parents": [
        "c5e50af20f4b2de08ddb2a2b6b3d0b32c430f432",
        "e55cf379e822b9ae7bd0d5fb7a5e7e4159213c52"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:38:35 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:38:35 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/pulsar\u0027 into for-linus\n"
    },
    {
      "commit": "c5e50af20f4b2de08ddb2a2b6b3d0b32c430f432",
      "tree": "ab1857fa229be7120e31adc05ad5972e61f9fcf1",
      "parents": [
        "8460eef1b986ec8b36686fba0d698cd8648cf3cd",
        "b0a42af46363b65d6e5018d971189c4882d689c3"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:32:00 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:32:00 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/roccat\u0027 into for-linus\n\n- fixed handling of short reports (Jiale Yao)\n"
    },
    {
      "commit": "8460eef1b986ec8b36686fba0d698cd8648cf3cd",
      "tree": "541fb48554656290c180cce6b73635c04297a727",
      "parents": [
        "e4ec772a255a06a10611ff63cb4435f7b735e31e",
        "97ce491bcef2d231b8d51cee8e579183319a5ba4"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:30:38 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:30:38 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/wacom\u0027 into for-linus\n\n- UAF fixes (Lee Jones)\n- SW_MUTE_DEVICE semantics fix (Lee Jones, Ping Cheng)\n"
    },
    {
      "commit": "e4ec772a255a06a10611ff63cb4435f7b735e31e",
      "tree": "70376c0507b4c512095940c6022f7a1a2eac51be",
      "parents": [
        "428c3c7d838a5f55cca4bbd46119457549cad6d8",
        "1484db59f5847fa3945b4f47f8e8ba28883a6cee"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:29:27 2026 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.com",
        "time": "Wed Oct 21 21:29:27 2026 +0200"
      },
      "message": "Merge branch \u0027for-7.4/wiimote\u0027 into for-linus\n\n- switch to scoped_guard (Rafael Passos)\n- LED-indicated controller ID support (Rafael Passos)\n"
    },
    {
      "commit": "22a78a25438d246e4e951960523bee6a5155897d",
      "tree": "a7f0fa921b89128fe082215e995ff8b091f8a07d",
      "parents": [
        "a804c5742bff224d4cb4d25dd383554d598be32b",
        "14b482c98dfe9683b12338561a6e9bd44f7337a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 07:19:30 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 07:19:30 2026 -1000"
      },
      "message": "Merge __{get,put}_user() removal branch\n\nThis is long over-due: the __get_user() and __put_user() functions are\nentirely historical, and are never the rigth thing to use any more.  And\nwhen mis-used (read: every case) they are not only slower than the right\nthing, but also insecure because they don\u0027t check the user address\nrange.\n\nMost of the usage sites have been converted long ago, but various\nleft-overs remained.  So this started out as a single patch that I wrote\nas a \"show people how to convert __{get,put}_user() to modern code\".\n\nIn particular, Thomas last year implemented the very nice new scoped\nuser access region helpers (see commit e497310b4ffb: \"uaccess: Provide\nscoped user access regions\") that makes the modern interfaces\nparticularly easy to use and really removes any excuse for the old\nhorrors.\n\nThat small example patch then grew to this, partly using Claude as a\nglorified coccinelle script to apply the pattern to other places.\n\nThere were a few different reasons for using __put_user() and\n__get_user() rather than the alternatives, but the original historical\none was performance: when doing multiple accesses off the same base\npointer, doing a single range check followed by multiple non-checked\naccesses used to create smaller and faster code.\n\nThe keyword here is \"used to\".  It hasn\u0027t been true for years, because\nthe range check isn\u0027t actually the real cost these days.  The real cost\nof user accesses on modern hardware is turning the user accesses on and\noff in the first place (on x86, using the STAC/CLAC instructions).\n\nThose sequences get turned into \u0027scoped_user_read_access() { }\u0027 blocks,\nsee for example that first patch in the series: \"signal: use scoped user\naccess for old-style sigaction\".\n\nAnother, historical reason for using __get_user() and friends is that\nyou actually want to do a kernel pointer access, but the pointer might\nnot be entirely reliable (typically during fault handling), so you want\nto have exception handling for the kernel access.\n\nThe modern way to do that kind of non-faulting kernel access is using\n\"get_kernel_nofault()\", but some code predates that helper existing at\nall, and used __get_user() as a way to just get a memory access with\nexception handling.  For that pattern, see for example \"alpha: use\nget_kernel_nofault() in dik_show_code()\"\n\nA third bad reason for using __get_user() and friends was that the\nproper get_user() had a \"might_fault()\" in it, and code that ran in\natomic regions but hadn\u0027t disabled page faults would result in a\nwarning.  That kind of code needs to explicitly disable page faults,\nbecause \"atomic region\" is not well defined at run-time and can be\ninvisible (eg a preempt-off region in a non-preemptible kernel).\n\nSee \"vdpa_sim: disable page faults around vringh_need_notify_iotlb()\"\nfor an example of that pattern, where the local_bh_disable() now also\ngrows a pagefault_disable(), which makes the normal get_user() no longer\nwarn about the user access in non-process context, because it can see\nthat the potential page fault will not cause problems.\n\nAnd finally, the really nasty reason to use __get_user() and friends:\npointers that can be either kernel pointers or user pointers.  We\u0027ve\ngotten rid of almost all such cases, but a couple remained.  See for\nexample \"x86/sev: Use explicit user-or-kernel accessors for #VC memory\noperands\".\n\nNOTE! This series removes all __get/put_user() calls from generic code\nbut only does the final removal of the whole interface on x86.  Other\narchitectures have not been entirely converted, for a variety of reasons:\n\n - arm64 makes __{get,put}_user() be exactly the same as\n   {get,put}_user() so it\u0027s harmless and didn\u0027t have the dangers of the\n   legacy use cases.\n\n - any architecture that uses \u003casm-generic/uaccess.h\u003e will still use\n   __{get,put}_user as the underlying helper function name\n\n - several architectures had some legacy uses that weren\u0027t entirely\n   trivial and I didn\u0027t want to extend this patch series to things that\n   I don\u0027t know and that don\u0027t really matter.\n\nbut I did do a couple of the obvious \"follows the exact same pattern\"\njust because it could be done mindlessly and automatically.\n\nLet\u0027s see if I broke anything, but we should have done this years ago.\n\n* uaccess-cleanups: (48 commits)\n  drm/i915/gem: ignore errors on presumed_offset write-back\n  powerpc/align: use get_user_instr() for a user-mode instruction\n  powerpc/signal64: use scoped user access in setup_trampoline()\n  powerpc/signal64: use get_user() for the single context reads\n  powerpc/signal32: use get_user() for the single context reads\n  KVM: PPC: Book3S HV: use get_user()/put_user() for the HPT fd\n  powerpc/powernv: use get_user()/put_user() in the LPC debugfs files\n  s390: use get_user()/put_user() instead of the unchecked variants\n  ARM: OABI: use scoped user access in epoll_put_uevent()\n  ARM: signal: stop using __put_user() for the signal frame\n  ARM: signal: check the FDPIC function descriptor address\n  alpha: split the prefetch check in do_page_fault() by mode\n  openrisc: use get_kernel_nofault() in show_registers()\n  alpha: use get_kernel_nofault() in dik_show_code()\n  nios2: use scoped user access for the signal frame\n  nios2: check the signal frame address before writing to it\n  hexagon: use scoped user access for the signal frame\n  alpha: use scoped user access when setting up signal frames\n  alpha: use scoped user access in the sigreturn path\n  alpha: use scoped user access in osf_sigaction()\n  ...\n"
    },
    {
      "commit": "14b482c98dfe9683b12338561a6e9bd44f7337a9",
      "tree": "872610580d070e6dbdcf98b900924b82166f2a66",
      "parents": [
        "5dcf33085cd095010eecf42d04c9101821361d8d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 07:13:59 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 21 07:13:59 2026 -1000"
      },
      "message": "drm/i915/gem: ignore errors on presumed_offset write-back\n\nIt appears that the crazy \"don\u0027t check for errors\" code in the i915\nrelocation code was intentional, but not visible in the code as such.\nSee commit 97a37c919f62 (\"drm/i915/gem: Ignore readonly failures when\nupdating relocs\").  Quoting that commit:\n\n    \"Be damned if you do, and damned if you don\u0027t.\"\n\nSo disable the error check again, but leave it around visibly for\nposterity as documentation for why it\u0027s not there.\n\nFixes: 03c19e449ac6 (\"drm/i915/gem: Don\u0027t fault on presumed_offset write-back\")\nReported-by: Rodrigo Vivi \u003crodrigo.vivi@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a804c5742bff224d4cb4d25dd383554d598be32b",
      "tree": "9ed21d8b340428f13f26485f2d0c5085445d8cdf",
      "parents": [
        "331eadd85f14bac85663c14c99228f6dedf64d87",
        "436485132d2367a50aa22dcc8a89faeee24a4cc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 20:04:07 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 20:04:07 2026 -1000"
      },
      "message": "Merge tag \u0027lsm-pr-20261016\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm\n\nPull lsm updates from Paul Moore:\n\n - Add LSM hooks, object blobs, and audit records for namespaces\n\n   Add the necessary bits to enable LSMs to enforce access controls on\n   the management of various kernel namespaces. While this pull request\n   does not contain any in-tree users of these hooks, the Landlock pull\n   request for Linux v7.4 will include Landlock support and the next\n   merge window will likely include SELinux support as well. Considering\n   the development behind these hooks, I expect that BPF LSM developers\n   will also be making use of the namespace hooks, if they haven\u0027t\n   already.\n\n - Update the inode LSM hooks to include mount idmaps\n\n   This allows LSMs to incorporate the mount ID mapping into their\n   access control decisions. While there are no current in-tree users of\n   this, it was requested by those developing BPF LSM programs and this\n   pull request includes a BPF LSM selftest.\n\n - Preserve the full 32-bit ioctl command in LSM audit records\n\n   Previously only the low 16 bits were logged, ignoring the direction\n   and size information in the upper 16 bits. The pull request also\n   includes a Landlock based selftest to verify the full 32-bit ioctl\n   value.\n\n - Ensure we don\u0027t call security_backing_file_free() multiple times\n\n   Thankfully we don\u0027t have a problem with the current code base, but we\n   want to fix this behavior now before it becomes a problem.\n\n - Clarify that only the current task may access current-\u003ecred\n\n   The current code is a bit misleading around safely accessing the cred\n   field in a task struct. Through comment and code corrections, this\n   pull request clarifies that only the task itself may access its cred\n   field.\n\n - Add SLAB_NO_MERGE to the credential object cache\n\n   Harden the credential cache by ensuring credential objects live on\n   dedicated slab pages.\n\n - Make use of safe memory zero\u0027ing in the LSM Rust bindings\n\n - Update the docs for the current behavior of /sys/kernel/security/lsm\n\n - Update the docs for CONFIG_LSM and the \"lsm\u003d\" command line option\n\n - Remove unnecessary code\n\n* tag \u0027lsm-pr-20261016\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/lsm:\n  lsm: remove redundant NULL check in security_init()\n  selftests/landlock: Check full ioctl commands in audit records\n  lsm: Preserve full ioctl commands in audit records\n  doc: fix LSM ordering description for /sys/kernel/security/lsm\n  doc: describe CONFIG_LSM and lsm\u003d as the selection mechanism\n  selftests/bpf: verify mount idmaps reach inode hooks\n  lsm: expose mount idmaps to inode hooks\n  rust: lsm: replace `core::mem::zeroed` with `pin_init::zeroed`\n  cred: prevent slab cache merging for cred_jar\n  lsm: don\u0027t call security_backing_file_free() multiple times\n  lsm: delete duplicate assignment in lsm_prepare()\n  lsm: update the BUILD_BUG_ON() in audit_log_lsm_data()\n  lsm: add LSM_AUDIT_DATA_NS for namespace audit records\n  lsm: add LSM blob and hooks for namespaces\n  ns: Free anonymous mount namespaces via ns_common_free()\n  cred: clarify that task_struct::cred is only for the current task\n"
    },
    {
      "commit": "331eadd85f14bac85663c14c99228f6dedf64d87",
      "tree": "4edadfca6401b56572b9936d275d8b3f97768475",
      "parents": [
        "0d508d4709837bcc88e314c0533a42d3c55b31e3",
        "b73b967b0fc44707f39faa4f298f1f9d9b7bfac5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 19:42:14 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 19:42:14 2026 -1000"
      },
      "message": "Merge tag \u0027selinux-pr-20261015\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux\n\nPull selinux updates from Paul Moore:\n\n - Continue to improve the load time validation of SELinux policies\n\n   While SELinux policy loading remains a privileged operation, we\n   continue the recent trend of hardening the policy parsing and\n   validation code in the kernel to ensure that invalid, or poorly\n   formatted policies are rejected at load time.\n\n - Correctly incorporate \"neveraudit\" into the xperms code\n\n   This change aligns the xperms neveraudit handling with the\n   conventional permission handling code, exiting early from the SELinux\n   auditing code when neveraudit is enabled for the domain.\n\n - Mark the selinuxfs \"status\" and \"policy\" files immutable\n\n   These are read-only kernel/userspace interfaces that could\n   successfully be opened at the VFS layer through the use of\n   CAP_DAC_OVERRIDE. With this pull request we are marking these two\n   files as immutable so that the requests to open these file with write\n   permissions now fail at the VFS layer. This also allows us to drop\n   some of our mmap() checks around write permissions as the VFS will\n   now also handle this for us.\n\n   The existing SELinux permissions checks remain untouched.\n\n - Convert the selinuxfs inode numbers to u64\n\n   Bring selinuxfs current with other filesystems in using u64 for inode\n   numbering as opposed to the architecture dependent unsigned long.\n\n - Constify a number of the SELinux AVC function parameters\n\n - Remove a SELinux MLS function that was no longer used\n\n* tag \u0027selinux-pr-20261015\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:\n  selinux: validate permissive and neveraudit map types at load\n  selinux: validate user MLS range and default level at load\n  selinux: bounds-check role and user membership bitmaps at load\n  selinux: check neveraudit in avc_xperms_audit_required()\n  selinux: bounds-check filename transition source types at load\n  selinux: reject duplicate symbol values during policy load\n  selinux: reject a policy that both rejects and allows unknown classes\n  selinux: constify avc function parameters\n  selinux: avoid 64-bit division of inode numbers\n  selinux: mark status and policy inodes as immutable, drop status mmap write checks\n  selinux: remove unused mls_setup_user_range()\n  selinux: convert selinuxfs inode numbers from unsigned long to u64\n  selinux: tighten policydb_context_isvalid() checks\n"
    },
    {
      "commit": "0d508d4709837bcc88e314c0533a42d3c55b31e3",
      "tree": "c000c7340dc2a1ebdc62390960b4653776baca30",
      "parents": [
        "2c455ddca7827ad8fa3a64fdbf5a60efb928b46a",
        "b9e002df320f19b3425ebbfd1edd2f673c16e551"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 19:35:13 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 19:35:13 2026 -1000"
      },
      "message": "Merge tag \u0027audit-pr-20261016\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit\n\nPull audit updates from Paul Moore:\n\n - Fix the accounting of audit filter rule additions and removals\n\n   Tracking audit filter rules is important as their presence can\n   trigger additional processing. Unfortunately, the existing code did\n   not properly track the removal of filter rules, resulting in some\n   cases where additional processing was done when none was required.\n\n   This not only corrects the accounting problems, but also provides a\n   cleaner API for tracking audit filter rule additions and removals.\n\n - Add a FSOPEN record to log the filesystem name in the new mount API\n\n   Close a long standing audit blindspot by capturing the filesystem\n   name, e.g. \"tmpfs\", when calling fsopen().\n\n - Split audit\u0027s storage of process and file capabilities\n\n   Instead of a single structure that stores all possible capability\n   information, create a dedicated audit file capabilities struct and\n   convert the existing audit capabilities struct into a process\n   capabilities struct. This saves 80 bytes from the per-task\n   audit_context on 64-bit systems.\n\n - Ensure that the PROCTITLE record is reset on exec()\n\n   This fixes a problem where systemd would set a temporary PROCTITLE\n   string after forking a child process before calling exec(),\n   effectively locking the PROCTITLE string to the temporary value. This\n   pull request resets the PROCTITLE state on exec() so that newly\n   executed processes can set their PROCTITLE correctly.\n\n - Add some missing unlikely() annotations to the audit wrapper\n   functions\n\n - Clean up the audit netlink multicast skb length adjustment\n\n* tag \u0027audit-pr-20261016\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:\n  audit: add FSOPEN record to log filesystem name\n  audit: separate file and process capability storage\n  audit: Fix filter rule accounting after automatic removal\n  audit: use copied skb length in kauditd_send_multicast_skb()\n  audit: add missing unlikely hint to audit_dummy_context() wrappers\n  audit: free proctitle in context so it can be re-set by fork on exec_binprm\n"
    },
    {
      "commit": "2c455ddca7827ad8fa3a64fdbf5a60efb928b46a",
      "tree": "e293ffebfeafd31158c4f1de2204c52d65172074",
      "parents": [
        "72a16bcff25e9f4a1d6d42a243301b1b76db2f32"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 18:27:33 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 18:27:33 2026 -1000"
      },
      "message": "smb client: fix mis-merge with fileattr_set taking a const idmap\n\nThe danger of doing the merge window while on vacation and traveling\nwith just the laptop: I only do full builds a couple of times a day\nbecause they are so slow on my poor little laptop.\n\nAs a result, I missed the conflict between the newly added smb client\nfileattr_set function (commit 273913b7c33a: \"smb: client: implement\nfileattr_set for compression flags\") and the vfs layer having in the\nmeantime made the idmap argument \u0027const\u0027 (commit 025756ee7b47: \"fs: port\nmnt_idmap() and file_mnt_idmap() to const mnt_idmap\")\n\nMea culpa.\n\nFixes: 32543b09681a (\"Merge tag \u0027cifs-for-7.4\u0027 of https://git.manguebit.org/linux\")\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "72a16bcff25e9f4a1d6d42a243301b1b76db2f32",
      "tree": "bedf158f3109b837052085d2b88aaf990f0f449d",
      "parents": [
        "7b9498b77066bd2a55f607e82a05b0888dde990a",
        "82bcb7b05ad90de126e9c09a7b46a81be799620e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:53:30 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:53:30 2026 -1000"
      },
      "message": "Merge tag \u0027dlm-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm\n\nPull dlm updates from David Teigland:\n \"This contains several fixes for bugs found by static analysis, fuzzing\n  and code review. They mostly involve invalid input, e.g. from\n  userspace, configfs or remote nodes, and are unlikely to be seen in\n  normal usage\"\n\n* tag \u0027dlm-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:\n  dlm: fix typos in comments\n  dlm: clean up a type in waiters_read()\n  dlm: validate node weights before building member array\n  dlm: wait for outstanding SRCU callbacks to complete in exit paths\n  dlm: fix variable key length lookup\n  dlm: fix NULL pointer dereference in dlm_dump_rsb_name()\n  dlm: validate lock modes in recovery messages\n  dlm: fix buffer overflow from negative len in dlm_search_rsb_tree\n  dlm: validate userspace lock resource name length\n  dlm: require CAP_SYS_ADMIN for dlm-monitor device\n  dlm: gate dlm_plock device on CAP_SYS_ADMIN\n"
    },
    {
      "commit": "7b9498b77066bd2a55f607e82a05b0888dde990a",
      "tree": "3685474b7678b4079ee882ea15b5d088a6fdb35f",
      "parents": [
        "75663f575f34291007852859486cafc08dc10d0e",
        "1137aa577a35e2684e8046c3e53f920e79c7cc60"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:50:37 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:50:37 2026 -1000"
      },
      "message": "Merge tag \u0027erofs-for-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs\n\nPull erofs updates from Gao Xiang:\n \"The most notable change is to support superblock sharing for\n  composefs, thanks to Giuseppe again.\n\n  Another one switches to iomap for file-backed mounts on unencoded\n  inodes, which enables efficient sub-folio I/Os. The others are all\n  random ones.\n\n  Summary:\n   - Support superblock sharing for file-backed mounts\n   - Use iomap for file-backed mounts on unencoded inodes\n   - Minor fixes and cleanups\"\n\n* tag \u0027erofs-for-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:\n  erofs: enable iomap for file-backed mounts on unencoded inodes\n  erofs: use on-disk blkszbits for lz4 max pcluster bound\n  mailmap: update entry for Gao Xiang\n  MAINTAINERS: erofs: update my email address\n  erofs: reuse superblock for file-backed mounts\n  MAINTAINERS: erofs: add dev branch to git tree entry\n  erofs: fix xattrs handling when metadata compression is used\n"
    },
    {
      "commit": "75663f575f34291007852859486cafc08dc10d0e",
      "tree": "7b8e5e90464ec02d923926558a39b288ade5e71f",
      "parents": [
        "910a00830bc151d6fd8e515c834149080c4c4940",
        "ec8f62cc109a3f596b3c65dc0f1011c209239051"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:46:38 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:46:38 2026 -1000"
      },
      "message": "Merge tag \u0027xfs-merge-7.4\u0027 of git://git.kernel.org:/pub/scm/fs/xfs/xfs-linux\n\nPull xfs updates from Carlos Maiolino:\n \"The bulk of this are bug fixes, cleanups and code refactoring, lots of\n  them. Majority of those bug fixes are targeting scrub and online\n  repair code. There are no real new features here but lots of prep code\n  for future work. There are also some small performance optimizations\n  but nothing major\"\n\n* tag \u0027xfs-merge-7.4\u0027 of git://git.kernel.org:/pub/scm/fs/xfs/xfs-linux: (168 commits)\n  xfs: don\u0027t limit software atomic writes by the group alignment\n  xfs: add missing cursor stat checks after xfs_btree_delete\n  xfs: add missing cursor status check after xfs_inobt_get_rec\n  xfs: handle NULL open_zone for merged ioends in xfs_end_ioend_write_zoned\n  xfs: refactor inode forkoff to byte conversions\n  xfs: drop unnecessary sr parameter from xchk_rtgroup init functions\n  xfs: drop unnecessary sa parameter from xchk_ag init functions\n  xfs: drop unnecessary sr parameter from xrep_rtgroup init functions\n  xfs: drop unnecessary sa parameter from the xrep_ag init functions\n  xfs: improve dirent bounds checking in scrub and repair\n  xfs: refactor directory data block walking loops in scrub\n  xfs: update quota flags on secondary supers when metadir enabled\n  xfs: don\u0027t try to repair rtsummary if the summary file isn\u0027t computed\n  xfs: rescan the AGs if incore delalloc counter is negative\n  xfs: don\u0027t rescan ifree and icount when frozen\n  xfs: don\u0027t set a metadata directory\u0027s parent to sb_rootino\n  xfs: don\u0027t scan across metadata/regular directory trees for dirents\n  xfs: always report scrub errors in tracepoints\n  xfs: opportunistically skip btree block checks\n  xfs: clear set[ug]id mode bits when zapping attr fork\n  ...\n"
    },
    {
      "commit": "910a00830bc151d6fd8e515c834149080c4c4940",
      "tree": "cc482891894f8c38336cbb5a2301a55ad39c343b",
      "parents": [
        "744e5400b36f84b4816e3ff8531ec2dff52b474c",
        "2f9efb1efe4e026e44b7693e67f54344ae022deb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:42:50 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:42:50 2026 -1000"
      },
      "message": "Merge tag \u0027gfs2-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2\n\nPull gfs2 updates from Andreas Gruenbacher:\n\n - Two journaled data inode fixes (fix journaled truncate range end\n   offset, fix the escaped block copy in gfs2_before_commit)\n\n - When reading a new resource group from disk, validate its boundaries\n\n - To eliminate lock contention, get rid of the per-filesystem\n   sd_async_glock_wait queue and wait for the individual glock locking\n   events instead\n\n - Shut up sparse RCU warnings by marking ip-\u003ei_gl as __rcu. Accessing\n   it through gfs2_inode_glock() -\u003e rcu_dereference_protected() where we\n   know that the pointer cannot change\n\n - Some more minor fixes and cleanups\n\n* tag \u0027gfs2-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:\n  gfs2: remove unnecessary check in gfs2_freeze_lock_shared\n  gfs2: fix the escaped block copy in gfs2_before_commit()\n  gfs2: gfs2_create_inode excl cleanup\n  gfs2: Fix the return value in gfs2_get_link() kernel-doc\n  gfs2: fix NULL deref in gfs2_quota_lock() for meta inodes\n  gfs2: fix typos in comments\n  gfs2: Fix journaled truncate range end offset\n  gfs2: missing whitespace in error message\n  gfs2: Get rid of sd_async_glock_wait\n  gfs2: reject invalid inode sizes\n  gfs2: No quotas for meta inodes\n  gfs2: move brelse() after buffer head accesses\n  gfs2: Improve resource group validation and error handling\n  gfs2: Silence sparse signedness warning\n  gfs2: annotate i_gl with __rcu\n  gfs2: Introduce gfs2_inode_glock\n  gfs2: Add inode variables\n  gfs2: Get to super block from inode in tracepoints\n  gfs2: Avoid ip-\u003ei_gl dereferences in gfs2_inode_lookup and gfs2_create_inode\n"
    },
    {
      "commit": "744e5400b36f84b4816e3ff8531ec2dff52b474c",
      "tree": "2d211f0b6ca39164bd2fff8b31b4add4e98f0521",
      "parents": [
        "fefd797c4135f183f87cde5ed4ad7974af087143",
        "0f242ca0878896df30292f4922700a32e8fdd039"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:30:13 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:30:13 2026 -1000"
      },
      "message": "Merge tag \u0027fs_for_v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs\n\nPull ext2, isofs, udf and quota updates from Jan Kara:\n\n - ext2 changes to support clang context tracking\n\n - multiple isofs hardenings and cleanups\n\n - several udf hardening fixes\n\n - block use of fs-specific quota formats with incorrect filesystem\n\n* tag \u0027fs_for_v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: (26 commits)\n  udf: fix return value for non-recorded-allocated extents in udf_map_block()\n  isofs: shrink the name conversion buffer\n  isofs: pass the name buffer size to get_rock_ridge_filename()\n  isofs: report the Joliet name length in statfs\n  isofs: return long Joliet names whole\n  isofs: Simplify isofs_read_level3_size()\n  isofs: bound empty directory blocks in isofs_read_level3_size()\n  quota: fix shrinker scan budget accounting in dqcache_shrink_scan()\n  ext2: drain in-flight DIO before buffered write fallback\n  isofs: validate directory records in isofs_read_level3_size()\n  once_lite: Simplify condition handling and fix context analysis\n  isofs: convert the zisofs read path to use folios\n  isofs: fix Rock Ridge CE extent validation on multisession media\n  shmem: Refuse to enable tmpfs format for another filesystem\n  ocfs2: Refuse to enable ocfs2 format for another filesystem\n  ext2: enable context analysis support for ext2 filesystem\n  ext2: annotate s_rsv_window_root as requiring s_rsv_window_lock\n  ext2: annotate block-mapping helpers as requiring truncate_mutex\n  ext2: annotate ext2_init_block_alloc_info() as requiring truncate_mutex\n  ext2: mark s_mount_state as guarded by s_lock\n  ...\n"
    },
    {
      "commit": "fefd797c4135f183f87cde5ed4ad7974af087143",
      "tree": "a767202f9c487abbba9c6bc1a97e5b27963fefbe",
      "parents": [
        "d4d9eb226e4c2af8ab390bb470477fa68072fa2a",
        "ff05910cb1b77c2b229c5e6e260c6173a17b579b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:28:33 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:28:33 2026 -1000"
      },
      "message": "Merge tag \u0027fsnotify_for_v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs\n\nPull fsnotify updates from Jan Kara:\n \"A couple of smaller changes for fsnotify\"\n\n* tag \u0027fsnotify_for_v7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:\n  fanotify: report names longer than NAME_MAX\n  fanotify: Re-add Matt Bobrowski as a reviewer\n  fsnotify: fix typo \"anonynous\" in comment\n"
    },
    {
      "commit": "d4d9eb226e4c2af8ab390bb470477fa68072fa2a",
      "tree": "d3fc2518cadcd349ef5b4cca40d6467468057a1d",
      "parents": [
        "32543b09681a142ff1803d87609060f491355346",
        "6c1fa55e287a64ebbf6877f8dd288c6d2ecf4ede"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:25:43 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:25:43 2026 -1000"
      },
      "message": "Merge tag \u0027configfs-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/leitao/linux\n\nPull configfs updates from Breno Leitao:\n\n - Attribute structures can now be const (Thomas Weißschuh)\n\n - The first selftests for the configfs userspace interface, plus a\n   sample subsystem that accepts symlinks to test against. They include\n   a race of symlink(2) against rmdir of the target, which exercises the\n   use-after-free fixed in v7.3-rc3.\n\n - Rust bindings, merged from Andreas Hindborg\u0027s signed tag: fix the\n   data offset calculation in subsystem callbacks (marked for stable),\n   add the missing Send and Sync bounds, and correct a safety comment.\n\n* tag \u0027configfs-7.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/leitao/linux:\n  samples: configfs: constify the configfs_attribute structures\n  configfs: Allow the registration of const struct configfs_attribute\n  configfs: Constify configfs_bin_attribute\n  configfs: Treat attribute structures as const internally\n  configfs: Constify is_visible/is_visible_bin in configfs_group_operations\n  rust: configfs: remove mutability from some field initializers\n  selftests/configfs: race symlink against rmdir of the target\n  selftests/configfs: cover symlink and unlink\n  samples/configfs: add a subsystem that accepts symlinks\n  selftests/configfs: add tests for the userspace interface\n  rust: configfs: fix data offset calculation for subsystem callbacks\n  rust: configfs: require thread-safe callback data\n  rust: configfs: fix release safety documentation\n"
    },
    {
      "commit": "32543b09681a142ff1803d87609060f491355346",
      "tree": "d55d96dbf837aeee78a30a5c8f4697de37a598ef",
      "parents": [
        "dd7b15aeac80425faa7f0af55776be117db61548",
        "78f73985846465a25a7bd1d89904053661f3ca92"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:16:00 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:16:00 2026 -1000"
      },
      "message": "Merge tag \u0027cifs-for-7.4\u0027 of https://git.manguebit.org/linux\n\nPull smb client updates from Paulo Alcantara:\n\n - Implement -\u003efileattr_set so chattr(1) compression changes (chattr\n   +c/-c) go through the generic VFS fileattr path and its permission\n   and serialization checks instead of the raw FS_IOC_SETFLAGS fallback\n   and remove the now-unreachable file flags ioctl handlers\n\n - Require stable pages when the connection is signed or SMB compression\n   is enabled, so a buffered write can no longer modify a folio that is\n   still in flight and corrupt its signature (surfaced as -EIO) or, with\n   compression, silently corrupt the data stored on the server\n\n - Stop breaking a file\u0027s just-granted lease while probing it for a\n   Minshall+French symlink, by reusing an already open handle or opening\n   with the inode\u0027s lease key\n\n - Fix several out-of-bounds reads and use-after-free bug in SMB1\n\n - Fix an use-after-free bug in cifs_ses_add_channel()\n\n - Fix a NULL pointer dereference in the demultiplex thread when an\n   encrypted read response matches no outstanding request and reclaim\n   the credits granted on such responses to avoid starving the\n   connection of credits\n\n - Fail sends fast when the connection needs to reconnect\n\n - Drop the redundant nls_table argument threaded through the session\n   setup, tree connect and path-based call paths, allocate the session\n   setup state on the stack and remove the internal CIFS version number\n   along with a batch of write-only fields and commented-out code\n\n* tag \u0027cifs-for-7.4\u0027 of https://git.manguebit.org/linux: (61 commits)\n  smb: client: reclaim credits for decrypted reads with no matching mid\n  smb: client: do not pass a NULL buf to is_oplock_break()\n  smb: client: require stable pages for SMB compression\n  smb: client: allocate struct SMB2_sess_data on the stack\n  smb: client: allocate struct sess_data on the stack\n  smb: client: drop redundant nls_table arg from CIFSSMBRenameOpenFile()\n  smb: client: drop redundant nls_table arg from SMBLegacyOpen()\n  smb: client: drop redundant nls_table arg from CIFSPOSIXCreate()\n  smb: client: drop redundant nls_table arg from CIFSPOSIXDelFile()\n  smb: client: drop redundant nls_table arg from -\u003etree_connect()\n  smb: client: drop redundant nls_table arg from cifs_setup_session()\n  smb: client: drop redundant nls_table arg from -\u003esess_setup()\n  smb: client: drop unused nls_table arg from decode_ascii_ssetup()\n  smb: client: drop redundant nls_table arg from decode_unicode_ssetup()\n  smb: client: drop unused nls_table arg from ascii_ssetup_strings()\n  smb: client: drop redundant nls_table arg from unicode_ssetup_strings()\n  smb: client: drop unused nls_table arg from ascii_domain_string()\n  smb: client: drop redundant nls_table arg from unicode_domain_string()\n  smb: client: drop unused nls_table arg from ascii_oslm_strings()\n  smb: client: drop redundant nls_table arg from build_ntlmssp_auth_blob()\n  ...\n"
    },
    {
      "commit": "dd7b15aeac80425faa7f0af55776be117db61548",
      "tree": "d971b0665476e8e955a724a23768e30c2c35beaf",
      "parents": [
        "d28fb91dd82aa56359b6de4d6241b7063672a4c0",
        "f278d04be3acfd3a9eccf045b9eb180007cceccc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:06:21 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 16:06:21 2026 -1000"
      },
      "message": "Merge tag \u0027hfs-v7.4-tag1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vdubeyko/hfs\n\nPull hfs/hfsplus updates from Viacheslav Dubeyko:\n \"Fix {hfs,hfsplus}_btree_close() (Bruno Produit):\n   - B-tree nodes with a zero reference count remain in the node hash\n     until folio reclaim or tree teardown frees them. The folio release\n     callbacks remove nodes while holding hash_lock, but\n     hfs_btree_close() walks and frees the same hash without that lock.\n     Reclaim can therefore unhash and free a node after close has loaded\n     its pointer, causing a use-after-free or double-free. Detach each\n     node with hfs_bnode_unhash() while holding hash_lock before\n     inspecting and freeing it. Drop the lock before hfs_bnode_free() so\n     a large tree is not freed while holding a spinlock.\n\n  Fix hfs_inode_setattr() and hfs_brec_insert() (Davy Felipe):\n   - hfs_inode_setattr() rejects unsupported UID, GID and mode changes,\n     but returns the value stored in error when the filesystem is not\n     mounted with the quiet option. At this point error is zero, as\n     execution has already passed a successful setattr_prepare() call.\n     As a result, unsupported attribute changes are incorrectly reported\n     to userspace as successful even though the inode remains unchanged.\n     Return -EPERM for these operations while preserving the existing\n     behavior for quiet mounts.\n   - hfs_brec_insert() may fail while inserting a new extent record, but\n     __hfs_ext_write_extent() currently ignores its return value and\n     clears HFS_FLG_EXT_DIRTY and HFS_FLG_EXT_NEW as if the insertion\n     had succeeded. Use a reusable B-tree node range helper that takes\n     the find data and the expected record size. The helper validates\n     the bnode and tree pointers, entry offset and entry length, and\n     ensures that the write range fits within the node.\n\n  Fix failure in xfstests generic/339 (Viacheslav Dubeyko):\n   - The test left an HFS+ volume corrupted and, as a result,\n     fsck.hfsplus reported a long run of \"Illegal name\". The root cause\n     is that fs/hfsplus/unicode.c\u0027s decomposition table (Apple Technote\n     #1150) decomposes each source character entirely on its own and\n     never does anything further with the result. Real fsck_hfs has\n     carried a permanent \"FixDecomps\" fixup in CatalogCheck.c for\n     exactly what that leaves unhandled. The fix makes hfsplus store,\n     hash and compare names the same way current macOS does\"\n\n* tag \u0027hfs-v7.4-tag1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vdubeyko/hfs:\n  hfs: handle extent B-tree write errors\n  hfsplus: add KUnit coverage for canonical reordering and legacy fixups\n  hfsplus: canonicalize decomposed catalog names like fsck_hfs expects\n  hfsplus: add Unicode combining-class and legacy decomposition data\n  hfs/hfsplus: serialize B-tree close against folio release\n  hfs: return -EPERM for unsupported setattr changes\n"
    },
    {
      "commit": "d28fb91dd82aa56359b6de4d6241b7063672a4c0",
      "tree": "096f02f090ae5cbd19fd6f1d25a58300b7ddd656",
      "parents": [
        "2f31dddb243cf9f457af60f0124abea6a65d5e2c",
        "de7f49c12566cc5c7437a2f26c6c754b9d4d5648"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:59:26 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:59:26 2026 -1000"
      },
      "message": "Merge tag \u0027nilfs2-v7.4-tag1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vdubeyko/nilfs2\n\nPull nilfs2 updates from Viacheslav Dubeyko:\n \"Fix issues in nilfs_sufile_get_suinfo(), nilfs_scan_dsync_log(), and\n  nilfs_find_or_create_root() (Aldo Ariel Panzardo):\n   - If the requested segment number is greater than the total number of\n     segments, the function may process segment numbers outside the\n     filesystem.\n   - nilfs_scan_dsync_log() trusts the block counts in each on-disk file\n     information entry. If fi_ndatablk is greater than fi_nblocks, the\n     data block loop can consume excessive summary entries and the later\n     subtraction used to derive the number of node blocks underflows.\n   - nilfs_find_or_create_root() links a new checkpoint root into the\n     checkpoint tree and drops ns_cptree_lock before creating the root\u0027s\n     sysfs group. If nilfs_sysfs_create_snapshot_group() then fails, the\n     root is freed while it is still reachable from ns_cptree, so a\n     concurrent nilfs_lookup_root() can dereference freed memory.\n\n  Fix typos in comments, reported by scripts/checkpatch.pl using the\n  misspelling list in scripts/spelling.txt (Hemanth Selam)\n\n  Fix issues in nilfs_recover_dsync_blocks() and nilfs_readdir() (Jake\n  Labelle):\n   - During roll-forward recovery, nilfs_recover_dsync_blocks() obtains\n     the inode designated by fi_ino of a dsync log without checking its\n     type. Regular files, directories, and symlinks are the only inode\n     types with data blocks to recover; reject anything else before\n     touching its block mapping.\n   - nilfs_readdir() uses ctx-\u003epos, which userspace can set to an\n     arbitrary value via llseek, as an offset into the directory folio\n     and parses whatever bytes sit there as a directory entry. Snap\n     unaligned positions onto a valid entry boundary by walking the\n     rec_len chain from the chunk start before parsing.\n\n  Fix issue in logic of clearing the dirty folios. When garbage\n  collection fails, nilfs2 rolls the DAT metadata file\u0027s page cache back\n  to a shadow copy taken before GC started. nilfs_clear_dirty_pages()\n  drops the dirty state of the folios in the DAT cache, then\n  nilfs_copy_back_pages() overwrites them with the saved contents and\n  warns if one is still dirty. Add a force flag to\n  nilfs_clear_dirty_pages() and nilfs_clear_folio_dirty() that skips the\n  busy buffer check, and set it in the two calls from\n  nilfs_mdt_restore_from_shadow_map() (Jiaming Zhang)\n\n  Remove dead code and comment code sections in nilfs_new_inode(),\n  nilfs_read_inode_common(), and nilfs_setup_super() (Joshua Crofts)\n\n  Multiple fixes (Ryusuke Konishi):\n   - While the recent out-of-bounds memory access issue in\n     nilfs_direct_propagate() has already been fixed, adds extra checks\n     to catch and gracefully handle similar potential bugs.\n   - Fix syzbot reported deadlock between nilfs_evict_inode() and\n     find_inode() by removing the synchronous log writer trigger from\n     nilfs_evict_inode().\n   - Fix an omitted clear of the dirty flag on backing device buffers,\n     which could cause an abnormal buffer state and potential block\n     overwriting data corruption.\n   - Improve stability by preventing errors caused by user interrupts\n     while waiting for log writes, which are triggered by synchronous\n     write flags following operations such as rename().\n   - Refactor the metadata file writeback callback function,\n     restructuring an inefficient legacy function organization rooted in\n     the era of aops-\u003ewritepage() to align with aops-\u003ewritepages().\n   - Fix a link count underflow during rmdir on a directory with a\n     corrupted link count (an issue recently reported by syzbot).\n\n  Eliminate blockdev_direct_IO() from nilfs2 entirely. Add iomap.h\n  with declaration of iomap operations and iomap.c with implementation\n  of nilfs_iomap_begin(). The nilfs_direct_IO() and the .direct_IO\n  callback on nilfs_aops are removed. The nilfs_file_read_iter()\n  dispatches O_DIRECT reads to iomap_dio_rw() using nilfs_iomap_ops.\n  Everything else still goes through generic_file_read_iter()\n  (Viacheslav Dubeyko)\"\n\n* tag \u0027nilfs2-v7.4-tag1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vdubeyko/nilfs2:\n  nilfs2: validate directory position after llseek in readdir\n  nilfs2: reject non-regular inodes in dsync recovery\n  nilfs2: fix link count underflow when removing corrupted directory\n  nilfs2: simplify nilfs_mdt_writeback()\n  nilfs2: ignore non-fatal signals during synchronous log write wait\n  nilfs2: clear dirty flag on bdev buffers on log write failure\n  nilfs2: fix deadlock between nilfs_evict_inode() and find_inode()\n  nilfs2: fix checkpoint root lifetime on sysfs errors\n  nilfs2: switch O_DIRECT to iomap based operations\n  nilfs2: add iomap operations for direct I/O\n  nilfs2: validate file block counts during recovery\n  nilfs2: force clear dirty state when restoring from the shadow map\n  nilfs2: validate segment number in nilfs_sufile_get_suinfo()\n  nilfs2: fix typos in comments\n  nilfs2: remove \u0027#if 0\u0027 code blocks\n  nilfs2: strengthen consistency checks in nilfs_direct_propagate()\n"
    },
    {
      "commit": "2f31dddb243cf9f457af60f0124abea6a65d5e2c",
      "tree": "0223bdf6333efd000afe384d45f9501638a95401",
      "parents": [
        "1b8fc3d89ee0522f535d3714abb300455ed53a4e",
        "78ea2058abf3ee053c0bd9c1b9a77304cb4ae58b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:56:04 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:56:04 2026 -1000"
      },
      "message": "Merge tag \u0027affs-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux\n\nPull affs updates from David Sterba:\n \"AFFS has attracted the AI security scanners but there\u0027s probably\n  little real impact.\n\n  A few fixes, more will come in the future, but it\u0027s low priority\"\n\n* tag \u0027affs-for-7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:\n  affs: validate blocks before freeing them\n  affs: split hash-lock subclass and reject self-referencing dir entry\n  affs: don\u0027t instantiate dentry if affs_insert_hash failed\n"
    },
    {
      "commit": "1b8fc3d89ee0522f535d3714abb300455ed53a4e",
      "tree": "1c5e26f9d42424c5a72c6eb1bedaaf4d1780f3c5",
      "parents": [
        "9e73b189c88fcba63af4775d637d395de0af4fdb",
        "58e844c3ba387ceb0f527a6ba82aa50c81c4d7b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:53:24 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:53:24 2026 -1000"
      },
      "message": "Merge tag \u0027for-7.4-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux\n\nPull btrfs updates from David Sterba:\n \"User visible changes:\n\n   - remove tweakable sysfs way to enable features, used only for\n     extent-irefs which has been default since 3.12; the sysfs interface\n     makes it complicated due to locking and context, unlike ioctl\n\n   - change which backup superblock does mount option\n     \u0027rescue\u003dusebackuproot\u0027 choose, skip the last one due to rotation,\n     for more fine grained control add options selecting a specific\n     backup superblock by index (usebackuproot_N)\n\n  Notable fixes:\n\n   - syslog message fixup of error state description, duplicate \u0027E\u0027\n     renamed to \u0027H\u0027 (emergency shutdown), added \u0027I \u0027when delayed iputs\n     are blocked\n\n   - use kvmalloc for b-tree buffer allocations, as we\u0027re using more\n     contig ranges because of large folios, the allocations started to\n     warn on fragmented memory\n\n   - handle unknown commands for the /dev/btrfs-control ioctls\n\n   - tune timing of transaction commit when the space is getting low\n\n   - in raid56, skip verifications if data checksums are not available\n\n  Performance improvements:\n\n   - reflink speedup, reorder locking and flushing to optimize for more\n     common cases where the reflinked ranges are accessed, avoid\n     unnecessary contention\n\n   - minor speedup in zstd decompression (+8MB/s)\n\n   - reduced contention of inode extent map lock, improves e.g. when\n     shrinker processes inodes without extent maps, measured time\n     reduction 10-20%\n\n  Core changes:\n\n   - move allocation errors out of some contexts (new\n     inode/dentry/rename) to avoid transaction aborts\n\n   - allocate system new chunks earlier, e.g. when consumed by\n     fallocate, and tune deleting unused block groups if the system\n     space is low\n\n   - tree checker: reject extents for special files\n\n   - many qgroup fixes regarding enabling/disabling, other state changes\n     and qgroup relation updates\n\n   - error handling fixes\n\n   - refactoring, cleanups:\n      - page to folio cleanups\n      - transaction state macros/enums simplification\n      - parameter simplifications\"\n\n* tag \u0027for-7.4-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (92 commits)\n  btrfs: fix use-after-free on quota enable allocation failure\n  btrfs: prevent use-after-free in btrfs_transaction::switch_commits\n  btrfs: return -ENOTTY for unknown ioctls on the control device\n  btrfs: defrag: fix check to see if next extent can be defragged too\n  btrfs: defrag: fix key comparison with max defrag key in btrfs_defrag_leaves()\n  btrfs: use READ_ONCE() to read the chunk size from the data space_info\n  btrfs: qgroup: make btrfs_record_squota_delta() return void\n  btrfs: fix lost error return value in btrfs_alloc_logged_file_extent()\n  btrfs: qgroup: fix off-by-one max level check in qgroup_trace_new_subtree_blocks()\n  btrfs: abort transaction on qgroup failures in create_pending_snapshot()\n  btrfs: qgroup: merge error labels in btrfs_quota_enable()\n  btrfs: qgroup: fix leak of qgroups in rb tree after failure to enable quotas\n  btrfs: qgroup: abort transaction on failure to add qgroup relation\n  btrfs: qgroup: fix swapped blocks existence check when tracing after COW\n  btrfs: introduce more accurate usebackuproot options\n  btrfs: always use the second newest slot for rescue\u003dusebackuproot\n  btrfs: raid56: do not verify the content if there is no data checksum\n  btrfs: qgroup: do not leak -ENOENT from btrfs_remove_qgroup()\n  btrfs: qgroup: use qgroup_mark_inconsistent() in quick_update_accounting()\n  btrfs: qgroup: do not treat \"ret \u003e 0\" as error when deleting a qgroup\n  ...\n"
    },
    {
      "commit": "9e73b189c88fcba63af4775d637d395de0af4fdb",
      "tree": "87f10ef6121bf6b587fe1d8128a97ae9415d0100",
      "parents": [
        "fe178c26cae01b677a1fec59f9c276c7bf20517a",
        "f9e450420da2624c93ce9585deebfabb87932774"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:51:20 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:51:20 2026 -1000"
      },
      "message": "Merge tag \u0027fsverity-for-linus\u0027 of git://git.kernel.org/pub/scm/fs/fsverity/linux\n\nPull fsverity updates from Eric Biggers:\n \"Patches from Andrey Albershteyn to prepare for XFS fsverity support:\n\n   - Report verification errors through fserror, instead of only through\n     an unstructured log message and generic I/O error return\n\n   - Move the reporting of STATX_ATTR_VERITY into the VFS, so that each\n     fsverity-capable filesystem doesn\u0027t need to do it. This also fixes\n     a bug where btrfs didn\u0027t return STATX_ATTR_VERITY in\n     attributes_mask\n\n   - Make the VFS prevent enabling DAX on fsverity files, so that it\n     will be handled in a single place for ext4 and XFS\n\n   - Move ext4 and f2fs\u0027s code to read verity metadata from the\n     pagecache into shared code, so that XFS will be able to use it too\n\n   - Export fsverity_ensure_verity_info() for XFS scrub to use\n\n   - Pass all-zeroes hash to -\u003ewrite_merkle_tree_block() so that XFS\n     will be able to implement an optimization for sparse files\"\n\n* tag \u0027fsverity-for-linus\u0027 of git://git.kernel.org/pub/scm/fs/fsverity/linux:\n  fsverity: hoist statx reporting of fs-verity flag\n  fsverity: don\u0027t allow setting DAX file attribute on fsverity files\n  fsverity: hoist pagecache_read from f2fs/ext4 to fsverity\n  fsverity: pass digest size and hash of the all-zeroes block to -\u003ewrite\n  fsverity: expose ensure_fsverity_info()\n  fsverity: report validation errors through fserror to fsnotify\n  MAINTAINERS: List the fsverity branches\n"
    },
    {
      "commit": "fe178c26cae01b677a1fec59f9c276c7bf20517a",
      "tree": "b7f406ceb9d9f66299d281b588a3f43f8729f155",
      "parents": [
        "95615dd9ff28148e40a3889e813de00274929448",
        "a63883d2c3d47ce6d41918c2453a4513b921eaaa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:49:57 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:49:57 2026 -1000"
      },
      "message": "Merge tag \u0027fscrypt-for-linus\u0027 of git://git.kernel.org/pub/scm/fs/fscrypt/linux\n\nPull fscrypt updates from Eric Biggers:\n \"A few minor cleanups for fs/crypto/\"\n\n* tag \u0027fscrypt-for-linus\u0027 of git://git.kernel.org/pub/scm/fs/fscrypt/linux:\n  MAINTAINERS: List the fscrypt branches\n  fscrypt: Move several items from fscrypt_private.h to .c files\n  fscrypt: Use aes_ecb_encrypt() for v1 key derivation\n"
    },
    {
      "commit": "95615dd9ff28148e40a3889e813de00274929448",
      "tree": "4ab1df21e0178284329a396cfe910fb9debe0636",
      "parents": [
        "9e947d96915af63e28896caae85a81b74855621b",
        "20ec6916d8712e84d58e8c688a25cd368ddeb82b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:38:53 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:38:53 2026 -1000"
      },
      "message": "Merge tag \u0027libcrypto-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux\n\nPull crypto library updates from Eric Biggers:\n\n - Migrate the x86 and riscv optimized implementations of various AES\n   modes (ECB, CBC, CBC-CTS, CTR, XCTR, XTS) into lib/crypto/.\n\n   This makes the library APIs be properly accelerated on these\n   architectures, while still accelerating crypto_skcipher as well.\n\n   It removes a lot of redundant glue code, since the crypto API\n   boilerplate no longer needs to be duplicated for these architectures.\n\n   It also fixes the longstanding issue where optimizations for these\n   AES modes were disabled by default on these architectures.\n\n - Optimize AES-XTS on SPARC64 using the SPARC crypto opcodes\n\n - Move the SipHash code into lib/crypto/\n\n - Update the ChaCha and Poly1305 functions to take size_t lengths,\n   resolving issues where lengths over INT_MAX were mishandled\n\n - Make frame pointer unwinding work properly in some of the x86\n   assembly functions, by following the standard %rbp convention\n\n - Add helper functions for zeroizing structs\n\n - Make a few documentation improvements\n\n* tag \u0027libcrypto-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux: (49 commits)\n  lib/crypto: md5: remove unused header\n  lib/crypto: mips/chacha: Handle lengths of 2 GiB or more\n  lib/crypto: arm/chacha: Handle lengths of 2 GiB or more in scalar code\n  lib/crypto: chacha: Use size_t length\n  lib/crypto: poly1305: Use size_t length\n  lib/crypto: x86/sha512: Follow the normal %rbp convention\n  lib/crypto: x86/sha256: Follow the normal %rbp convention\n  lib/crypto: x86/sha1: Follow the normal %rbp convention\n  lib/crypto: chacha20poly1305: zeroize state in __chacha20poly1305_decrypt\n  lib/crypto: sparc/aes-xts: Add optimization using the AES opcodes\n  lib: Move SipHash into lib/crypto/\n  lib/crypto: x86/aes-ctr: Remove some unreachable code\n  crypto: x86/aesni-intel - Add transitional selections\n  crypto: aes - Boost priority of encryption modes further\n  lib/crypto: x86/aes: Set RNDKEY in aes_cbc_encrypt_aesni()\n  lib/crypto: riscv/aes-xts: Migrate optimized code into library\n  lib/crypto: riscv/aes-ctr: Migrate optimized code into library\n  lib/crypto: riscv/aes-cbc: Migrate optimized code into library\n  lib/crypto: riscv/aes-ecb: Migrate optimized code into library\n  lib/crypto: riscv/aes: Pass key struct to assembly code\n  ...\n"
    },
    {
      "commit": "b74843b38da8f1186fd7d447646c835b47096a15",
      "tree": "fd7714d2a966cba7d004aeb30942874c5bea1635",
      "parents": [
        "c03c1a14507dfaf8b856c2608f9ac216021fc222"
      ],
      "author": {
        "name": "Matt Turner",
        "email": "mattst88@gmail.com",
        "time": "Mon Aug 03 15:42:26 2026 -0400"
      },
      "committer": {
        "name": "Matt Turner",
        "email": "mattst88@gmail.com",
        "time": "Tue Oct 20 21:38:52 2026 -0400"
      },
      "message": "alpha: determine tininess after rounding in the FP emulation\n\nIEEE 754 lets an architecture determine tininess of a floating-point\nresult either before or after rounding, but requires the same choice for\nevery operation.  Alpha determines it after rounding, and stdlib\u0027s\ntst-tininess confirms the hardware does so for the results it produces\nitself.\n\nThe soft-fp emulation has no notion of the distinction and always\ndetermines tininess before rounding, so a result that the hardware would\nnot consider tiny is reported as underflowing whenever the instruction\nhappens to trap for software completion.  The two paths then disagree on\nthe same machine.  A multiply of the largest subnormal double by\n1 + 2^-52 rounds up to the smallest normal and raises no underflow when\nthe operands are normal, but raises it when an operand is subnormal and\nthe instruction traps:\n\n  glibc math testsuite, test-float32x-float64-mul:\n    Failure: mul_double (0x3.ffffffffffffcp-1024, 0x1.0000000000001p+0):\n    Exception \"Underflow\" set\n\nAdd _FP_TININESS_AFTER_ROUNDING, as glibc\u0027s copy of soft-fp has, and set\nit for alpha.  It determines tininess by rounding a copy of the result as\nif the exponent range were unbounded, which is what the definition asks\nfor.  A plain check of whether the rounded result came out normal is not\nequivalent: it differs for values that are still tiny once rounded with\nan unbounded exponent range but reach the smallest normal on the coarser\nsubnormal grid.  That plain check is what the hardware itself does (it\ndecides tininess from the delivered result), and it is why a divide such\nas -0x4p-128 / 0x1.000002p+0 in FE_DOWNWARD delivers -0x1p-126 and raises\nnothing although the result is tiny after rounding.  Such cases do not\ntrap, so the emulation never sees them; where it does get control, it\nfollows the definition rather than reproducing that deviation, which is\nwhat glibc\u0027s soft-fp does as well.\n\nThe macro defaults to zero, so powerpc, sh and sparc keep determining\ntininess before rounding as they do now.\n\nCc: stable@vger.kernel.org # 5.15+\nReviewed-by: Magnus Lindholm \u003clinmag7@gmail.com\u003e\nTested-by: Magnus Lindholm \u003clinmag7@gmail.com\u003e\nLink: https://lore.kernel.org/r/20260803-alpha-fp-exceptions-v1-3-c99d75608e60@gmail.com\nSigned-off-by: Matt Turner \u003cmattst88@gmail.com\u003e\n"
    },
    {
      "commit": "9e947d96915af63e28896caae85a81b74855621b",
      "tree": "514dc090453484e7680cb530e25943c7b43009fd",
      "parents": [
        "e5d379e9c3148aaef37909ce6d4c3ca18fad0312",
        "f2e05ce9763feb1dd7da15afd2cc61df227ee85a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:02:13 2026 -1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 20 15:02:13 2026 -1000"
      },
      "message": "Merge tag \u0027chrome-platform-firmware-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux\n\nPull chrome platform firmware loader updates from Tzung-Bi Shih:\n \"New:\n   - Rename drivers/firmware/google/ -\u003e drivers/firmware/coreboot/ and\n     corresponding Kconfig names\n   - Separate firmware_attributes_class from drivers/platform/x86/ to\n     drivers/firmware/ so that it is available for non-x86 platforms\n   - Add CFR (coreboot form representation) driver to expose the\n     attributes via sysfs\n\n  Improvements:\n   - Use named initializers for acpi_device_id\"\n\n* tag \u0027chrome-platform-firmware-v7.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux:\n  firmware: coreboot: Add CFR firmware attributes driver\n  firmware: Move firmware attributes class helper\n  firmware: coreboot: Use named initializers for acpi_device_id\n  firmware: Rename google firmware directory to coreboot\n"
    }
  ],
  "next": "e5d379e9c3148aaef37909ce6d4c3ca18fad0312"
}
