qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH for-2.12] linux-user/signal.c: Put AArch64 frame


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH for-2.12] linux-user/signal.c: Put AArch64 frame record in the right place
Date: Fri, 13 Apr 2018 15:20:08 +0100

On 13 April 2018 at 15:18, Laurent Vivier <address@hidden> wrote:
> Le 12/04/2018 à 16:02, Peter Maydell a écrit :
>> @@ -1850,12 +1856,6 @@ static void target_setup_frame(int usig, struct 
>> target_sigaction *ka,
>>      fr_ofs = layout.total_size;
>>      layout.total_size += sizeof(struct target_rt_frame_record);
>>
>> -    /* We must always provide at least the standard 4K reserved space,
>> -     * even if we don't use all of it (this is part of the ABI)
>> -     */
>> -    layout.total_size = MAX(layout.total_size,
>> -                            sizeof(struct target_rt_sigframe));
>> -
>>      frame_addr = get_sigframe(ka, env, layout.total_size);
>>      trace_user_setup_frame(env, frame_addr);
>>      if (!lock_user_struct(VERIFY_WRITE, frame, frame_addr, 0)) {
>>
>
> It's hard to compare this code with the one in kernel, but if I compare
> the offset of "fr" in QEMU and the one of "next_frame" they seem identical.

Mmm. We're not quite the same as the kernel, because we keep 64 bits
of trampoline code in our target_rt_frame_record, which don't exist
on the stack in the kernel. So we'll never be exactly like the
kernel's layout (until/unless we implement a VDSO).

> Reviewed-by: Laurent Vivier <address@hidden>

Thanks.

-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]