)]}'
{
  "log": [
    {
      "commit": "997f2a6f1c0d6500f01e0199ce38e77aa52eb928",
      "tree": "7a9b90daa177e46e6002fe36b2caab4999485e49",
      "parents": [
        "29a933f9b30d819318e92e335ae49ad7d336b39a",
        "6528313623fa43b54046d3c9ff85f46d629ad0c9"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Thu Nov 12 13:21:04 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 12 13:21:04 2026 +0200"
      },
      "message": "Merge pull request #1847 from 0z5a/fix/test-gid-index-zero\n\ntests: Honor explicit GID index zero"
    },
    {
      "commit": "29a933f9b30d819318e92e335ae49ad7d336b39a",
      "tree": "1b799585f6858d169a2ce4f7522ba2574a03b484",
      "parents": [
        "d04695bbd52ae49f7fbe0cdbfc8abd0328c908d3",
        "b1cd35580e226cbbd11d2f0ce6318111ae1cfbc1"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Thu Nov 12 13:20:17 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 12 13:20:17 2026 +0200"
      },
      "message": "Merge pull request #1846 from 0z5a/fix/cuda-dmabuf-test-fds\n\ntests: Close CUDA DMA-BUF descriptors after registration"
    },
    {
      "commit": "6528313623fa43b54046d3c9ff85f46d629ad0c9",
      "tree": "d93b5d48bb8b8f1a34208893c6d1c3a3699f2c48",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778"
      ],
      "author": {
        "name": "Dezhen Lu",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Wed Nov 04 20:46:01 2026 +0100"
      },
      "committer": {
        "name": "0z5a",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Thu Nov 12 10:57:13 2026 +0100"
      },
      "message": "tests: Honor explicit GID index zero\n\nAn explicit gid_index of zero is valid but the test case constructor\ncurrently replaces it with the configured value. Check for None so that\nonly an omitted index falls back to the configuration.\n\nFixes: edfef22595e4 (\"tests: Add gid param to argument parser\")\nSigned-off-by: Dezhen Lu \u003cdezhen.lu@student.uni-tuebingen.de\u003e\n"
    },
    {
      "commit": "b1cd35580e226cbbd11d2f0ce6318111ae1cfbc1",
      "tree": "bfcbc9f3c1f2df78c75636c6ba223413b31df75a",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778"
      ],
      "author": {
        "name": "Dezhen Lu",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Wed Nov 04 20:46:01 2026 +0100"
      },
      "committer": {
        "name": "Dezhen Lu",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Wed Nov 11 13:15:44 2026 +0100"
      },
      "message": "tests: Close CUDA dma-buf FDs after MR registration\n\nClose the caller-owned CUDA DMA-BUF file descriptors after MR\nregistration in the test resources, including when registration fails.\nCreate the DMAHandle before exporting the dma-buf, so an unsupported\nDMAHandle skips the test without leaving a descriptor open.\n\nFixes: 5a2c958a31e7 (\"tests: Add RDMA traffic over CUDA DMABUF\")\nFixes: 5e4b222e6dd6 (\"tests: Add tests for MREX and DMAHandle\")\nFixes: 3ef8fd711e4a (\"tests: Add tests to cover new DV dmabuf API\")\nSigned-off-by: Dezhen Lu \u003cdezhen.lu@student.uni-tuebingen.de\u003e\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "d04695bbd52ae49f7fbe0cdbfc8abd0328c908d3",
      "tree": "9892f9edba48824e607665841fdfc54237cf58f8",
      "parents": [
        "04da5a0496764ce7f4c11d8f5b28d2d613f8902b",
        "fc07a90f173538484d0ed68c47f96e1ab297ceb7"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Wed Nov 11 10:32:02 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 11 10:32:02 2026 +0200"
      },
      "message": "Merge pull request #1816 from ez-lbz/fix/rxe-inline-list-overflow\n\nrxe: Prevent overflow in wr_set_inline_data_list() bound check"
    },
    {
      "commit": "04da5a0496764ce7f4c11d8f5b28d2d613f8902b",
      "tree": "163ef77d02b9d92673fdfea7fb4277fef7e69890",
      "parents": [
        "67aa0a10dae2b6234073c02dab7d4041f2b07702",
        "da53bee9a6b4cfffeeecf8feb5575a58df9c4588"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Mon Nov 09 20:43:53 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 20:43:53 2026 -0400"
      },
      "message": "Merge pull request #1795 from TaranovK/kotaranov/ext_rc_qp\n\nproviders/mana: Extend MANA RC QP support for UAPI"
    },
    {
      "commit": "67aa0a10dae2b6234073c02dab7d4041f2b07702",
      "tree": "5116a29f169b0e87da93eaaed63109247d94108f",
      "parents": [
        "0fa90c60fbc274edb3495f30c1afd02b3f5fd38e"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:36:45 2026 +0200"
      },
      "committer": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:36:45 2026 +0200"
      },
      "message": "Update library version to be 67.0\n\nSigned-off-by: Leon Romanovsky \u003cleon@kernel.org\u003e\n"
    },
    {
      "commit": "0fa90c60fbc274edb3495f30c1afd02b3f5fd38e",
      "tree": "a6ada7dacf7b53cf7d97b0b980213e6103e40de7",
      "parents": [
        "3e79f024caa21fba590568189ef20212d24777bb",
        "2cea17ad2c6fc24d0247d7c87a90b0494f6ff5f4"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:12:19 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 14:12:19 2026 +0200"
      },
      "message": "Merge pull request #1848 from zzwzds/docs-remove-stale-and-typo\n\ndocs: remove stale API references and fix symbol typos in man pages"
    },
    {
      "commit": "3e79f024caa21fba590568189ef20212d24777bb",
      "tree": "8a6973bf94c690a7dec699949acf1dce00361948",
      "parents": [
        "a9bb59f5dc65597e0f508602d396ad69d53a03c5",
        "b9c03596bafe18d4c311bd41d7f77f8e9a0396bb"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:09:50 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 14:09:50 2026 +0200"
      },
      "message": "Merge pull request #1851 from 0z5a/fix/hns-dwqe-mmio-memcpy\n\nlibhns, util: Fix the aarch64 mmio_memcpy_x64() length check"
    },
    {
      "commit": "a9bb59f5dc65597e0f508602d396ad69d53a03c5",
      "tree": "10731c60833f1cb7528568bbae7e8f5ff4cf63a6",
      "parents": [
        "d0ba64d0fa1d934d5cedea754be59cc8693f1b8f",
        "690d20906cfca123d5ae2daafe8c7f85fe5a56fa"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:07:39 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 14:07:39 2026 +0200"
      },
      "message": "Merge pull request #1824 from flaviut/fix-cross-python\n\nBuild: Skip Python development without pyverbs"
    },
    {
      "commit": "d0ba64d0fa1d934d5cedea754be59cc8693f1b8f",
      "tree": "9b12c147efe28bb5e04d15a56c7853f1252ac9bd",
      "parents": [
        "a75dd72e5424e7096d9498189256ca93d844c887",
        "b2a3053b1cea07a08145dab85a7d796d612efd40"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:05:33 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 14:05:33 2026 +0200"
      },
      "message": "Merge pull request #1842 from amzn/pps_fix\n\nefa: Always inline efa_wq_cqe_finalize"
    },
    {
      "commit": "a75dd72e5424e7096d9498189256ca93d844c887",
      "tree": "9b602502d3a272d92d8cacd0f4a8860de1b6479b",
      "parents": [
        "fbb81abba8b5649b278e4bf6029e62f49abe408e",
        "8c910a11b1a7deb04afaf62ea364bb1c3fc04930"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:03:27 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 14:03:27 2026 +0200"
      },
      "message": "Merge pull request #1832 from jakemoroni/master\n\nproviders/irdma: Fix miscellaneous bugs"
    },
    {
      "commit": "fbb81abba8b5649b278e4bf6029e62f49abe408e",
      "tree": "c1f90bb7496356a2c0c2ecee7be63a95aa7e2aa8",
      "parents": [
        "283be3aedfb24cb02c0756fd0c5da5612ba4601a",
        "8ff1dcd41c0fbcd045290ae84539ea0006c41d71"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 14:02:52 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 14:02:52 2026 +0200"
      },
      "message": "Merge pull request #1836 from nmorey/dev/master/dep-cleanup\n\nsuse: drop librdmacm dependency to rdma-core"
    },
    {
      "commit": "b9c03596bafe18d4c311bd41d7f77f8e9a0396bb",
      "tree": "834d1c290ccfe55077880742a9274b7218024838",
      "parents": [
        "ffcb5072a2aeffe62dbc782c8431bd062eef78eb"
      ],
      "author": {
        "name": "Dezhen Lu",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Sat Nov 07 21:41:33 2026 +0100"
      },
      "committer": {
        "name": "0z5a",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Mon Nov 09 13:00:12 2026 +0100"
      },
      "message": "util: Fix the constant length check in the aarch64 mmio_memcpy_x64()\n\n__builtin_constant_p((bytecount) \u003d\u003d 64) is true when the comparison has\na known result, whatever that result is, so the macro writes only 64\nbytes for any length the compiler can reason about. A literal 128 is\ntruncated, and so is a variable after \"if (n \u003c\u003d 64) return;\".\n\nTake the 64-byte path only when the length is known to be 64. libhns\nwas the one in-tree caller that relied on the old behaviour, and the\nprevious patch removes that.\n\nFixes: 159933c37450 (\"libhns: Add support for direct wqe\")\nReviewed-by: Junxian Huang \u003chuangjunxian6@hisilicon.com\u003e\nTested-by: Junxian Huang \u003chuangjunxian6@hisilicon.com\u003e\nAssisted-by: Claude:claude-opus-5-5 \u003cnoreply@anthropic.com\u003e\nSigned-off-by: Dezhen Lu \u003cdezhen.lu@student.uni-tuebingen.de\u003e\n"
    },
    {
      "commit": "ffcb5072a2aeffe62dbc782c8431bd062eef78eb",
      "tree": "4c05c17170fd0f9d4b5f49936a974691ff5da48a",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778"
      ],
      "author": {
        "name": "Dezhen Lu",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Sat Nov 07 21:41:33 2026 +0100"
      },
      "committer": {
        "name": "0z5a",
        "email": "dezhen.lu@student.uni-tuebingen.de",
        "time": "Mon Nov 09 13:00:12 2026 +0100"
      },
      "message": "libhns: Write all 64 bytes of a direct WQE explicitly\n\nhns_roce_write512() passes sizeof(struct hns_roce_rc_sq_wqe), which is\n32, to mmio_memcpy_x64(). It writes a 64-byte direct WQE only because\nthe aarch64 macro takes its 64-byte path for any constant length. On\nthe generic implementation a length of 32 makes the size_t counter\nwrap, and the copy does not stop.\n\nPass the size of a direct WQE, 1 \u003c\u003c HNS_ROCE_SQWQE_SHIFT. On aarch64\nthe generated code does not change.\n\nFixes: 159933c37450 (\"libhns: Add support for direct wqe\")\nReviewed-by: Junxian Huang \u003chuangjunxian6@hisilicon.com\u003e\nTested-by: Junxian Huang \u003chuangjunxian6@hisilicon.com\u003e\nAssisted-by: Claude:claude-opus-5-5 \u003cnoreply@anthropic.com\u003e\nSigned-off-by: Dezhen Lu \u003cdezhen.lu@student.uni-tuebingen.de\u003e\n"
    },
    {
      "commit": "283be3aedfb24cb02c0756fd0c5da5612ba4601a",
      "tree": "97f5420f2d9993d7fb581e07d5de79447c9d6297",
      "parents": [
        "e78b813e845abc1a6753fe2e51af0a0eb75cf7f2",
        "22fe0ae2a0789a388bddbf53c2b7801672b34d84"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 13:51:02 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 13:51:02 2026 +0200"
      },
      "message": "Merge pull request #1850 from amzn/python-3.15\n\ntests: Replace removed SourceFileLoader.load_module()"
    },
    {
      "commit": "e78b813e845abc1a6753fe2e51af0a0eb75cf7f2",
      "tree": "461c1c6e4de94be5c87fc88997e7f8c3e860169c",
      "parents": [
        "3ff8d6dcb25e1721941a3ca09d49a9a24ba7a94a",
        "6f2946718e0d0e431584e7b74839c5f72490c51f"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Mon Nov 09 13:46:35 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 13:46:35 2026 +0200"
      },
      "message": "Merge pull request #1733 from abhijitG-xlnx/rcq\n\n ionic: Add Reorder Completion Queue (RCQ) support"
    },
    {
      "commit": "22fe0ae2a0789a388bddbf53c2b7801672b34d84",
      "tree": "55b94f88042c36d6627cdfba39f5caab28a44310",
      "parents": [
        "3ff8d6dcb25e1721941a3ca09d49a9a24ba7a94a"
      ],
      "author": {
        "name": "Michael Margolin",
        "email": "mrgolin@amazon.com",
        "time": "Mon Nov 09 09:57:51 2026 +0200"
      },
      "committer": {
        "name": "Michael Margolin",
        "email": "mrgolin@amazon.com",
        "time": "Mon Nov 09 08:02:05 2026 +0000"
      },
      "message": "tests: Replace removed SourceFileLoader.load_module()\n\nPython 3.15 removed importlib\u0027s load_module(), so run_tests.py fails:\n\n  AttributeError: \u0027SourceFileLoader\u0027 object has no attribute \u0027load_module\u0027.\n  Did you mean \u0027.exec_module\u0027 instead of \u0027.load_module\u0027?\n\nLoad the tests package with spec_from_file_location() and exec_module()\ninstead. Register it in sys.modules before executing, as load_module()\ndid, since the package imports its submodules relative to \u0027tests\u0027.\n\nReviewed-by: Firas Jahjah \u003cfirasj@amazon.com\u003e\nReviewed-by: Yonatan Nachum \u003cynachum@amazon.com\u003e\nSigned-off-by: Michael Margolin \u003cmrgolin@amazon.com\u003e\n"
    },
    {
      "commit": "3ff8d6dcb25e1721941a3ca09d49a9a24ba7a94a",
      "tree": "60d37190b463a7e74d4f55c218b575de7725025c",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778",
        "f7be168929abbf015ef87d39902fa00c64a80934"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Sun Nov 08 16:41:51 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Nov 08 16:41:51 2026 +0200"
      },
      "message": "Merge pull request #1849 from selvintxavier/verb_attr_fix\n\nverbs: Don\u0027t add VA UMEM attrs from fill_attr_in_buf_umem()"
    },
    {
      "commit": "f7be168929abbf015ef87d39902fa00c64a80934",
      "tree": "60d37190b463a7e74d4f55c218b575de7725025c",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778"
      ],
      "author": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Thu Nov 05 12:35:40 2026 -0800"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Nov 06 06:08:36 2026 -0800"
      },
      "message": "verbs: Don\u0027t add VA UMEM attrs from fill_attr_in_buf_umem()\n\nExtending fill_attr_in_buf_umem() for VA-backed buffers made it always\nadd a mandatory UMEM attribute, even for non-dmabuf buffers. Generic\ncallers such as create CQ then fail with EOPNOTSUPP on kernels older\nthan v7.2, with no fallback to the write command.\n\nRestore the dmabuf-only behavior and move VA handling into a new\nfill_attr_in_buf_umem_va() helper, used by the bnxt_re direct verbs\ncallers.\n\nFixes: 8c17f5926802 (\"verbs: Extend fill_attr_in_buf_umem() for VA-backed descriptors\")\nSigned-off-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "2cea17ad2c6fc24d0247d7c87a90b0494f6ff5f4",
      "tree": "fc3ff68ee752528712540f064ef9812b0afae387",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778"
      ],
      "author": {
        "name": "Zhiwei Zhang",
        "email": "zhangzhiwei@bitintelligence.io",
        "time": "Thu Nov 05 11:03:01 2026 +0800"
      },
      "committer": {
        "name": "Zhiwei Zhang",
        "email": "zhangzhiwei@bitintelligence.io",
        "time": "Thu Nov 05 13:48:11 2026 +0800"
      },
      "message": "docs: remove stale API references and fix symbol typos in man pages\n\nWhile reviewing the docs I found that some man pages still documented\nfunctions that no longer exist in the code. An automated sweep of all\ndocumented symbols against the source tree turned up more cases of the\nsame problem, plus a number of misspelled identifiers; this fixes the\nones in the core libraries, infiniband-diags, and rxe.\n\nlibibnetdisc:\n- ibnd_discover_fabric(3): drop ibnd_debug(), ibnd_set_max_smps_on_wire()\n  and ibnd_show_progress(), which no longer exist as functions. The\n  max_smps and show_progress knobs now live in struct ibnd_config.\n  Update the SYNOPSIS and examples to the current ca_name/ca_port/config\n  API and fix the ibnd_destory_fabric typo.\n- ibnd_iter_nodes(3): the callback type is ibnd_iter_node_func_t and\n  ibnd_iter_nodes_type() takes a plain int node_type.\n- man/CMakeLists.txt + debian: drop the man page aliases and install\n  entries for the removed functions.\n\nlibibumad:\n- umad_free_ca_device_list(3): the list is allocated by\n  umad_get_ca_device_list(), not umad_get_ca_namelist().\n\nlibibverbs:\n- ibv_create_flow_action(3): ibv_modify_flow_action_esp and\n  ibv_destroy_flow_action are the real function names; fix the ESP\n  flag/keymat/replay identifiers (the FULL_OFFLOAD misspelling,\n  IBV_ACTION_ESP_KEYMAT_*, reply_*, esp_attr, keymat struct/enum names)\n  and several field typos.\n- ibv_wr_post(3): ibv_wr_set_sge (not ibv_set_wr_sge) and the inline\n  data list is an array of struct ibv_data_buf.\n- ibv_alloc_dm(3): the parameter is dm_offset.\n- ibv_query_device_ex(3): enum ibv_odp_general_caps, transport spelled\n  correctly, and the struct member is general_caps.\n- ibv_advise_mr(3): IBV_ADVISE_MR_ADVICE_PREFETCH.\n- ibv_read_counters(3): IBV_FLOW_SPEC_ETH instead of the removed\n  IBV_EXP_FLOW_SPEC_ETH.\n\nlibrdmacm:\n- rdma_getaddrinfo(3): drop the librdmacm-1.0 era EAI_QPTYPE code and\n  describe the actual return convention; fix ai_qp_type.\n- rdma_create_ep(3): the field is res-\u003eai_flags.\n- rdma_post_sendv(3): the parameter is sgl.\n- cmtime(1): milliseconds.\n- rsocket(7): drop the max_events config parameter, which nothing reads.\n\ninfiniband-diags:\n- saquery(8): there is no -o/--outstanding_smps option and saquery does\n  not depend on libosmcomp.\n- check_lft_balance(8): document the real options, remove the unsupported\n  -R option, and distinguish the Debian command name from the .pl name\n  installed on other distributions.\n\nproviders/rxe:\n- rxe(7): drop the stale rdma_rxe_net sysfs entry.\n\nSigned-off-by: Zhiwei Zhang \u003czhangzhiwei@bitintelligence.io\u003e\nCo-Authored-By: Claude Code \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "6f2946718e0d0e431584e7b74839c5f72490c51f",
      "tree": "e36ab2a34447ac8c9a2e77a3eed5c9340ddafc7a",
      "parents": [
        "b01fd723d53066afd0c49c75d2dad1f98716a03b"
      ],
      "author": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Mon Aug 10 18:51:47 2026 +0530"
      },
      "committer": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Nov 03 16:53:03 2026 +0530"
      },
      "message": "ionic: Add man page for ionic_dv_create_qp_ex API\n\nAdd documentation for the ionic_dv_create_qp_ex() direct verbs API\ncovering RCCL flags and RCQ selection. Update the ionicdv overview\npage to describe the new RCCL and RCQ functionality. Add the\nIONIC_1.1 symbol version to debian packaging.\n\nSigned-off-by: Abhijit Gangurde \u003cabhijit.gangurde@amd.com\u003e\n"
    },
    {
      "commit": "b01fd723d53066afd0c49c75d2dad1f98716a03b",
      "tree": "c34deafdeaf1e4170c3ded7d855389ee75ef3346",
      "parents": [
        "c273b790014c08637757ec9215d6f07d93c3eb7a"
      ],
      "author": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue May 05 14:33:17 2026 +0530"
      },
      "committer": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Nov 03 16:53:03 2026 +0530"
      },
      "message": "ionic: Fix maybe-uninitialized warning for wqe_size in sq/rq init\n\nRestructure the expdb WQE size logic in sq_init and rq_init to compute\nthe non-expdb size first, then conditionally upgrade to the expdb size\nif supported. This eliminates the -Werror\u003dmaybe-uninitialized warning\non wqe_size and simplifies the control flow.\n\nSigned-off-by: Abhijit Gangurde \u003cabhijit.gangurde@amd.com\u003e\n"
    },
    {
      "commit": "c273b790014c08637757ec9215d6f07d93c3eb7a",
      "tree": "47ea4d8742c5283c526077212cbf16578b17c69d",
      "parents": [
        "5c2e8d1a4fe4fa591ef535fc2521f3a16a5acc7b"
      ],
      "author": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Mon Apr 20 11:35:00 2026 +0530"
      },
      "committer": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Nov 03 16:53:03 2026 +0530"
      },
      "message": "ionic: Process RCQ completions from poll_cq\n\nAdd support for processing Receive Completion Queue (RCQ) completions\nthat arrive out-of-order and must be delivered in-order.\n\nAdd RCQE hardware structures and inline helpers to ionic_fw_types.h\nand ionic_fw.h for parsing RCQE CQE fields (sequence, op, valid/ready\nbits) and for RCQ ring header access.\n\nExtend ionic_rq_meta with per-WQE fields (rcqe_st_len, rcqe_op,\nrcqe_imm_data_rkey, rcqe_done) to store out-of-order completion data\nfrom RECV_RCQE CQEs until in-order delivery.\n\nHandle IONIC_V1_CQE_TYPE_RECV_RCQE in the CQE type switch and add\nthe RCQ poll loop after the main CQE processing to deliver in-order\ncompletions.\n\nSigned-off-by: Allen Hubbe \u003callen.hubbe@amd.com\u003e\nSigned-off-by: Abhijit Gangurde \u003cabhijit.gangurde@amd.com\u003e\n"
    },
    {
      "commit": "5c2e8d1a4fe4fa591ef535fc2521f3a16a5acc7b",
      "tree": "713ec6cc746cacf338d6d37cdebf9a9477e35d99",
      "parents": [
        "0169c9ae81b5282fa19aa8ec157043e6c59dbb38"
      ],
      "author": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Mon Apr 20 10:21:40 2026 +0530"
      },
      "committer": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Nov 03 16:53:03 2026 +0530"
      },
      "message": "ionic: Add ionic_dv_create_qp_ex API\n\nAdd DV API ionic_dv_create_qp_ex to create QP with custrom flags.\nRename IONIC_V1_CQE_TYPE_RECV_INDIR to IONIC_V1_CQE_TYPE_RECV_RCQE.\n\nRefactor ionic_create_qp_ex into ionic_create_qp_ex_common that accepts\nan optional ionic_dv_qp_init_attr_ex. The RQ buffer is extended by\nIONIC_RCQ_SIZE (4 KiB) when the RCQ pd_tag is used to support\nreorder completion queue.\n\nSigned-off-by: Allen Hubbe \u003callen.hubbe@amd.com\u003e\nSigned-off-by: Abhijit Gangurde \u003cabhijit.gangurde@amd.com\u003e\n"
    },
    {
      "commit": "0169c9ae81b5282fa19aa8ec157043e6c59dbb38",
      "tree": "72fb94153877098384f3468906186877675254c3",
      "parents": [
        "eb7f6ffedbbb172d2b107f727043f3977aae759b"
      ],
      "author": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Mon Apr 20 10:16:21 2026 +0530"
      },
      "committer": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Nov 03 16:53:03 2026 +0530"
      },
      "message": "ionic: Fetch rcq_sign_bit on context create\n\nStore RCQ sign bit from the kernel response in ionic_ctx.\nThis field is used to enable the RCQ (Reorder Completion Queue)\nfeature for out-of-order receive completion handling.\n\nSigned-off-by: Abhijit Gangurde \u003cabhijit.gangurde@amd.com\u003e\n"
    },
    {
      "commit": "eb7f6ffedbbb172d2b107f727043f3977aae759b",
      "tree": "e8f7f23fa89471307253c4a159f3c00d0c717ab4",
      "parents": [
        "0642bf198f1f2cdba8988bccd0abab0338a86918"
      ],
      "author": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Jun 16 14:12:04 2026 +0530"
      },
      "committer": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Nov 03 16:53:03 2026 +0530"
      },
      "message": "ionic: Add robust udata support and zero-initialize udata structs\n\nRead the IB_UVERBS_CORE_SUPPORT_ROBUST_UDATA flag from core_support\ninto ctx-\u003erobust_udata during context allocation. This allows the\nprovider to detect whether the kernel supports forward/backward\ncompatible udata handling, which is a prerequisite for safely using\nextended request structs in future verb extensions.\n\nAlso zero-initialize uionic_qp, uionic_qp_resp, and uionic_ah_resp\nstack variables to prevent stack garbage from leaking into the kernel\nvia ioctl buffers.\n\nSigned-off-by: Abhijit Gangurde \u003cabhijit.gangurde@amd.com\u003e\n"
    },
    {
      "commit": "0642bf198f1f2cdba8988bccd0abab0338a86918",
      "tree": "b0a8758c4e073ad1c0461248b760e0ac5f6ca607",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778"
      ],
      "author": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Oct 27 18:03:12 2026 +0530"
      },
      "committer": {
        "name": "Abhijit Gangurde",
        "email": "abhijit.gangurde@amd.com",
        "time": "Tue Nov 03 16:53:03 2026 +0530"
      },
      "message": "Update kernel headers\n\nTo commit: 9951bf4c44c6 (\"RDMA/ionic: Add RCQ userspace support\").\n\nSigned-off-by: Abhijit Gangurde \u003cabhijit.gangurde@amd.com\u003e\n"
    },
    {
      "commit": "b2a3053b1cea07a08145dab85a7d796d612efd40",
      "tree": "0e263a60f1dc3b64929d311df2a799416443890e",
      "parents": [
        "a70151dfec390eb5f7fc5b266f51d601da2a7778"
      ],
      "author": {
        "name": "Yosef Kaner",
        "email": "ykaner@amazon.com",
        "time": "Sun Nov 01 10:15:04 2026 +0000"
      },
      "committer": {
        "name": "Yonatan Nachum",
        "email": "ynachum@amazon.com",
        "time": "Mon Nov 02 11:55:40 2026 +0000"
      },
      "message": "efa: Always inline efa_wq_cqe_finalize\n\nefa_wq_cqe_finalize() runs once per completion on the CQ poll path, but\nunlike the other poll-path helpers the compiler does not inline it.\nMark it ALWAYS_INLINE. This recovers the ~11% small-message rate lost\nwhen the helper was added with the 64-bit request ID completion support.\n\nSigned-off-by: Yosef Kaner \u003cykaner@amazon.com\u003e\nSigned-off-by: Yonatan Nachum \u003cynachum@amazon.com\u003e\n"
    },
    {
      "commit": "a70151dfec390eb5f7fc5b266f51d601da2a7778",
      "tree": "4d6892947fd9adc65330f4edfc744cc5285d6b92",
      "parents": [
        "c56edf7cade274dffa7bcb50b182ec8aa81b7481",
        "06c8dfbfc0e17e21d7ecc48ba5e58ca9d7de5b10"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Thu Oct 29 15:47:51 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 29 15:47:51 2026 -0300"
      },
      "message": "Merge pull request #1837 from aaptel/srp-daemon-private-network-fix\n\nsrp_daemon: run port services without PrivateNetwork"
    },
    {
      "commit": "06c8dfbfc0e17e21d7ecc48ba5e58ca9d7de5b10",
      "tree": "4d6892947fd9adc65330f4edfc744cc5285d6b92",
      "parents": [
        "c56edf7cade274dffa7bcb50b182ec8aa81b7481"
      ],
      "author": {
        "name": "Aurelien Aptel",
        "email": "aaptel@nvidia.com",
        "time": "Thu Oct 29 16:52:40 2026 +0100"
      },
      "committer": {
        "name": "Aurelien Aptel",
        "email": "aaptel@nvidia.com",
        "time": "Thu Oct 29 16:52:40 2026 +0100"
      },
      "message": "srp_daemon: run port services without PrivateNetwork\n\nSince kernel v7.3, commit e9153a267119 (\"RDMA/srp: Make the SRP sysfs\nclass net namespace aware\") tags the infiniband_srp sysfs class with\nthe net namespace of the underlying RDMA device. The\nsrp_daemon_port@.service unit runs srp_daemon with PrivateNetwork\u003dyes,\nso the daemon now sees an empty /sys/class/infiniband_srp/ inside its\nprivate network namespace and fails to log in to any target, endlessly\nlogging:\n\n  srp_daemon: unable to open /sys/class/infiniband_srp/srp-mlx5_0-1/add_target, maybe ib_srp is not loaded\n\neven though ib_srp is loaded and writing add_target from a root shell\nin the init netns works. This makes the SRP initiator unusable through\nthe standard systemd service on any v7.3+ kernel.\n\nsrp_daemon fundamentally needs to run in the net namespace of the RDMA\ndevice it manages, both for the umad device and now for the sysfs\nclass, so network namespace isolation is not applicable to this\nservice. Set PrivateNetwork\u003dno.\n\nVerified on Ubuntu 26.10 (kernel 7.3.0-9-generic) against an SCST\ntarget: with PrivateNetwork\u003dyes no login ever happens; with this change\nboth ports log in within seconds.\n\nSigned-off-by: Aurelien Aptel \u003caaptel@nvidia.com\u003e\n"
    },
    {
      "commit": "8ff1dcd41c0fbcd045290ae84539ea0006c41d71",
      "tree": "14584c7dd995ac8ccfb8b913fdebdb9fb4c74968",
      "parents": [
        "c56edf7cade274dffa7bcb50b182ec8aa81b7481"
      ],
      "author": {
        "name": "Nicolas Morey",
        "email": "nmorey@suse.com",
        "time": "Wed Oct 28 08:42:27 2026 +0100"
      },
      "committer": {
        "name": "Nicolas Morey",
        "email": "nmorey@suse.com",
        "time": "Wed Oct 28 08:45:23 2026 +0100"
      },
      "message": "suse: drop librdmacm dependency to rdma-core\n\nDependency from libibverbs to rdma-core was removed by\nbc3e02c793a9 (\"suse: drop dependency from libibverbs to rdma-core\")\nbut the dependency from librdmacm to rdma-core was not.\n\nRemove that dependency as well so applications can be built with RDMA\nsupport without pulling the whole udev/systemd runtime.\n\nSigned-off-by: Nicolas Morey \u003cnmorey@suse.com\u003e\n"
    },
    {
      "commit": "c56edf7cade274dffa7bcb50b182ec8aa81b7481",
      "tree": "3d0e1d3011aa11d4a079f59cddaf7ff19ebfa67d",
      "parents": [
        "07ce3f50f6e2924e33f12a1fdfb0a610d2d07f82",
        "619f02073a116df8fc96d3866aa9eb765303e867"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Tue Oct 27 15:21:55 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 27 15:21:55 2026 -0300"
      },
      "message": "Merge pull request #1834 from selvintxavier/ibverbs_version_fix\n\nverbs: Fix extend ibv_buf APIs for user allocated memory"
    },
    {
      "commit": "619f02073a116df8fc96d3866aa9eb765303e867",
      "tree": "3d0e1d3011aa11d4a079f59cddaf7ff19ebfa67d",
      "parents": [
        "07ce3f50f6e2924e33f12a1fdfb0a610d2d07f82"
      ],
      "author": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Tue Oct 27 03:51:58 2026 -0700"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Tue Oct 27 04:17:31 2026 -0700"
      },
      "message": "verbs: Fix extend ibv_buf APIs for user allocated memory\n\nAdd the missing IBVERBS_1.19 version node to debian/libibverbs1.symbols\nand set the minimum version of ibv_alloc_user_buf/ibv_free_user_buf to 66,\nsince they first appear in the 66 release.\n\nFixes: f23eae454e64 (\"verbs: Extend ibv_buf APIs for user allocated memory\")\nSigned-off-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "07ce3f50f6e2924e33f12a1fdfb0a610d2d07f82",
      "tree": "6ea25d2077ed28b345cdd89b3a89e4959ec7cb25",
      "parents": [
        "8009440e92f91e339ad3554b9ccf8800d05e5743",
        "449134c6e35feee24a896395d24acd9f1afc76d1"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Sun Oct 25 19:40:09 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 25 19:40:09 2026 -0300"
      },
      "message": "Merge pull request #1813 from ez-lbz/fix/dr-ste-copy-param-underflow\n\nmlx5: Fix unsigned underflow in dr_ste_copy_param()"
    },
    {
      "commit": "8009440e92f91e339ad3554b9ccf8800d05e5743",
      "tree": "ca2f850a60637f464e34ba6cd4ced82ea94e4d8a",
      "parents": [
        "144dc70bdd455c4403e6fbb07422c02d03cdac7a",
        "3f38020011b73a0dea8995c68a21823453283fab"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Fri Oct 23 13:40:53 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 23 13:40:53 2026 -0300"
      },
      "message": "Merge pull request #1808 from abhiMishra98/open-cdev-keep-errno\n\nutil: Keep the original errno when open_cdev() falls back"
    },
    {
      "commit": "8c910a11b1a7deb04afaf62ea364bb1c3fc04930",
      "tree": "576d6d12a1b0214e79f3ba4af46c5b181af424b3",
      "parents": [
        "52caa23a6debac2d07e5d2d6d84a21de249adf8e"
      ],
      "author": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 13:58:23 2026 +0000"
      },
      "committer": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 16:31:14 2026 +0000"
      },
      "message": "providers/irdma: Discard unsignaled non-error completions\n\nIn some non-error cases, an unsignaled WQE can still cause a CQE\nto be generated. These CQEs must be discarded to avoid corrupting\nthe SQ ring bookkeeping logic.\n\nFixes: 3bebdf5cb1fd (\"rdma-core/irdma: Add user/kernel shared libraries\")\nSigned-off-by: Jacob Moroni \u003cjmoroni@google.com\u003e\n"
    },
    {
      "commit": "52caa23a6debac2d07e5d2d6d84a21de249adf8e",
      "tree": "c22d8cfb7b0dfc14a02079cddfa453e4feb89c85",
      "parents": [
        "166398a2edc660e6126c5333555930795059f095"
      ],
      "author": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:11:38 2026 +0000"
      },
      "committer": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 15:31:12 2026 +0000"
      },
      "message": "providers/irdma: Use mmio_write32 for doorbell writes\n\nReplace the custom non-volatile db_wr32() helper with mmio_write32().\n\nFixes: 56865d0f0a30 (\"rdma-core/irdma: Add library setup and utility definitions\")\nSigned-off-by: Jacob Moroni \u003cjmoroni@google.com\u003e\n"
    },
    {
      "commit": "166398a2edc660e6126c5333555930795059f095",
      "tree": "e51468e508603bc9f911d60b0c2e004ef36bcdb4",
      "parents": [
        "31088d655c8d71f271e997659e8e63c9f9ed718b"
      ],
      "author": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:11:05 2026 +0000"
      },
      "committer": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 15:22:04 2026 +0000"
      },
      "message": "providers/irdma: Set internal QP type on GEN3+ QP creation\n\nPopulate info.type during irdma_ucreate_qp() for GEN3+ HW so that\nnon-fatal UD error completions can be properly discarded. This\nfield was previously unset which was causing it to fall back to\nIRDMA_QP_TYPE_IWARP and skip the CQE discard logic.\n\nFixes: d986d0b2cc01 (\"providers/irdma: Flush changes for GEN 3\")\nSigned-off-by: Jacob Moroni \u003cjmoroni@google.com\u003e\n"
    },
    {
      "commit": "31088d655c8d71f271e997659e8e63c9f9ed718b",
      "tree": "cf8bf79a77a0c9f6e6269450eb52cec7aecdf312",
      "parents": [
        "e6cdb181fd6a6bd24330d755a241a57c43abfddd"
      ],
      "author": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 13:48:11 2026 +0000"
      },
      "committer": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:58:03 2026 +0000"
      },
      "message": "providers/irdma: Reject zero-based addressing for type 1 MW bind\n\nZero-based addressing is only valid for Type 2 MWs. Return EINVAL\nin irdma_upost_send() when a user attempts to bind a type 1 MW\nwith IBV_ACCESS_ZERO_BASED set.\n\nFixes: 14a0fc824f16 (\"rdma-core/irdma: Implement device supported verb APIs\")\nSigned-off-by: Jacob Moroni \u003cjmoroni@google.com\u003e\n"
    },
    {
      "commit": "e6cdb181fd6a6bd24330d755a241a57c43abfddd",
      "tree": "47f1c616a964ad6694ecbc08d989a39f5472e45e",
      "parents": [
        "cef84a6ec6be8317a713691c16e4eaa5e1b3704b"
      ],
      "author": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 13:48:11 2026 +0000"
      },
      "committer": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:56:02 2026 +0000"
      },
      "message": "providers/irdma: Fix MW bind flush completion status\n\nWhen a MW bind WQE is flushed with FLUSH_PROT_ERR, override the\nflush error code to FLUSH_MW_BIND_ERR so that the completion status\nis reported as IBV_WC_MW_BIND_ERR instead of IBV_WC_LOC_PROT_ERR.\n\nFixes: 3bebdf5cb1fd (\"rdma-core/irdma: Add user/kernel shared libraries\")\nSigned-off-by: Jacob Moroni \u003cjmoroni@google.com\u003e\n"
    },
    {
      "commit": "cef84a6ec6be8317a713691c16e4eaa5e1b3704b",
      "tree": "88b7d7a304f2fd929753a11e09f7be9adc422beb",
      "parents": [
        "632efeac7d1fd01d7ed834f85a9757e8f060e8d9"
      ],
      "author": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:10:40 2026 +0000"
      },
      "committer": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:49:25 2026 +0000"
      },
      "message": "providers/irdma: Add missing load-load barrier in CQ clean loop\n\nAdd a DMA load-load barrier in irdma_uk_clean_cq() after checking\nthe CQE valid bit but before loading the CQE body.\n\nFixes: 3bebdf5cb1fd (\"rdma-core/irdma: Add user/kernel shared libraries\")\nSigned-off-by: Jacob Moroni \u003cjmoroni@google.com\u003e\n"
    },
    {
      "commit": "632efeac7d1fd01d7ed834f85a9757e8f060e8d9",
      "tree": "e438755d512ed38e7d2f2a1cb4d6d2df10da6702",
      "parents": [
        "144dc70bdd455c4403e6fbb07422c02d03cdac7a"
      ],
      "author": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:01:28 2026 +0000"
      },
      "committer": {
        "name": "Jacob Moroni",
        "email": "jmoroni@google.com",
        "time": "Fri Oct 23 14:47:51 2026 +0000"
      },
      "message": "providers/irdma: Expand IRDMAQPSQ_AHID mask to 25 bits\n\nGEN3+ hardware supports up to 25 bit address handle IDs, so change\nto match the kernel driver. HW that does not support that many AHs\ndoesn\u0027t end up using IDs in that range.\n\nFixes: 56865d0f0a30 (\"rdma-core/irdma: Add library setup and utility definitions\")\nSigned-off-by: Jacob Moroni \u003cjmoroni@google.com\u003e\n"
    },
    {
      "commit": "144dc70bdd455c4403e6fbb07422c02d03cdac7a",
      "tree": "696a0049cdea58b04e8f6a3c4f4efba6ce6366df",
      "parents": [
        "9b75c64d32bd476c6fa924176f3bafc1f373ff20",
        "1900ecf4aed46b63b58cf7d484baa8f4e952c69c"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Thu Oct 22 15:35:14 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 22 15:35:14 2026 -0300"
      },
      "message": "Merge pull request #1830 from yselkowitz/patch-1\n\nspec: use macro for sysusers.d path"
    },
    {
      "commit": "9b75c64d32bd476c6fa924176f3bafc1f373ff20",
      "tree": "1d2a6cf5895bb58738088113212b257dd7ccc462",
      "parents": [
        "a758c7ba0d5e49fef3a6b62b153b3ffd29a7f7f3",
        "a2427a9579149da8693d0a9b3b3f44e6fb7c0b34"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Thu Oct 22 15:34:17 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 22 15:34:17 2026 -0300"
      },
      "message": "Merge pull request #1811 from vladum/pr/topo/vm-multi-dev\n\nrdma_topo: Cover VFs, generic ports, and multi-device inline topologies"
    },
    {
      "commit": "a758c7ba0d5e49fef3a6b62b153b3ffd29a7f7f3",
      "tree": "c38b5c43ae00ef70e9e83f53b70211b48111b9a5",
      "parents": [
        "b63b7bfe5d5b0adb97b973c71723adf2323afa2c",
        "0458882c1f57dd1f08d10e2c6edc7accad6e17f6"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Wed Oct 21 13:06:09 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 21 13:06:09 2026 +0300"
      },
      "message": "Merge pull request #1821 from ez-lbz/fix/inl-seg-len-wrap\n\nmlx5: Fix inline SGE length wrap in set_data_inl_seg()"
    },
    {
      "commit": "1900ecf4aed46b63b58cf7d484baa8f4e952c69c",
      "tree": "86f877a67bd81709ec532361389afe4ae8e3a65b",
      "parents": [
        "b63b7bfe5d5b0adb97b973c71723adf2323afa2c"
      ],
      "author": {
        "name": "Yaakov Selkowitz",
        "email": "yselkowi@redhat.com",
        "time": "Sun Oct 18 22:01:06 2026 -0400"
      },
      "committer": {
        "name": "Yaakov Selkowitz",
        "email": "yselkowi@redhat.com",
        "time": "Sun Oct 18 22:03:18 2026 -0400"
      },
      "message": "spec: use macro for sysusers.d path\n\nSigned-off-by: Yaakov Selkowitz \u003cyselkowi@redhat.com\u003e\n"
    },
    {
      "commit": "b63b7bfe5d5b0adb97b973c71723adf2323afa2c",
      "tree": "897dd707fa3e9935c33dd3c15caf14db8cc31a9e",
      "parents": [
        "bd3282a1cf1025c7869a8664c2d54266a4dded44",
        "76bd0b4e2708ecd3e9918becffe5b581edaa3a11"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Fri Oct 16 19:54:44 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 16 19:54:44 2026 -0300"
      },
      "message": "Merge pull request #1823 from selvintxavier/dv-upstream\n\nbnxt_re/lib: Support direct verbs"
    },
    {
      "commit": "449134c6e35feee24a896395d24acd9f1afc76d1",
      "tree": "11a02931a8b058cbe07f76ed38095bdc477120e4",
      "parents": [
        "bd3282a1cf1025c7869a8664c2d54266a4dded44"
      ],
      "author": {
        "name": "Li Bingzhuo",
        "email": "lbz2770828522@gmail.com",
        "time": "Sun Oct 04 21:03:41 2026 +0800"
      },
      "committer": {
        "name": "Li Bingzhuo",
        "email": "lbz2770828522@gmail.com",
        "time": "Thu Oct 15 16:14:33 2026 +0800"
      },
      "message": "mlx5: Fix underflow and stale data in dr_ste_copy_param()\n\ndr_ste_copy_param() parses the caller\u0027s match mask one section at a time.\nA section that the mask does not reach was parsed from a single shared\nscratch buffer:\n\n  char tail_param[DEVX_ST_SZ_BYTES(dr_match_param)] \u003d {};\n  ...\n  if (match_criteria \u0026 DR_MATCHER_CRITERIA_MISC) {\n          if (mask_sz \u003c param_location +\n              DEVX_ST_SZ_BYTES(dr_match_set_misc)) {\n                  memcpy(tail_param, data + param_location,\n                         mask_sz - param_location);\n                  buff \u003d tail_param;\n          } else {\n                  buff \u003d data + param_location;\n          }\n          dr_ste_copy_mask_misc(buff, \u0026set_param-\u003emisc, clear);\n  }\n\nTwo defects follow from that.\n\nFirst, the copy length is computed without establishing that the mask\nreaches the section.  When mask_sz is smaller than param_location the\nsubtraction is done in size_t and underflows, so memcpy() is asked for\nabout SIZE_MAX bytes: it reads far past the caller\u0027s buffer and writes\npast the 448 byte scratch buffer.  The rule path checks the mask for an\nupper bound and alignment only (dr_rule.c), never for a lower one.\n\nSecond, the buffer is shared by all seven sections and was initialised\nonly once at function entry.  A section whose mask_sz falls inside it\ncopies the bytes that are present and leaves the remainder holding what\nthe previous section left behind.  Those bytes are then read as if the\ncaller had supplied them, so fields the caller never specified take\nvalues from a different section of its own mask.  The initialiser shows\nthe intent is for the absent part to read as zero.\n\nA section is now parsed only when the mask reaches into it, and the\nscratch buffer is cleared before each partial copy, so the absent part\nreads as zero:\n\n  if ((match_criteria \u0026 DR_MATCHER_CRITERIA_MISC) \u0026\u0026\n      (mask_sz \u003e param_location)) {\n          if (mask_sz \u003e\u003d param_location +\n              DEVX_ST_SZ_BYTES(dr_match_set_misc)) {\n                  buff \u003d data + param_location;\n          } else {\n                  memset(tail_param, 0, sizeof(tail_param));\n                  memcpy(tail_param, data + param_location,\n                         mask_sz - param_location);\n                  buff \u003d tail_param;\n          }\n          dr_ste_copy_mask_misc(buff, \u0026set_param-\u003emisc, clear);\n  }\n\nA mask shorter than the match header then behaves exactly as the same\nmask zero padded to DEVX_ST_SZ_BYTES(dr_match_param).  set_param is\nzeroed by the caller that can reach the partial path, and the other\ncaller, dr_matcher_copy_mask(), always passes a full size buffer, so it\ntakes the direct path and is unaffected.\n\nFixes: 7ec30b8cba29 (\"mlx5: Add Steering entry (STE) utilities\")\nSigned-off-by: Li Bingzhuo \u003clbz2770828522@gmail.com\u003e\n"
    },
    {
      "commit": "690d20906cfca123d5ae2daafe8c7f85fe5a56fa",
      "tree": "5050c2c936999ee4038c13129a63888a0bf61a70",
      "parents": [
        "bd3282a1cf1025c7869a8664c2d54266a4dded44"
      ],
      "author": {
        "name": "Flaviu Tamas",
        "email": "me@flaviutamas.com",
        "time": "Tue Oct 13 12:17:25 2026 -0400"
      },
      "committer": {
        "name": "Flaviu Tamas",
        "email": "me@flaviutamas.com",
        "time": "Tue Oct 13 12:18:27 2026 -0400"
      },
      "message": "Build: Skip Python development without pyverbs\n\nRequest only the interpreter when pyverbs is disabled; development\nfiles are needed only for pyverbs. This came up when trying to\ncross-compile x86 to armv7l in Nix: https://github.com/NixOS/nixpkgs/pull/572620\n\nSigned-off-by: Flaviu Tamas \u003cme@flaviutamas.com\u003e\n"
    },
    {
      "commit": "76bd0b4e2708ecd3e9918becffe5b581edaa3a11",
      "tree": "897dd707fa3e9935c33dd3c15caf14db8cc31a9e",
      "parents": [
        "56a228452aa3eb25ea33504cf89afcd166dc39a4"
      ],
      "author": {
        "name": "Sriharsha Basavapatna",
        "email": "sriharsha.basavapatna@broadcom.com",
        "time": "Mon Mar 23 15:49:05 2026 +0530"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:45:16 2026 -0700"
      },
      "message": "bnxt_re/lib: Direct Verbs: Add man pages\n\nDocument direct verbs (DV) feature and related DV APIs.\nThe man page describes these DV APIs:\n- Doorbell regions (db)\n- Completion Queues (cq)\n- Queue pairs (qp)\n\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nReviewed-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "56a228452aa3eb25ea33504cf89afcd166dc39a4",
      "tree": "8cd2f618be0329d53a8a0c7814901086ed1c05c4",
      "parents": [
        "deccffce0a24c034b37951b9e992ee20bc6e3cce"
      ],
      "author": {
        "name": "Sriharsha Basavapatna",
        "email": "sriharsha.basavapatna@broadcom.com",
        "time": "Mon Mar 23 14:01:21 2026 +0530"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:44:48 2026 -0700"
      },
      "message": "bnxt_re/lib: Direct Verbs: Support QP verbs\n\nThe following Direct Verb (DV) API has been implemented in\nthis patch, by enhancing the driver specific udata in the\nexisting verb.\n\n- bnxt_re_dv_create_qp():\n  Create a QP using specified params (struct bnxt_re_dv_qp_init_attr).\n  The application must have already associated SQ/RQ memory with an\n  ibv_buf using ibv_alloc_user_buf(). The SQ/RQ umem_handle and umem_offset\n  provided by the application are translated into an address for mapping\n  and passed to the driver.\n\nNote:\nSome applications might want to allocate memory for all QPs in one big\nchunk and associate that entire memory with a single ibv_buf using\nibv_alloc_user_buf(). At the time of creating each individual resource,\nthe application should pass a specific offset/length within that memory.\n\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nReviewed-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "deccffce0a24c034b37951b9e992ee20bc6e3cce",
      "tree": "63fe53d88de89518d410e50cb1a14733949b8f5c",
      "parents": [
        "dd1ec91e595808c3f1ec3142a9e8373d9a0970df"
      ],
      "author": {
        "name": "Sriharsha Basavapatna",
        "email": "sriharsha.basavapatna@broadcom.com",
        "time": "Tue Jun 17 15:40:49 2025 +0530"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:44:42 2026 -0700"
      },
      "message": "bnxt_re/lib: Direct Verbs: Support CQ verbs\n\nThe following Direct Verb (DV) API has been implemented in\nthis patch, by enhancing the driver specific udata in the\nexisting verb.\n\n- bnxt_re_dv_create_cq():\n  Create a CQ of requested size (cqe). The application must have\n  already associated this memory with an ibv_buf using\n  ibv_alloc_user_buf(). The CQ\u0027s umem_handle and umem_offset\n  provided by the application are translated into an address for\n  mapping and passed to the driver.\n\nNote:\nSome applications might want to allocate memory for all CQs in one big\nchunk and associate that entire memory with a single ibv_buf using\nibv_alloc_user_buf(). At the time of creating each individual resource,\nthe application should pass a specific offset/length within that\nmemory.\n\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nCo-developed-by: Kalesh AP \u003ckalesh-anakkur.purayil@broadcom.com\u003e\nSigned-off-by: Kalesh AP \u003ckalesh-anakkur.purayil@broadcom.com\u003e\nReviewed-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "dd1ec91e595808c3f1ec3142a9e8373d9a0970df",
      "tree": "6208f243ebe727bd7bf0a1dbcd9cbe0c7248f44a",
      "parents": [
        "308c5e56a89b59740df5312c673619969def6ad3"
      ],
      "author": {
        "name": "Sriharsha Basavapatna",
        "email": "sriharsha.basavapatna@broadcom.com",
        "time": "Mon Aug 17 14:54:41 2026 +0530"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:44:26 2026 -0700"
      },
      "message": "bnxt_re/lib: Update bnxt_re_cq to include struct verbs_cq\n\nThe next patch in this series switches to ibv_cmd_create_cq_ex()/_ex2(),\nwhich take a struct verbs_cq as an argument instead of ibv_cq. So update\nbnxt_re_cq to replace ibv_cq with verbs_cq.\n\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nSigned-off-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "308c5e56a89b59740df5312c673619969def6ad3",
      "tree": "e0acafff45ce2c9d43a80bf6c59da68b8b574ce7",
      "parents": [
        "5b56cdcdee724c839031d9a50689ea5523c928d8"
      ],
      "author": {
        "name": "Kalesh AP",
        "email": "kalesh-anakkur.purayil@broadcom.com",
        "time": "Tue Jun 17 03:02:43 2025 -0700"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:43:57 2026 -0700"
      },
      "message": "bnxt_re/lib: Direct Verbs: Support DBR verbs\n\nThe following Direct Verb (DV) APIs have been implemented in\nthis patch.\n\nDoorbell Region Direct Verbs:\n\n- bnxt_re_dv_alloc_db_region():\n  This will allow the appliation to create extra doorbell regions\n  and use the associated doorbell page index in dv_create_qp() and\n  use the associated DB address while ringing the doorbell.\n\n- bnxt_re_dv_free_db_region():\n  Free the allocated doorbell region.\n\n- bnxt_re_dv_get_default_db_region():\n  Return the default doorbell page index and doorbell page address\n  associated with the ucontext.\n\nCo-developed-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nSigned-off-by: Kalesh AP \u003ckalesh-anakkur.purayil@broadcom.com\u003e\nReviewed-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "5b56cdcdee724c839031d9a50689ea5523c928d8",
      "tree": "18a807b194a88d34e86ba5adad1375af249e3935",
      "parents": [
        "f23eae454e648217a7df534d707ed7f4ef5098e9"
      ],
      "author": {
        "name": "Sriharsha Basavapatna",
        "email": "sriharsha.basavapatna@broadcom.com",
        "time": "Wed Mar 25 11:01:07 2026 +0530"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:39:14 2026 -0700"
      },
      "message": "bnxt_re/lib: Direct Verbs: Export HSI file\n\nExtract HSI definitions (WQE/CQE structures and enums) from\nbnxt_re-abi.h into a standalone bnxt_re-hsi.h and add it to\npublish_headers() so it is installed under infiniband/.\n\nThis will make HSI definitions available to DV applications,\nthat implement their own datapath.\n\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nReviewed-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "f23eae454e648217a7df534d707ed7f4ef5098e9",
      "tree": "dfc58cfab3d3660df072b230c3a3709a9c4d03f1",
      "parents": [
        "8c17f5926802a0edfee749b5450be6adae8e1d2b"
      ],
      "author": {
        "name": "Sriharsha Basavapatna",
        "email": "sriharsha.basavapatna@broadcom.com",
        "time": "Wed Aug 19 15:32:05 2026 +0530"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:38:40 2026 -0700"
      },
      "message": "verbs: Extend ibv_buf APIs for user allocated memory\n\nibv_alloc_buf() only allocates library memory and initializes an ibv_buf\nfor it; there\u0027s no way to associate an ibv_buf with memory the application\nalready owns. Add ibv_alloc_user_buf()/ibv_free_user_buf() so providers\ncan do that (VA or dmabuf) for direct consumption by driver-specific\ncontrol-buffer (e.g queue memory) descriptors.\n\nApplications will call this to associate their own CQ/QP buffers as an\nibv_buf. The resulting ibv_buf is then passed to the CQ/QP creation\nDirect Verb APIs added later in this series.\n\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\nSigned-off-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "8c17f5926802a0edfee749b5450be6adae8e1d2b",
      "tree": "12e8666b023b7623e4a3899a6fbce43a70169be2",
      "parents": [
        "7740d7ae36f9875a3bf40a7258395d07bf448693"
      ],
      "author": {
        "name": "Sriharsha Basavapatna",
        "email": "sriharsha.basavapatna@broadcom.com",
        "time": "Wed Jun 24 19:57:21 2026 +0530"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:21:09 2026 -0700"
      },
      "message": "verbs: Extend fill_attr_in_buf_umem() for VA-backed descriptors\n\nfill_attr_in_buf_umem() only handles dmabuf-backed buffers.\nExtend it for user virtual address buffers.\n\nSigned-off-by: Sriharsha Basavapatna \u003csriharsha.basavapatna@broadcom.com\u003e\n"
    },
    {
      "commit": "7740d7ae36f9875a3bf40a7258395d07bf448693",
      "tree": "cc3d5b1fd8c9dc4e889e1749d851dc12a5fdd2e5",
      "parents": [
        "bd3282a1cf1025c7869a8664c2d54266a4dded44"
      ],
      "author": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:19:40 2026 -0700"
      },
      "committer": {
        "name": "Selvin Xavier",
        "email": "selvin.xavier@broadcom.com",
        "time": "Fri Oct 09 04:19:40 2026 -0700"
      },
      "message": "Update kernel headers\n\nTo commit: 23d7e03a52ec (\"RDMA/bnxt_re: Avoid exposing umdbr to\nuserspace\").\n\nSigned-off-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n\nSigned-off-by: Selvin Xavier \u003cselvin.xavier@broadcom.com\u003e\n"
    },
    {
      "commit": "da53bee9a6b4cfffeeecf8feb5575a58df9c4588",
      "tree": "53779ffd46a40928763823a8774b9f6a631b4e28",
      "parents": [
        "a49b74237f540d72a48e3f3b16098c2b1373e62a"
      ],
      "author": {
        "name": "Konstantin Taranov",
        "email": "kotaranov@microsoft.com",
        "time": "Mon Aug 03 14:41:09 2026 +0000"
      },
      "committer": {
        "name": "Konstantin Taranov",
        "email": "kotaranov@microsoft.com",
        "time": "Fri Oct 09 11:00:31 2026 +0000"
      },
      "message": "providers/mana: Create RC QPs with flags and MMQ\n\nUse the extended RC QP creation ABI when supported. Request fixed WQEs\nand MMQ creation, pass the MMQ buffer to the kernel, and retain the\nreturned MMQ ID.\n\nSigned-off-by: Konstantin Taranov \u003ckotaranov@microsoft.com\u003e\n"
    },
    {
      "commit": "a49b74237f540d72a48e3f3b16098c2b1373e62a",
      "tree": "7ec0f301f57c74f07f6ae938c1aebbabdb41d06a",
      "parents": [
        "be99d101ff9eecf4c72c0cc7b2537b9e93cf3f32"
      ],
      "author": {
        "name": "Konstantin Taranov",
        "email": "kotaranov@microsoft.com",
        "time": "Mon Aug 03 14:41:08 2026 +0000"
      },
      "committer": {
        "name": "Konstantin Taranov",
        "email": "kotaranov@microsoft.com",
        "time": "Fri Oct 09 10:59:47 2026 +0000"
      },
      "message": "providers/mana: Set MSN in read response receive WQE\n\nSize the requester receive queue for the configured outstanding reads.\nSet the message sequence number in each receive WQE posted for an RDMA\nread response.\n\nSigned-off-by: Konstantin Taranov \u003ckotaranov@microsoft.com\u003e\n"
    },
    {
      "commit": "be99d101ff9eecf4c72c0cc7b2537b9e93cf3f32",
      "tree": "28ad485238f5d4a3e5f6b74d98ae8ef06c4e09af",
      "parents": [
        "bd3282a1cf1025c7869a8664c2d54266a4dded44"
      ],
      "author": {
        "name": "Konstantin Taranov",
        "email": "kotaranov@microsoft.com",
        "time": "Mon Aug 03 14:41:07 2026 +0000"
      },
      "committer": {
        "name": "Konstantin Taranov",
        "email": "kotaranov@microsoft.com",
        "time": "Fri Oct 09 10:59:02 2026 +0000"
      },
      "message": "providers/mana: Use extra-large power-of-two WQEs\n\nModel extra-large WQEs with their explicit 32-byte OOB layout instead\nof representing them as large WQEs with an additional virtual SGE.\n\nUse power-of-two WQE sizes for the RC requester and MM work queues.\n\nSigned-off-by: Konstantin Taranov \u003ckotaranov@microsoft.com\u003e\n"
    },
    {
      "commit": "0458882c1f57dd1f08d10e2c6edc7accad6e17f6",
      "tree": "7498f535f8ca8016080f7a1fbae354196049df0e",
      "parents": [
        "bd3282a1cf1025c7869a8664c2d54266a4dded44"
      ],
      "author": {
        "name": "Li Bingzhuo",
        "email": "lbz2770828522@gmail.com",
        "time": "Mon Oct 05 02:34:06 2026 +0800"
      },
      "committer": {
        "name": "Li Bingzhuo",
        "email": "lbz2770828522@gmail.com",
        "time": "Wed Oct 07 23:17:10 2026 +0800"
      },
      "message": "mlx5: Fix inline SGE length wrap in set_data_inl_seg()\n\nset_data_inl_seg() accumulates the inline payload size in a 32 bit signed\nint and derives the copy length from a u32 by way of that same signed type:\n\n  int len;\n  int inl \u003d 0;\n  ...\n  len  \u003d wr-\u003esg_list[i].length - offset;\n  inl +\u003d len;\n\n  if (unlikely(inl \u003e qp-\u003emax_inline_data))\n          return ENOMEM;\n\n  ...\n  memcpy(wqe, addr, len);\n\nsg_list[].length is a u32, so a length of 0xFFFFFFFF is stored into the\nsigned \u0027len\u0027 as -1.  The bound check is written as an upper bound on the\nrunning total, so the negative value walks \u0027inl\u0027 back down instead of\ntripping it: a first SGE of length 1 sets inl to 1, and a second SGE of\nlength 0xFFFFFFFF sets inl to 0, which is below qp-\u003emax_inline_data.  A\nsingle SGE with a length above INT_MAX bypasses the check the same way,\nsince inl starts at 0.  The same wrap can be produced by a start offset\nlarger than the next SGE length, which makes \u0027len\u0027 large without any\nunusual input.\n\nThe check therefore never fires and control reaches memcpy() with \u0027len\u0027\nconverted to size_t as 0xFFFFFFFFFFFFFFFF, copying from the application\nbuffer into the send queue ring with an effectively unbounded length.\nThe ring is shared with neighbouring WQEs, so the overrun corrupts them.\n\nNeither conversion can represent a length the check would reject if the\ntypes could hold it, so give both of them the width of the value they\ncarry.  \u0027len\u0027 becomes uint32_t, matching sg_list[].length, and \u0027inl\u0027 is\nwidened to uint64_t so the accumulated total cannot wrap before it is\ncompared:\n\n  uint32_t len;\n  uint64_t inl \u003d 0;\n\nThe comparison and the accumulation keep their existing order and form.\nqp-\u003emax_inline_data is an int and is never negative, so a total above it\nis still rejected, and legitimate SGE lists that sum to exactly\nqp-\u003emax_inline_data are still accepted.\n\nFixes: 8c4791ae2395 (\"libmlx5: First version of libmlx5\")\nSigned-off-by: Li Bingzhuo \u003clbz2770828522@gmail.com\u003e\n"
    },
    {
      "commit": "3f38020011b73a0dea8995c68a21823453283fab",
      "tree": "f44899d895e1dc4d743d8b6d2bf8859d445c4c17",
      "parents": [
        "00357df3a344b3515a9a4d345cf0b8c8efb7f116"
      ],
      "author": {
        "name": "Abhishek Mishra",
        "email": "abhimishra.cetb@gmail.com",
        "time": "Tue Sep 22 16:55:24 2026 +0200"
      },
      "committer": {
        "name": "Abhishek Mishra",
        "email": "abhimishra.cetb@gmail.com",
        "time": "Tue Oct 06 22:37:53 2026 +0200"
      },
      "message": "util: Only fall back in open_cdev() when the node is not found\n\nWhen opening /dev/infiniband/\u003cname\u003e fails, open_cdev() falls back to\nopen_cdev_robust(), which waits up to 5 seconds for udev to create\n/dev/char/\u003cmajor\u003e:\u003cminor\u003e. This is done for every failure, so a device\nnode that exists but may not be opened (EACCES, or EPERM from a device\ncgroup) still waits the full timeout. If the fallback then fails,\ncallers such as ibv_open_device() and rdma_create_event_channel() see\nthe fallback\u0027s errno instead of the original one. Inside containers,\nwhere /dev/char/ is usually absent, this reports a permission problem\nas ENOENT.\n\nThe fallback can only help when the node is missing, or when the node\nfound does not match the expected dev_t. Report the latter as ENOENT\nfrom open_cdev_internal(), only fall back on ENOENT, and keep the\noriginal errno when the fallback also fails. Permission errors are now\nreturned immediately.\n\nFixes: 69c3e4cbbcc7 (\"util: Add open_cdev\")\nSigned-off-by: Abhishek Mishra \u003cabhimishra.cetb@gmail.com\u003e\n"
    },
    {
      "commit": "fc07a90f173538484d0ed68c47f96e1ab297ceb7",
      "tree": "90076164c60065f19634adafd5467dfc742eb487",
      "parents": [
        "bd3282a1cf1025c7869a8664c2d54266a4dded44"
      ],
      "author": {
        "name": "Li Bingzhuo",
        "email": "lbz2770828522@gmail.com",
        "time": "Sun Oct 04 21:15:24 2026 +0800"
      },
      "committer": {
        "name": "Li Bingzhuo",
        "email": "lbz2770828522@gmail.com",
        "time": "Sun Oct 04 21:15:28 2026 +0800"
      },
      "message": "rxe: Prevent overflow in wr_set_inline_data_list() bound check\n\nwr_set_inline_data_list() accumulates the length of the caller\u0027s buffers\nand compares the running total against the send queue\u0027s inline limit:\n\n    while (num_buf--) {\n        length \u003d buf_list-\u003elength;\n\n        if (tot_length + length \u003e qp-\u003esq.max_inline) {\n            qp-\u003eerr \u003d ENOSPC;\n            return;\n        }\n\n        memcpy(data, buf_list-\u003eaddr, length);\n\n        tot_length +\u003d length;\n\nBoth operands are size_t and both are caller controlled, so the addition in\nthe comparison can wrap.  A first buffer that leaves tot_length non-zero\nfollowed by a second buffer of length SIZE_MAX makes the sum zero, which\nsatisfies the comparison, and memcpy() is then asked to copy that length\ninto the inline area of the work queue element.  The single buffer variant\nwr_set_inline_data() compares the length against max_inline directly and\ndoes not have this problem.\n\nCompare the length against the remaining budget, which cannot wrap because\ntot_length never exceeds max_inline.\n\nFixes: 1a894ca10105 (\"Providers/rxe: Implement ibv_create_qp_ex verb\")\nSigned-off-by: Li Bingzhuo \u003clbz2770828522@gmail.com\u003e\n"
    },
    {
      "commit": "bd3282a1cf1025c7869a8664c2d54266a4dded44",
      "tree": "96104de15958bc026bfcc28e92a78993ede382c3",
      "parents": [
        "1b598d16df46d27d35e82eb27a336768db0aa33c",
        "0f1e517b7b232f6da35858fe8c477a383d224624"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Sat Oct 03 15:14:23 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 15:14:23 2026 -0300"
      },
      "message": "Merge pull request #1807 from zzwzds/docs-remove-stale-pkey-accessor\n\ndocs: remove stale pkey index CQ accessor"
    },
    {
      "commit": "1b598d16df46d27d35e82eb27a336768db0aa33c",
      "tree": "4f05663937099ad6dd36c6c4deb6b6846991e8f3",
      "parents": [
        "b02925d423682803487240f498b967eaa7f10121",
        "3b3389e0f7d7fa77baec6b4199efe6f3cd431a4e"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Sat Oct 03 15:13:35 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 15:13:35 2026 -0300"
      },
      "message": "Merge pull request #1810 from qvicksilver/sa-key\n\nlibibmad: add support for nonzero SA SM_Key"
    },
    {
      "commit": "b02925d423682803487240f498b967eaa7f10121",
      "tree": "0f601826624ee739b0a646db8ad60a19f291452b",
      "parents": [
        "27ca1206870f6cd34a9cade9d53a3a364a6afd7c",
        "244079919c71ffcfa904833972ddd7b2c65b371e"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Sat Oct 03 15:11:23 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 15:11:23 2026 -0300"
      },
      "message": "Merge pull request #1809 from eagleidirect/fix-irdma-tsan-race\n\nirdma: Remove unused uqp field from Completion Queue"
    },
    {
      "commit": "27ca1206870f6cd34a9cade9d53a3a364a6afd7c",
      "tree": "a6b5ab3469139e130041a8be1a0ff54150ad52e8",
      "parents": [
        "d361d72e0f66b48a1326b19295062d2b3d1310e2",
        "878c65604edfdba4172b80b5732260d067ebefa2"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Sat Oct 03 15:08:41 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 15:08:41 2026 -0300"
      },
      "message": "Merge pull request #1806 from nmorey/dev/master/systemd\n\nkernel-boot: Remove Wants\u003dnetwork-pre.target from initrd"
    },
    {
      "commit": "d361d72e0f66b48a1326b19295062d2b3d1310e2",
      "tree": "527eda8fe13bf1a5a9a5f161f5437cda22d42bd8",
      "parents": [
        "3d9b1424ae9c28db375217a55755f025a83d7c6e",
        "7a7785ade11ecf8c03ac711b6407457cac5fabe7"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Sat Oct 03 15:08:02 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 15:08:02 2026 -0300"
      },
      "message": "Merge pull request #1803 from fballuch/fix-comp-cntr-uint64\n\npyverbs: Fix uint64_t type mismatch in CompCntr"
    },
    {
      "commit": "3d9b1424ae9c28db375217a55755f025a83d7c6e",
      "tree": "db8cf2baeec993aae05d7fcd169e4115d24c1f14",
      "parents": [
        "bcd725bec72794527086f9490094ec8691f17ce8",
        "f56feb2440b1ff36c5e24716eb81d774102f83e2"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Sat Oct 03 15:07:11 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 03 15:07:11 2026 -0300"
      },
      "message": "Merge pull request #1798 from snehal-sanghvi/snsanghvi/sq_pow2_opt\n\nproviders/mana: skip SQ rollback region when pow2 SQ is supported"
    },
    {
      "commit": "a2427a9579149da8693d0a9b3b3f44e6fb7c0b34",
      "tree": "361e010fee6afa182f7ebad4ede17449952665b3",
      "parents": [
        "f64604d3f0fc3d1d21ba2518708e67969235aa89"
      ],
      "author": {
        "name": "Avihai Horon",
        "email": "avihaih@nvidia.com",
        "time": "Wed Sep 23 13:37:03 2026 +0300"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:27 2026 -0700"
      },
      "message": "rdma_topo: Support ConnectX VFs for all topologies\n\nClassify Mellanox Device ID 101E as cx_vnic and treat it as a NIC\nfunction so it can join the DMA, Inline and NUMA complexes. Print VF\nPCI, RDMA, and net devices separately from PFs.\n\nIn NVCX_Topo, attach functions that have no VPD serial number (typically\nVFs) to the NIC that shares their PCI parent, instead of grouping them\non a separate UNKNOWN board.\n\nWith this patch in place, rdma_topo can now cover baremetal and VM cases\nthat use a VF as the NIC.\n\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\n"
    },
    {
      "commit": "f64604d3f0fc3d1d21ba2518708e67969235aa89",
      "tree": "86b9f4e2307deda734a5f65654c0dbf7f9655f89",
      "parents": [
        "6982e77b0845bf71410cf9efadcf62428a8c35ad"
      ],
      "author": {
        "name": "Avihai Horon",
        "email": "avihaih@nvidia.com",
        "time": "Wed Sep 23 10:09:34 2026 +0300"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:24 2026 -0700"
      },
      "message": "rdma_topo: Rename PF-specific internals to generic functions\n\nNVCX_Topo and complex members use \"pf\" for ConnectX PCI functions.\nRename those to \"fn\" in preparation for the following patch, which will\nadd VF support. No functional change.\n\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\n"
    },
    {
      "commit": "6982e77b0845bf71410cf9efadcf62428a8c35ad",
      "tree": "e3bd1ca2da0a3e35c1d764f652de99e5bf8a1246",
      "parents": [
        "19e046e80f2c0b8378fee1bbaf2aa097e9670c7c"
      ],
      "author": {
        "name": "Avihai Horon",
        "email": "avihaih@nvidia.com",
        "time": "Wed Aug 19 20:53:43 2026 -0700"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:21 2026 -0700"
      },
      "message": "rdma_topo: Support generic ports in DMA and inline topologies\n\nThere are systems (including VMs) that use a generic PCI bridge and root\nport in place of a CX switch and Grace root port, and may also omit the\nnested switch on the GPU path.\n\nTo support DMA and inline topologies in such systems, treat a bridge\nabove the GPU, DMA, or NIC as a switch hop, accept generic_rp as well as\nGrace and match an NVCX complex without requiring an extra switch on the\nGPU leg.\n\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\n"
    },
    {
      "commit": "19e046e80f2c0b8378fee1bbaf2aa097e9670c7c",
      "tree": "989fdaa3c0e4391cdefbc7b1f7a71cc82e65157f",
      "parents": [
        "eeb44d923180e00c7c3115cac4559bc75f4d82f6"
      ],
      "author": {
        "name": "Avihai Horon",
        "email": "avihaih@nvidia.com",
        "time": "Tue Sep 15 10:43:43 2026 +0300"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:18 2026 -0700"
      },
      "message": "rdma_topo: Support multiple GPUs in inline complex\n\nNVCX_Inline_Complex currently assumes a single GPU under the shared\nswitch. Generalize it to handle an arbitrary number of GPUs.\n\nTo maintain backwards compatibility, keep emitting the flat \u0027gpu_bdf\u0027\nkey from to_dict() for single-GPU topologies.\n\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\n"
    },
    {
      "commit": "eeb44d923180e00c7c3115cac4559bc75f4d82f6",
      "tree": "89ad46bc392a9287d8cabafbd81e727d38533d15",
      "parents": [
        "7f902083fb4dac6a2e0c16cc96d7b8debb9118c2"
      ],
      "author": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Thu Jun 11 16:08:46 2026 -0700"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:14 2026 -0700"
      },
      "message": "rdma_topo: Support CX NIC topology in inline complex\n\nNVCX_Inline_Complex currently assumes exactly one CX NIC PF under the\nshared switch. Generalize it to handle an arbitrary number of PFs,\npotentially organized in a topology (boards, NICs).\n\nUse the recently added NVCX_Topo class to parse the CX NIC topology.\nDelegate the relevant text and JSON \u0027topo\u0027 outputs to NVCX_Topo. To\nmaintain backwards compatibility, keep emitting the legacy flat keys\n(rdma_nic_pf_bdf, etc.) from to_dict() for single-PF topologies.\n\nMatch any RP type, instead of just generic_rp, to cover additional\nvariants present in certain multi-NIC configurations.\n\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\n"
    },
    {
      "commit": "7f902083fb4dac6a2e0c16cc96d7b8debb9118c2",
      "tree": "0fc9ff0bfd2fa53710493a3d2fe04fae9177ab62",
      "parents": [
        "3be1842ad1d362434164a3e899536698062f3146"
      ],
      "author": {
        "name": "Avihai Horon",
        "email": "avihaih@nvidia.com",
        "time": "Fri Aug 07 15:08:21 2026 +0300"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:12 2026 -0700"
      },
      "message": "rdma_topo: List all NVMe devices in DMA complex JSON output\n\nSome systems have more than one NVMe in a DMA complex, but the JSON\noutput currently reports only a single unsorted nvme_bdf.\n\nEmit a sorted nvme_bdfs list so every NVMe in a DMA complex is reported.\nKeep nvme_bdf as the first sorted device to preserve backward\ncompatibility.\n\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\n"
    },
    {
      "commit": "3be1842ad1d362434164a3e899536698062f3146",
      "tree": "a0371710bb6dd1d47d2b0ad51b5b9a63132f051f",
      "parents": [
        "54988cf78a77fc21c922b8480b022b5166e0b137"
      ],
      "author": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Mon Aug 24 20:12:21 2026 -0700"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:10 2026 -0700"
      },
      "message": "rdma_topo: Sort ATS check results by BDF\n\nEnsure ATS check messages are emitted in a consistent order regardless\nof dict/set iteration order of cx_topo.pfs to match other types of\nchecks and keep the output deterministic.\n\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\n"
    },
    {
      "commit": "54988cf78a77fc21c922b8480b022b5166e0b137",
      "tree": "ed7e32e28e6f67397a082fc069decd472a3d3c8f",
      "parents": [
        "bcd725bec72794527086f9490094ec8691f17ce8"
      ],
      "author": {
        "name": "Avihai Horon",
        "email": "avihaih@nvidia.com",
        "time": "Tue Sep 08 10:58:16 2026 +0300"
      },
      "committer": {
        "name": "Vlad Dumitrescu",
        "email": "vdumitrescu@nvidia.com",
        "time": "Wed Sep 30 20:51:06 2026 -0700"
      },
      "message": "rdma_topo: Accept a sysfs dump for \u0027setpci-acs\u0027 and \u0027write-grub-acs\u0027\n\nAccept a sysfs dump for \u0027setpci-acs\u0027 and \u0027write-grub-acs\u0027 commands and\npass it through to PCITopo to allow exercising these commands offline\nfor testing and debugging purposes. Require -n/--dry-run argument with\n-F/--sysfs-dump-file so a dump cannot write ACS and the print-only path\nis explicit.\n\nSigned-off-by: Avihai Horon \u003cavihaih@nvidia.com\u003e\nSigned-off-by: Vlad Dumitrescu \u003cvdumitrescu@nvidia.com\u003e\n"
    },
    {
      "commit": "3b3389e0f7d7fa77baec6b4199efe6f3cd431a4e",
      "tree": "e0fe8d72bf1fd825e12ee77014de4a226c7bd7c8",
      "parents": [
        "90d3077c11e037633c559c505a10e13e91d9decc"
      ],
      "author": {
        "name": "Jonathan Süssemilch Poulain",
        "email": "jpoulain@coreweave.com",
        "time": "Thu Sep 24 13:48:54 2026 +0200"
      },
      "committer": {
        "name": "Jonathan Süssemilch Poulain",
        "email": "jpoulain@coreweave.com",
        "time": "Thu Sep 24 13:51:54 2026 +0200"
      },
      "message": "libibmad: add per-port SA key configuration\n\nThe libibmad SA query helpers have no way to supply a nonzero SM_Key.\nCalls through sa_rpc_call(), including ib_path_query_via() and\nib_node_query_via(), therefore always issue untrusted requests with\nSM_Key 0.\n\nThis prevents those helpers from querying records that require a\ntrusted request, such as PKeyTableRecord, and from working with subnet\nmanagers configured to reject untrusted SA requests. Callers currently\nhave to bypass the helpers and implement the UMAD transaction\nthemselves.\n\nAdd per-port sa_key_set() and sa_key_get() functions following the\nexisting SMP M_Key API. Store the key in the opaque ibmad_port and copy\nit into rpc.mkey when constructing an SA request. Newly opened ports\nremain initialized to key 0, preserving existing behavior unless a\ncaller explicitly sets a key.\n\nExport the new functions under IBMAD_1.6, update the libibmad ABI and\ndistribution packaging, and document the API.\n\nSigned-off-by: Jonathan Süssemilch Poulain \u003cjpoulain@coreweave.com\u003e\n"
    },
    {
      "commit": "90d3077c11e037633c559c505a10e13e91d9decc",
      "tree": "6256a2914f0e7f843d2ba527067ee6fe70b27d6b",
      "parents": [
        "bcd725bec72794527086f9490094ec8691f17ce8"
      ],
      "author": {
        "name": "Jonathan Süssemilch Poulain",
        "email": "jpoulain@coreweave.com",
        "time": "Thu Sep 24 13:35:50 2026 +0200"
      },
      "committer": {
        "name": "Jonathan Süssemilch Poulain",
        "email": "jpoulain@coreweave.com",
        "time": "Thu Sep 24 13:35:50 2026 +0200"
      },
      "message": "libibmad: encode SM_Key in SA MAD headers\n\nmad_encode() always encodes rpc-\u003emkey in IB_MAD_MKEY_F. For an SA MAD,\nthat location is part of the RMPP header; the SA SM_Key is stored later\nin IB_SA_MKEY_F.\n\nThis was harmless for existing SA users because rpc-\u003emkey was always\nzero. Code requiring a nonzero key instead had to build the packet and\npatch IB_SA_MKEY_F afterward.\n\nEncode rpc-\u003emkey according to the management class, using\nIB_SA_MKEY_F for SA MADs and retaining IB_MAD_MKEY_F for other\nclasses. Reusing rpc-\u003emkey avoids extending the public ib_rpc_t\nstructure and treats it as the generic management-key value for the\nselected class.\n\nUpdate sa_query() to set rpc.mkey before building the packet instead of\npatching the encoded SA MAD directly.\n\nSigned-off-by: Jonathan Süssemilch Poulain \u003cjpoulain@coreweave.com\u003e\n"
    },
    {
      "commit": "bcd725bec72794527086f9490094ec8691f17ce8",
      "tree": "e14bd2e3b910afe9bc0ad4f0a8ff2c1814528a9f",
      "parents": [
        "00357df3a344b3515a9a4d345cf0b8c8efb7f116",
        "3f687ba2b288e1eda77352cf359d522707be55fb"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgg@nvidia.com",
        "time": "Tue Sep 22 20:35:37 2026 -0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 22 20:35:37 2026 -0300"
      },
      "message": "Merge pull request #1761 from selvintxavier/new_cq_srq_toggle_obj\n\nbnxt_re/lib: Add uverbs object handle path for CQ/SRQ toggle page"
    },
    {
      "commit": "244079919c71ffcfa904833972ddd7b2c65b371e",
      "tree": "e12e1dd492723065d2859a3082e44bfed41731b1",
      "parents": [
        "00357df3a344b3515a9a4d345cf0b8c8efb7f116"
      ],
      "author": {
        "name": "Ying Xiao",
        "email": "eagleshaw@google.com",
        "time": "Mon Sep 21 22:29:03 2026 +0000"
      },
      "committer": {
        "name": "Ying Xiao",
        "email": "eagleshaw@google.com",
        "time": "Mon Sep 21 22:29:03 2026 +0000"
      },
      "message": "irdma: Remove unused uqp field from Completion Queue\n\nThe `uqp` pointer inside the `send_cq` and `recv_cq` structs is completely unused. It is blindly written to during initialization but is never actually read back. Remove this vestigial field to clean up the code.\n\nSigned-off-by: Ying Xiao \u003ceagleshaw@google.com\u003e\n"
    },
    {
      "commit": "0f1e517b7b232f6da35858fe8c477a383d224624",
      "tree": "20cd67bad6df19b8fbd7e50b5d32390769444010",
      "parents": [
        "00357df3a344b3515a9a4d345cf0b8c8efb7f116"
      ],
      "author": {
        "name": "Zhiwei Zhang",
        "email": "zhangzhiwei@bitintelligence.io",
        "time": "Mon Sep 21 13:44:26 2026 +0800"
      },
      "committer": {
        "name": "Zhiwei Zhang",
        "email": "zhangzhiwei@bitintelligence.io",
        "time": "Mon Sep 21 13:52:40 2026 +0800"
      },
      "message": "docs: remove stale pkey index CQ accessor\n\nSigned-off-by: Zhiwei Zhang \u003czhangzhiwei@bitintelligence.io\u003e\n"
    },
    {
      "commit": "878c65604edfdba4172b80b5732260d067ebefa2",
      "tree": "99d3f509b883525ab79c58c64c6143554a915265",
      "parents": [
        "00357df3a344b3515a9a4d345cf0b8c8efb7f116"
      ],
      "author": {
        "name": "Nicolas Morey",
        "email": "nmorey@suse.com",
        "time": "Fri Sep 18 12:32:08 2026 +0200"
      },
      "committer": {
        "name": "Nicolas Morey",
        "email": "nmorey@suse.com",
        "time": "Fri Sep 18 13:46:18 2026 +0200"
      },
      "message": "kernel-boot: Remove Wants\u003dnetwork-pre.target from initrd\n\nrdma-load-modules@.service has a Wants\u003dnetwork-pre.target.\nWhile this ensures it is ordered before network initialization even\nwhen no other unit explicitly wants network-pre.target, it causes issues\nwhen executed from the initrd.\n\nDuring the initrd phase, systemd has no visibility into services on the\nroot filesystem. Triggering network-pre.target in the initrd marks it as\nsatisfied before switch-root, causing systemd to bypass rootfs services\nordered Before\u003dnetwork-pre.target (such as firewalls or custom network\nscripts) once NetworkManager or Wicked starts on the host.\n\nWork around this issue by moving the Wants\u003d and Before\u003d network-pre.target\ndirectives into a drop-in file that is installed only on the root\nfilesystem and excluded from the initrd.\n\nIn the initrd, there is no direct network-pre dependency, but\nBefore\u003dsysinit.target ensures modules load before sysinit completes.\nPost root switch, the drop-in restores the Wants/Before dependencies,\npreserving legacy host behavior. Because udev replays device events\nafter root switch, the service is re-evaluated with its drop-in,\nand dependencies execute as expected.\n\nFixes: 08f689176497 (\"Revise systemd dependencies for all units\")\nSigned-off-by: Nicolas Morey \u003cnmorey@suse.com\u003e\n"
    },
    {
      "commit": "7a7785ade11ecf8c03ac711b6407457cac5fabe7",
      "tree": "32a8445866313bee8c54f23c60cdf4e76a484258",
      "parents": [
        "36f7ed8b9ce39c73444616c1dcee3ae734b138fb"
      ],
      "author": {
        "name": "Filip Balluch",
        "email": "fballuch@redhat.com",
        "time": "Fri Sep 11 10:55:09 2026 +0200"
      },
      "committer": {
        "name": "Filip Balluch",
        "email": "fballuch@redhat.com",
        "time": "Thu Sep 17 15:06:04 2026 +0200"
      },
      "message": "pyverbs: Fix uint64_t type mismatch in CompCntr\n\nThe read() and read_err() methods in CompCntr used \u0027unsigned long\u0027 for\nthe value parameter, which is 32-bit on i686 but the C API\n(ibv_read_comp_cntr / ibv_read_err_comp_cntr) expects uint64_t.\nThis caused a build failure on 32-bit architectures.\n\nUse uint64_t consistently and add the missing cimport.\n\nSigned-off-by: Filip Balluch \u003cfballuch@redhat.com\u003e\n"
    },
    {
      "commit": "f56feb2440b1ff36c5e24716eb81d774102f83e2",
      "tree": "0a90041f75df136065facce6ddfcff6dcbd159ae",
      "parents": [
        "077e8488f29ad271776b4dbc2331239ead435c89"
      ],
      "author": {
        "name": "Snehal Sanghvi",
        "email": "snsanghvi@microsoft.com",
        "time": "Thu Sep 03 17:31:20 2026 +0000"
      },
      "committer": {
        "name": "Snehal Sanghvi",
        "email": "snsanghvi@microsoft.com",
        "time": "Thu Sep 17 01:45:52 2026 +0000"
      },
      "message": "providers/mana: skip SQ rollback region when pow2 SQ is supported\n\nThe requester SQ of an RC QP carries a trailing rollback shared-memory\nblock so that the rollback point can be recovered from software. When\nthe adapter accepts a power-of-two send queue, the rollback point is\nderived from the WQE size alone and the block is not needed.\n\nThe kernel advertises this with MANA_IB_UCNTX_RC_SQ_POW2_SUPPORT. Skip\nthe extra allocation and the per-post and per-completion offset updates\nwhen it is set together with MANA_IB_UCNTX_RC_EXT_SUPPORT. Gate the\nbehaviour on a new per-QP rollback_sq flag so that QPs running on older\nkernels keep the legacy layout.\n\nSigned-off-by: Snehal Sanghvi \u003csnsanghvi@microsoft.com\u003e\nReviewed-by: Konstantin Taranov \u003ckotaranov@microsoft.com\u003e\n"
    },
    {
      "commit": "077e8488f29ad271776b4dbc2331239ead435c89",
      "tree": "d9530121db9f73e687a9a22d39aac6c6a5a3b154",
      "parents": [
        "00357df3a344b3515a9a4d345cf0b8c8efb7f116"
      ],
      "author": {
        "name": "Snehal Sanghvi",
        "email": "snsanghvi@microsoft.com",
        "time": "Thu Sep 17 01:45:30 2026 +0000"
      },
      "committer": {
        "name": "Snehal Sanghvi",
        "email": "snsanghvi@microsoft.com",
        "time": "Thu Sep 17 01:45:44 2026 +0000"
      },
      "message": "Update kernel headers\n\nTo commit: 89b48ad5671f (\"RDMA/mana_ib: advertise pow2 RC SQ support to\nuser space\").\n\nSigned-off-by: Snehal Sanghvi \u003csnsanghvi@microsoft.com\u003e\n"
    },
    {
      "commit": "00357df3a344b3515a9a4d345cf0b8c8efb7f116",
      "tree": "e453d5f66c40efb2cb579c887be34a0e5c5b5dd8",
      "parents": [
        "394faac51cc68456e491fc92c3f854d6b8127821",
        "bf55c378281c0c4e07e3e1be467e3277b4930de0"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Wed Sep 16 14:45:36 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 16 14:45:36 2026 +0300"
      },
      "message": "Merge pull request #1805 from bdrung/debian-changelog\n\ndebian: Add Debian uploads up to version 65.0-1"
    },
    {
      "commit": "bf55c378281c0c4e07e3e1be467e3277b4930de0",
      "tree": "e453d5f66c40efb2cb579c887be34a0e5c5b5dd8",
      "parents": [
        "394faac51cc68456e491fc92c3f854d6b8127821"
      ],
      "author": {
        "name": "Benjamin Drung",
        "email": "bdrung@ubuntu.com",
        "time": "Wed Sep 16 11:44:40 2026 +0200"
      },
      "committer": {
        "name": "Benjamin Drung",
        "email": "bdrung@ubuntu.com",
        "time": "Wed Sep 16 11:44:40 2026 +0200"
      },
      "message": "debian: Add Debian uploads up to version 65.0-1\n\nrdma-core 56.0-1 to 65.0-1 were uploaded to Debian unstable. Include\nthe changelogs from these uploads and update the timestamp from the top\ncommit.\n\nSigned-off-by: Benjamin Drung \u003cbdrung@ubuntu.com\u003e\n"
    },
    {
      "commit": "394faac51cc68456e491fc92c3f854d6b8127821",
      "tree": "1aff3d10371c45077e80d2126bc641a05753a172",
      "parents": [
        "36f7ed8b9ce39c73444616c1dcee3ae734b138fb",
        "cc300002097a16a9df2077d9b143aff1118ac54c"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Wed Sep 16 08:00:25 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 16 08:00:25 2026 +0300"
      },
      "message": "Merge pull request #1804 from bdrung/fix-version\n\ndebian: fix version for newly added symbols"
    },
    {
      "commit": "cc300002097a16a9df2077d9b143aff1118ac54c",
      "tree": "1aff3d10371c45077e80d2126bc641a05753a172",
      "parents": [
        "36f7ed8b9ce39c73444616c1dcee3ae734b138fb"
      ],
      "author": {
        "name": "Benjamin Drung",
        "email": "bdrung@ubuntu.com",
        "time": "Tue Sep 15 11:24:07 2026 +0200"
      },
      "committer": {
        "name": "Benjamin Drung",
        "email": "bdrung@ubuntu.com",
        "time": "Tue Sep 15 11:24:07 2026 +0200"
      },
      "message": "debian: fix version for newly added symbols\n\nThe new symbols `repoll_create`, `repoll_ctl`, and `repoll_wait` were\nadded in version 65 and not 61.\n\nFixes: c96619715fbd (\"librdmacm: Add repoll create, control, and wait support\")\nSigned-off-by: Benjamin Drung \u003cbdrung@ubuntu.com\u003e\n"
    },
    {
      "commit": "36f7ed8b9ce39c73444616c1dcee3ae734b138fb",
      "tree": "b1e6ef531e01b998ca8bc19820a6b26736d8ae48",
      "parents": [
        "156a9c8ede47c880b218af447ce6b950a2646407",
        "d9d13418e9a291a43ebdeb5646d57b163d4155a0"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Thu Sep 10 11:29:28 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 11:29:28 2026 +0300"
      },
      "message": "Merge pull request #1800 from michich/FSF-address-in-GPLv2\n\nCOPYING.GPL2: update FSF address"
    },
    {
      "commit": "156a9c8ede47c880b218af447ce6b950a2646407",
      "tree": "f95277954b228ed5fb29156467a0d02c47d29ea5",
      "parents": [
        "e84c099f943aa186dab852435fd81288d94c66d5",
        "136666a396a81f65c9a7ff8764fc37dc41bb64ec"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Thu Sep 10 11:28:05 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 11:28:05 2026 +0300"
      },
      "message": "Merge pull request #1801 from SoapGentoo/lttng-static-libs\n\nFix static build against lttng"
    },
    {
      "commit": "136666a396a81f65c9a7ff8764fc37dc41bb64ec",
      "tree": "f95277954b228ed5fb29156467a0d02c47d29ea5",
      "parents": [
        "e84c099f943aa186dab852435fd81288d94c66d5"
      ],
      "author": {
        "name": "David Seifert",
        "email": "soap@gentoo.org",
        "time": "Wed Sep 09 21:45:37 2026 +0200"
      },
      "committer": {
        "name": "David Seifert",
        "email": "soap@gentoo.org",
        "time": "Wed Sep 09 21:45:37 2026 +0200"
      },
      "message": "Fix static build against lttng\n\n* With `cmake -DENABLE_STATIC\u003d1 -DTRACING\u003dLTTNG ..`:\n\n    /tmp/rdma-core/providers/efa/efa_trace.h:16:38: fatal error: efa_trace.h: No such file or directory\n       16 | #define LTTNG_UST_TRACEPOINT_INCLUDE \"efa_trace.h\"\n          |                                      ^~~~~~~~~~~~~\n    compilation terminated.\n    ninja: build stopped: subcommand failed.\n\nSigned-off-by: David Seifert \u003csoap@gentoo.org\u003e\n"
    },
    {
      "commit": "d9d13418e9a291a43ebdeb5646d57b163d4155a0",
      "tree": "f745d5424501fdca1335abf2fa661e2f3a29ba07",
      "parents": [
        "e84c099f943aa186dab852435fd81288d94c66d5"
      ],
      "author": {
        "name": "Michal Schmidt",
        "email": "mschmidt@redhat.com",
        "time": "Wed Sep 09 10:26:40 2026 +0200"
      },
      "committer": {
        "name": "Michal Schmidt",
        "email": "mschmidt@redhat.com",
        "time": "Wed Sep 09 10:36:30 2026 +0200"
      },
      "message": "COPYING.GPL2: update FSF address\n\nThe Free Software Foundation closed its physical office on Franklin\nStreet, Boston, in 2024. The current recommended text of the GPLv2\nreplaces the physical address with a URL.\n\nReplace COPYING.GPL2 with the latest revision, downloaded from\nhttps://www.gnu.org/licenses/old-licenses/gpl-2.0.txt\n\nIt also replaces the fictional company president name \"Ty Coon\" with\n\"Moe Ghoul\".\n\nThis silences a rpmlint message:\nE: incorrect-fsf-address /usr/share/licenses/rdma-core-common/COPYING.GPL2\n\nSigned-off-by: Michal Schmidt \u003cmschmidt@redhat.com\u003e\n"
    },
    {
      "commit": "e84c099f943aa186dab852435fd81288d94c66d5",
      "tree": "489335e9937c1ae3ddd3c479397af0f874061446",
      "parents": [
        "58e40801bfed5a8befc0881594820fa0a0baa4a1"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Sun Sep 06 10:12:09 2026 +0300"
      },
      "committer": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Sun Sep 06 10:12:09 2026 +0300"
      },
      "message": "Update library version to be 66.0\n\nSigned-off-by: Leon Romanovsky \u003cleon@kernel.org\u003e\n"
    },
    {
      "commit": "58e40801bfed5a8befc0881594820fa0a0baa4a1",
      "tree": "95e4a14b20a20ff168c6c249289a7b420002955d",
      "parents": [
        "7b92fcfd6de7801450ae3b9e44f5ca78accba555"
      ],
      "author": {
        "name": "Zhiwei Zhang",
        "email": "zhangzhiwei@bitintelligence.io",
        "time": "Tue Jul 21 14:03:12 2026 +0800"
      },
      "committer": {
        "name": "Leon Romanovsky",
        "email": "leonro@nvidia.com",
        "time": "Sun Sep 06 03:02:53 2026 -0400"
      },
      "message": "pyverbs: Update MW rkey after type 2 bind\n\nset_bind_wr() assigns the incremented rkey to the bind WR but leaves MW.rkey\nunchanged. After the bind succeeds, applications that publish MW.rkey to the\npeer send the old rkey, while the NIC has already bound the MW with the new\nrkey. Remote access using the stale rkey consequently fails with a remote\naccess error.\n\nSynchronize MW.rkey with the rkey of successfully posted IBV_WR_BIND_MW\nrequests. When posting a WR list partially fails, only Bind WRs before bad_wr\nare updated, since those are the requests accepted by ibv_post_send().\n\nSigned-off-by: Zhiwei Zhang \u003czhangzhiwei@bitintelligence.io\u003e\nSigned-off-by: Leon Romanovsky \u003cleonro@nvidia.com\u003e\n"
    },
    {
      "commit": "7b92fcfd6de7801450ae3b9e44f5ca78accba555",
      "tree": "bb1c8a6fedd02fe49c9aada64459257a0e19a915",
      "parents": [
        "aa7f6bf84dbe291bb93b997653d546fe4dfb2f73",
        "0fa5b92d72e894cb05d0a059fe3eae569b26c365"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Sun Sep 06 09:54:37 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 06 09:54:37 2026 +0300"
      },
      "message": "Merge pull request #1794 from qvicksilver/fix-smi-gsi-ethernet-selection\n\nlibibumad: exclude Ethernet ports from SMI/GSI pairs"
    },
    {
      "commit": "aa7f6bf84dbe291bb93b997653d546fe4dfb2f73",
      "tree": "46fb8777bb85cd82ad27bfcaf604cd75f1e0f763",
      "parents": [
        "9fa48416169c28dda86add5a741dd45bec4da9c9",
        "172c26bbf7f2af63565b0ce0bd1f0b6b6eded5f4"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leon@kernel.org",
        "time": "Sun Sep 06 09:48:44 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 06 09:48:44 2026 +0300"
      },
      "message": "Merge pull request #1797 from lishuang1986/lishuang/rc_pingpong-ipv6\n\nrc_pingpong: Prefer IPv6 wildcard when binding control channel"
    }
  ],
  "next": "9fa48416169c28dda86add5a741dd45bec4da9c9"
}
