Messages in this thread | | | From | Hao Luo <> | Date | Wed, 1 Jul 2020 10:02:48 -0700 | Subject | Re: [PATCH bpf-next] selftests/bpf: Switch test_vmlinux to use hrtimer_range_start_ns. |
| |
On Tue, Jun 30, 2020 at 7:26 PM Yonghong Song <yhs@fb.com> wrote: > > > > On 6/30/20 5:10 PM, Hao Luo wrote: > > Ok, with the help of my colleague Ian Rogers, I think we solved the > > mystery. Clang actually inlined hrtimer_nanosleep() inside > > SyS_nanosleep(), so there is no call to that function throughout the > > path of the nanosleep syscall. I've been looking at the function body > > of hrtimer_nanosleep for quite some time, but clearly overlooked the > > caller of hrtimer_nanosleep. hrtimer_nanosleep is pretty short and > > there are many constants, inlining would not be too surprising. > > Oh thanks for explanation. inlining makes sense. We have many other > instances like this in the past where kprobe won't work properly. > > Could you reword your commit message then? > > > causing fentry and kprobe to not hook on this function properly on a > > Clang build kernel. > > The above is a little vague on what happens. What really happens is > fentry/kprobe does hook on this function but has no effect since > its caller has inlined the function.
Sure, sending a v2 with a more accurate description of the issue.
Hao
| |