Thread (73 messages) 73 messages, 7 authors, 2022-03-15

Re: [PATCH bpf-next v2 03/28] HID: hook up with bpf

flat view

From: Song Liu <song@kernel.org>
Date: 2022-03-05 00:23:42
Also in: bpf, linux-kselftest, lkml, netdev

On Fri, Mar 4, 2022 at 9:31 AM Benjamin Tissoires
[off-list ref] wrote:
Now that BPF can be compatible with HID, add the capability into HID.
drivers/hid/hid-bpf.c takes care of the glue between bpf and HID, and
hid-core can then inject any incoming event from the device into a BPF
program to filter/analyze it.

Signed-off-by: Benjamin Tissoires <redacted>
[...]
quoted hunk ↗ jump to hunk
+
+static int hid_bpf_link_attach(struct hid_device *hdev, enum bpf_hid_attach_type type)
+{
+       int err = 0;
+
+       switch (type) {
+       case BPF_HID_ATTACH_DEVICE_EVENT:
+               if (!hdev->bpf.ctx) {
+                       hdev->bpf.ctx = bpf_hid_allocate_ctx(hdev, HID_BPF_MAX_BUFFER_SIZE);
+                       if (IS_ERR(hdev->bpf.ctx)) {
+                               err = PTR_ERR(hdev->bpf.ctx);
+                               hdev->bpf.ctx = NULL;
+                       }
+               }
+               break;
+       default:
+               /* do nothing */
Do we need to show warning and/or return EINVAL here?
quoted hunk ↗ jump to hunk
+       }
+
+       return err;
+}
+
+static void hid_bpf_array_detached(struct hid_device *hdev, enum bpf_hid_attach_type type)
+{
+       switch (type) {
+       case BPF_HID_ATTACH_DEVICE_EVENT:
+               kfree(hdev->bpf.ctx);
+               hdev->bpf.ctx = NULL;
+               break;
+       default:
+               /* do nothing */
ditto

[...]
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help