)]}'
{
  "commit": "e41f32fe8254cd1b2e00bcc5af1e4d528c5a79db",
  "tree": "a600e47ae183d12c4c92008c9468ad997beede8f",
  "parents": [
    "7421ddc4dca27b77dbc62e5cc2aaaae116802639"
  ],
  "author": {
    "name": "Peter Maydell",
    "email": "peter.maydell@linaro.org",
    "time": "Tue Feb 20 16:06:15 2024 +0000"
  },
  "committer": {
    "name": "Peter Maydell",
    "email": "peter.maydell@linaro.org",
    "time": "Tue Feb 27 13:01:42 2024 +0000"
  },
  "message": "system/bootdevice: Don\u0027t unregister reset handler in restore_boot_order()\n\nCurrently the qemu_register_reset() API permits the reset handler functions\nregistered with it to remove themselves from within the callback function.\nThis is fine with our current implementation, but is a bit odd, because\ngenerally reset is supposed to be idempotent, and doesn\u0027t fit well in a\nthree-phase-reset world where a resettable object will get multiple\ncallbacks as the system is reset.\n\nWe now have only one user of qemu_register_reset() which makes use of\nthe ability to unregister itself within the callback:\nrestore_boot_order().  We want to change our implementation of\nqemu_register_reset() to something where it would be awkward to\nmaintain the \"can self-unregister\" feature.  Rather than making that\nreimplementation complicated, change restore_boot_order() so that it\ndoesn\u0027t unregister itself but instead returns doing nothing for any\ncalls after it has done the \"restore the boot order\" work.\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\nReviewed-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nReviewed-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nReviewed-by: Philippe Mathieu-Daudé \u003cphilmd@linaro.org\u003e\nAcked-by: Richard Henderson \u003crichard.henderson@linaro.org\u003e\nMessage-id: 20240220160622.114437-4-peter.maydell@linaro.org\nReviewed-by: Zhao Liu \u003czhao1.liu@intel.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2106f1026ff31ed82ead45139dea59c3bf9eead8",
      "old_mode": 33188,
      "old_path": "system/bootdevice.c",
      "new_id": "2579b26dc8b4c38db43bcfd32232ff3626f8c09b",
      "new_mode": 33188,
      "new_path": "system/bootdevice.c"
    }
  ]
}
