On Wed, Jan 11, 2023 at 7:11 AM Alexei Starovoitov <alexei.starovoitov@xxxxxxxxx> wrote: > > 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 ? prog_table_idx sounds good :) > > Other than that the patch set looking great. great, thanks! > I'm assuming removing call_hid_bpf_prog_put_deferred() and everything related > comes in the next set? > Yep. I'll probably send it tomorrow. I have a bunch of urgent corporate stuff to do today so won't have time for the fun part of the job :( Cheers, Benjamin