[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 for 4.5] arm32: fix build after 063188f4b3
On 10/14/2014 10:15 AM, Ian Campbell wrote: > On Mon, 2014-10-13 at 16:29 +0100, Julien Grall wrote: > >> +GLOBAL(do_smc) > >> +GLOBAL(do_smc) > > These should both be ENTRY. Why? Is it because GLOBAL should be used for variable and ENTRY for function? >> +int do_smc(register_t function_id, ...); > > Are you sure that the variadic function calling convention is the same > as for a regular function call? I'm not entirely clear having read > AAPCS, it says they are marshalled according to "the standard base". All the parameters fits in a register, so the compiler will effectively use the first registers to pass arguments. This may be an issue if the user decides to pass an uint64_t on ARM32. > I think it would probably be safer to declare this guy as taking 3-4 > arguments and pass in 0 for the unused one. You could wrap in > do_smc<N>() helpers if you really wanted. I will introduce helpers. It will be easier if we decide to extend the number of parameters (SMC64 supports up to 5 parameters). > I'd prefer to name this call_smc, do_foo tends to be used on the callee > side of exception things (e.g. do_hypervisor_trap etc, do_psci_blah). Will make the change in the next version. Regards, -- Julien Grall _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |