summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPauli Virtanen <pav@iki.fi>2026-06-14 13:27:03 +0300
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2026-08-07 12:26:23 -0400
commit2c704850f1c7c625729e6f7e16db74ffad4b6752 (patch)
treef0dc5affe7e6051f737e64cbd39678776dd4385b
parent252862a031d90e89e706d17107b3a72fafbd84fd (diff)
downloadlinux-2c704850f1c7c625729e6f7e16db74ffad4b6752.tar.gz
linux-2c704850f1c7c625729e6f7e16db74ffad4b6752.zip
Bluetooth: hci_core: Add minimal context analysis annotations
Add minimal compiler context analysis annotations, required for compilation to pass. compiler-context-analysis.h doesn't have tools to deal with the conditional SRCU locking on return value used here, so just disable the analysis in places instead of refactoring, in order to not make code changes here. Signed-off-by: Pauli Virtanen <pav@iki.fi> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
-rw-r--r--net/bluetooth/hci_core.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index 5ba9fe8261ec..d1e78ae7728e 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -62,6 +62,7 @@ static DEFINE_IDA(hci_index_ida);
/* Get HCI device by index.
* Device is held on return. */
static struct hci_dev *__hci_dev_get(int index, int *srcu_index)
+ __context_unsafe(/* conditional locking */)
{
struct hci_dev *hdev = NULL, *d;
@@ -89,11 +90,13 @@ struct hci_dev *hci_dev_get(int index)
}
static struct hci_dev *hci_dev_get_srcu(int index, int *srcu_index)
+ __context_unsafe(/* conditional locking vs return */)
{
return __hci_dev_get(index, srcu_index);
}
static void hci_dev_put_srcu(struct hci_dev *hdev, int srcu_index)
+ __context_unsafe(/* conditional locking vs return */)
{
srcu_read_unlock(&hdev->srcu, srcu_index);
hci_dev_put(hdev);