From: Madhuparna Bhowmik Date: Tue, 25 Feb 2020 13:17:53 +0000 (+0530) Subject: Bluetooth: Use list_for_each_entry_rcu() to traverse RCU list in RCU read-side CS X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=0c2ac7d4f08d330dc5b092b4beba9ef88602d369;p=openwrt%2Fstaging%2Fblogic.git Bluetooth: Use list_for_each_entry_rcu() to traverse RCU list in RCU read-side CS In function hci_is_blocked_key() RCU list is traversed with list_for_each_entry() in RCU read-side CS. Use list_for_each_entry_rcu() instead. Signed-off-by: Madhuparna Bhowmik Signed-off-by: Marcel Holtmann --- diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index 8ddd1bea02be..4e6d61a95b20 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c @@ -2327,7 +2327,7 @@ bool hci_is_blocked_key(struct hci_dev *hdev, u8 type, u8 val[16]) struct blocked_key *b; rcu_read_lock(); - list_for_each_entry(b, &hdev->blocked_keys, list) { + list_for_each_entry_rcu(b, &hdev->blocked_keys, list) { if (b->type == type && !memcmp(b->val, val, sizeof(b->val))) { blocked = true; break;