)]}'
{
  "commit": "3a7456e0af92f7a63eb16d6f7a47c21293a3108d",
  "tree": "f0ccc7ec27536634bca3b9d3754bf5268d1b5a19",
  "parents": [
    "d0cef01d7df4c3bbe8ee4cbcda9c977c27ce2cfb"
  ],
  "author": {
    "name": "Yishai Hadas",
    "email": "yishaih@nvidia.com",
    "time": "Wed Jun 24 14:55:50 2026 +0300"
  },
  "committer": {
    "name": "Nicolas Morey",
    "email": "nmorey@suse.com",
    "time": "Mon Jul 06 13:53:04 2026 +0200"
  },
  "message": "libibverbs: Set vmr-\u003eaccess in ibv_cmd_reg_mr_ex()\n\n[ Upstream commit 45c66ed5603b7a11491214fb3dc4a1d0b1626277 ]\n\nibv_cmd_reg_mr_ex() did not record the MR\u0027s access flags in vmr-\u003eaccess,\nunlike ibv_cmd_reg_mr().  ibv_dereg_mr() decides whether to re-enable fork\ntracking from verbs_get_mr(mr)-\u003eaccess:\n\n    if (... \u0026\u0026 !(access \u0026 IBV_ACCESS_ON_DEMAND))\n            ibv_dofork_range(addr, length);\n\nWith vmr-\u003eaccess left zero, an on-demand (ODP) MR registered through\nibv_reg_mr_ex() / ibv_cmd_reg_mr_ex() reads access \u003d\u003d 0 at dereg, so\nibv_dofork_range() runs even though registration skipped the matching\nibv_dontfork_range() for ODP (need_fork \u003d !(ON_DEMAND || FD)).  The\nunbalanced dofork corrupts the fork-range accounting when ibv_fork_init()\nis enabled.\n\nSet vmr-\u003eaccess \u003d mr_init_attr-\u003eaccess on the success path, mirroring\nibv_cmd_reg_mr(), so the dereg fork decision is correct.  (The write-ABI\nfallback path already goes through ibv_cmd_reg_mr(), which sets it.)\n\nFixes: ca61708a8838 (\"verbs: Add ibv_cmd_reg_mr_ex() to be used by drivers\")\nSigned-off-by: Yishai Hadas \u003cyishaih@nvidia.com\u003e\nSigned-off-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nCo-Authored-By: Claude Opus 4.8 \u003cnoreply@anthropic.com\u003e\nSigned-off-by: Nicolas Morey \u003cnmorey@suse.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bf09532535d8f0a238c81b102763b5d968be3e31",
      "old_mode": 33188,
      "old_path": "libibverbs/cmd_mr.c",
      "new_id": "f45ce39928b8ff4680ce88d6fb80738a0fb0f688",
      "new_mode": 33188,
      "new_path": "libibverbs/cmd_mr.c"
    }
  ]
}
