[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT PATCH v4 1/5] lib/uksched: Ensure (%rsp + 8) 16-byte alignment for x86_64 only



Reviewed-by: Santiago Pagani <santiago.pagani@xxxxxxxxx>

On 29.10.19, 14:50, "Jia He" <justin.he@xxxxxxx> wrote:

    From: Wei Chen <wei.chen@xxxxxxx>
    
    As Arm64 just needs stack 16-byte alignment. So this rnsure (%rsp + 8)
    16-byte alignment is used for x86_64 only.
    
    Signed-off-by: Wei Chen <wei.chen@xxxxxxx>
    Signed-off-by: Jianyong Wu <jianyong.wu@xxxxxxx>
    Signed-off-by: Jia He <justin.he@xxxxxxx>
    ---
     lib/uksched/thread.c | 2 ++
     1 file changed, 2 insertions(+)
    
    diff --git a/lib/uksched/thread.c b/lib/uksched/thread.c
    index abaabd5..f8ae786 100644
    --- a/lib/uksched/thread.c
    +++ b/lib/uksched/thread.c
    @@ -53,10 +53,12 @@ static void init_sp(unsigned long *sp, char *stack,
     {
        *sp = (unsigned long) stack + STACK_SIZE;
     
    +#if defined(__X86_64__)
        /* Must ensure that (%rsp + 8) is 16-byte aligned
         * at the start of thread_starter.
         */
        stack_push(sp, 0);
    +#endif
     
        stack_push(sp, (unsigned long) function);
        stack_push(sp, (unsigned long) data);
    -- 
    2.17.1
    
    

_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.