Re: [PATCH HID for-next v1 6/9] HID: bpf: rework how programs are attached and stored in the kernel

From: Alexei Starovoitov
Date: Wed Jan 11 2023 - 01:11:09 EST


On Fri, Jan 06, 2023 at 11:23:29AM +0100, Benjamin Tissoires wrote:
>
> +static void hid_bpf_link_release(struct bpf_link *link)
> +{
> + struct hid_bpf_link *hid_link =
> + container_of(link, struct hid_bpf_link, link);
> +
> + __clear_bit(hid_link->index, jmp_table.enabled);
> + schedule_work(&release_work);
> +}

...

> + link->index = prog_idx;

I was super confused that you use prog_idx as a bit in jmp_table
and had to look into your tree what hid_bpf_jmp_table.c is doing.
Looks like it's not prog_id (which is prog->aux->id) that we know.
It's hid specific prog idx in that jmp table.
Maybe would be good to rename your prog_idx to something with 'hid' suffix or prefix?
or 'table' suffix or prefix ?
prog_table_idx ?

Other than that the patch set looking great.
I'm assuming removing call_hid_bpf_prog_put_deferred() and everything related
comes in the next set?