On Thu, Mar 9, 2023 at 9:12 PM Stanislav Fomichev <sdf@xxxxxxxxxx> wrote: > > > > > and I'm wondering whether you meant bpf_prog_dev_bound_match(), and > > whether it protects against the ABA problem, i.e., if > > __bpf_offload_dev_netdev_unregister() is called twice, and we get > > aux->offload and aux->offload->netdev at the same addresses? > > Yes, the comment is talking about bpf_prog_dev_bound_match during attach time. > When __bpf_offload_dev_netdev_unregister races with our prog load > (which is being loaded for some specific netdev), > bpf_prog_dev_bound_match check during attach time should render this > program un-attach-able / unusable (since the original netdev, for > which this prog has been loaded, is gone). > > But going back to s390 issue: so basically, rewriting imm for kfuncs > early in the verifier prevents jit from being able to call > bpf_jit_find_kfunc_model? Did I get that correctly? > Adding kfunc_desc seems like a nice hack, but I liked your previous > series which pushed that imm resolution down to the jits better :-( Me too. All I was saying is to do without hacking through all JITs. More or less what v2 version was doing instead all-arch change in v3.