Searched hist:faa22a1f88c863c7e8cdc6f5d19820e92067ac58 (Results 1 – 2 of 2) sorted by relevance
| /optee_os/core/arch/arm/include/ |
| H A D | arm32.h | faa22a1f88c863c7e8cdc6f5d19820e92067ac58 Thu Jun 04 13:42:55 UTC 2020 Jerome Forissier <jerome@forissier.org> core: add __noprof attribute to register accessors
Allowing instrumentation of register accessor functions does not really make sense, since they are normally inlined by the compiler. On the contrary, allowing the compiler to instrument these functions (if for some reason they are not inlined) can cause serious problems such as infinite recursion (in case the instrumentation ends up calling a register accessor again) or unexpected results (if the accessor is used by early code before the instrumentation is initialized).
Note that the accessors used by user space already have __noprof (see lib/libutee/include/arm64_user_sysreg.h and scripts/arm32_sysreg.py).
For these reasons, add __noprof to core/arch/arm/include/arm{32,64}.h.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
|
| H A D | arm64.h | faa22a1f88c863c7e8cdc6f5d19820e92067ac58 Thu Jun 04 13:42:55 UTC 2020 Jerome Forissier <jerome@forissier.org> core: add __noprof attribute to register accessors
Allowing instrumentation of register accessor functions does not really make sense, since they are normally inlined by the compiler. On the contrary, allowing the compiler to instrument these functions (if for some reason they are not inlined) can cause serious problems such as infinite recursion (in case the instrumentation ends up calling a register accessor again) or unexpected results (if the accessor is used by early code before the instrumentation is initialized).
Note that the accessors used by user space already have __noprof (see lib/libutee/include/arm64_user_sysreg.h and scripts/arm32_sysreg.py).
For these reasons, add __noprof to core/arch/arm/include/arm{32,64}.h.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
|