# Re: \[PATCHv8 02/34\] lib/vdso: make do\_hres and do\_coarse as \_\_always\_inline

- From: Thomas Gleixner \<hidden\>
- Date: 2020-01-10 11:43:01 
- List: linux-api
- Page: https://ratatoskr.run/linux-api/2020/01/5826584
- Thread: https://ratatoskr.run/linux-api/2019/11/5773343/t.md

```text
Vincenzo Frascino [ref] writes:
> On 11/12/19 1:26 AM, Dmitry Safonov wrote:
>> +» » vd·=·&vd[CS_HRES_COARSE];
>> +out_hres:
>> +» » return·do_hres(vd,·clock,·ts);
>> » }·else·if·(msk·&·VDSO_COARSE)·{
>> » » do_coarse(&vd[CS_HRES_COARSE],·clock,·ts);
>> » » return·0;
>> » }·else·if·(msk·&·VDSO_RAW)·{
>> -» » return·do_hres(&vd[CS_RAW],·clock,·ts);
>> +» » vd·=·&vd[CS_RAW];
>> +» » /*·goto·allows·to·avoid·extra·inlining·of·do_hres.·*/
>> +» » goto·out_hres;
>
> What is the performance impact of "goto out_hres"?

On x86 it's invisible at least in my limited testing.

Thanks,

        tglx
```
