Messages in this thread | | | From | Yosry Ahmed <> | Date | Fri, 20 May 2022 09:06:45 -0700 | Subject | Re: [PATCH bpf-next v1 2/5] cgroup: bpf: add cgroup_rstat_updated() and cgroup_rstat_flush() kfuncs |
| |
On Fri, May 20, 2022 at 4:16 AM Tejun Heo <tj@kernel.org> wrote: > > On Fri, May 20, 2022 at 03:06:07PM +0530, Kumar Kartikeya Dwivedi wrote: > > With static noinline, the compiler will optimize away the function. With global > > noinline, it can still optimize away the call site, but will keep the function > > definition, so attach works. Therefore __weak is needed to ensure call is still > > emitted. With GCC __attribute__((noipa)) might have been more appropritate, but > > LLVM doesn't support it, so __weak is the next best thing supported by both with > > the same side effect.
Thanks a lot for the explanation!
> > Ah, okay, so it's to prevent compiler from optimizing away call to a noop > function by telling it that we don't know what the function might eventually > be. Thanks for the explanation. Yosry, can you please add a comment > explaining what's going on?
Will add a comment explaining things in the next section. Thanks for reviewing this, Tejun!
> > Thanks. > > -- > tejun
| |