)]}'
{
  "commit": "9f07d5d04826a038a8d245e5cc9e568b46ac000f",
  "tree": "4f849a3621b772a9192b85dc39b7e98d885ef624",
  "parents": [
    "c7098dc5ff6c062200bc2eeca8964f377127c6b3"
  ],
  "author": {
    "name": "Shuai Zhang",
    "email": "shuai.zhang@oss.qualcomm.com",
    "time": "Fri Apr 10 17:54:43 2026 +0800"
  },
  "committer": {
    "name": "Luiz Augusto von Dentz",
    "email": "luiz.von.dentz@intel.com",
    "time": "Fri Apr 10 10:14:42 2026 -0400"
  },
  "message": "Bluetooth: hci_qca: Fix missing wakeup during SSR memdump handling\n\nWhen a Bluetooth controller encounters a coredump, it triggers the\nSubsystem Restart (SSR) mechanism. The controller first reports the\ncoredump data and, once the upload is complete, sends a hw_error\nevent. The host relies on this event to proceed with subsequent\nrecovery actions.\n\nIf the host has not finished processing the coredump data when the\nhw_error event is received, it waits until either the processing is\ncomplete or the 8-second timeout expires before handling the event.\n\nThe current implementation clears QCA_MEMDUMP_COLLECTION using\nclear_bit(), which does not wake up waiters sleeping in\nwait_on_bit_timeout(). As a result, the waiting thread may remain\nblocked until the timeout expires even if the coredump collection\nhas already completed.\n\nFix this by clearing QCA_MEMDUMP_COLLECTION with\nclear_and_wake_up_bit(), which also wakes up the waiting thread and\nallows the hw_error handling to proceed immediately.\n\nTest case:\n- Trigger a controller coredump using:\n    hcitool cmd 0x3f 0c 26\n- Tested on QCA6390.\n- Capture HCI logs using btmon.\n- Verify that the delay between receiving the hw_error event and\n  initiating the power-off sequence is reduced compared to the\n  timeout-based behavior.\n\nReviewed-by: Bartosz Golaszewski \u003cbartosz.golaszewski@oss.qualcomm.com\u003e\nReviewed-by: Paul Menzel \u003cpmenzel@molgen.mpg.de\u003e\nSigned-off-by: Shuai Zhang \u003cshuai.zhang@oss.qualcomm.com\u003e\nSigned-off-by: Luiz Augusto von Dentz \u003cluiz.von.dentz@intel.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4512ff7cd0c013710224c670f6c4dfd6da2c59e6",
      "old_mode": 33188,
      "old_path": "drivers/bluetooth/hci_qca.c",
      "new_id": "cd1834246b4793939c2f92af32ce7212f1f3d86a",
      "new_mode": 33188,
      "new_path": "drivers/bluetooth/hci_qca.c"
    }
  ]
}
