On Fri, 2024-12-06 at 08:08 -0800, Andrii Nakryiko wrote: [...] > The tags would be that generalizable side effect declaration approach, > so seems worth it to set a uniform approach. > > > Please take a look at the patch, the change for check_cfg() is 32 lines. > > I did, actually. And I already explained what I don't like about it: > eagerness. check_cfg() is not the right place for this, if we want to > support dead code elimination and BPF CO-RE-based feature gating. > Which your patches clearly violate, so I don't like them, sorry. > > We made this eagerness mistake with global subprogs verification > previously, and had to switch it to lazy on-demand global subprog > validation. I think we should preserve this lazy approach going > forward. In this context tags have same detection power as current changes for check_cfg(), it is not possible to remove tag using dead code elimination. So I really don't see any advantages in the context of this particular issue. [...]