Hi Xenia,
On 05/07/2022 22:49, Xenia Ragiadakou wrote:
On 7/6/22 00:28, Julien Grall wrote:
Hi Xenia,
On 05/07/2022 22:02, Xenia Ragiadakou wrote:
Add the function prototypes of the functions below in
<asm/processor.h> header
file so that they are visible before the function definitions in
traps.c.
enter_hypervisor_from_guest_preirq()
enter_hypervisor_from_guest()
do_trap_hyp_sync()
do_trap_guest_sync()
do_trap_irq()
do_trap_fiq()
leave_hypervisor_to_guest()
I have actually came across those missing prototypes in the past and I
have refrained to add them because they are not meant to be called
from C.
While I agree this is a violation of Misra C, I am still not convinced
they should be added (there is no need to verify the prototype).
Yes, there is no need. Here, I decided to follow the example of
do_trap_hyp_serror() and do_trap_guest_serror() for consistency.
do_trap_guest_serror() is called from C code (see arch/arm32/traps.c).
do_trap_hyp_serror() is called only from assembly. I would argue that if
you want consistency, then you should drop the prototype rather than
modifying 90% of the other examples.
Otherwise, this is not really consistency but more a design choice (you
want to be fully compliant with MISRA).
Cheers,
--
Julien Grall