Lines Matching refs:bpf
196 mutex_lock(&hdev->bpf.prog_list_lock); in hid_bpf_reg()
198 count = list_count_nodes(&hdev->bpf.prog_list); in hid_bpf_reg()
205 if (hdev->bpf.rdesc_ops) { in hid_bpf_reg()
210 hdev->bpf.rdesc_ops = ops; in hid_bpf_reg()
220 list_add_rcu(&ops->list, &hdev->bpf.prog_list); in hid_bpf_reg()
222 list_add_tail_rcu(&ops->list, &hdev->bpf.prog_list); in hid_bpf_reg()
223 synchronize_srcu(&hdev->bpf.srcu); in hid_bpf_reg()
226 mutex_unlock(&hdev->bpf.prog_list_lock); in hid_bpf_reg()
229 if (hdev->bpf.rdesc_ops == ops) in hid_bpf_reg()
230 hdev->bpf.rdesc_ops = NULL; in hid_bpf_reg()
251 mutex_lock(&hdev->bpf.prog_list_lock); in hid_bpf_unreg()
254 synchronize_srcu(&hdev->bpf.srcu); in hid_bpf_unreg()
257 reconnect = hdev->bpf.rdesc_ops == ops; in hid_bpf_unreg()
259 hdev->bpf.rdesc_ops = NULL; in hid_bpf_unreg()
261 mutex_unlock(&hdev->bpf.prog_list_lock); in hid_bpf_unreg()
315 list_for_each_entry_rcu(e, &hdev->bpf.prog_list, list) { in __hid_bpf_ops_destroy_device()