All of lore.kernel.org
 help / color / mirror / Atom feed
From: Claudio Fontana <claudio.fontana@huawei.com>
To: Peter Maydell <peter.maydell@linaro.org>,
	Amanieu d'Antras <amanieu@gmail.com>
Cc: Riku Voipio <riku.voipio@iki.fi>,
	QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH] linux-user: Fix fault address truncation AArch64
Date: Fri, 10 Oct 2014 16:58:27 +0200	[thread overview]
Message-ID: <5437F413.80100@huawei.com> (raw)
In-Reply-To: <CAFEAcA8NSVbDJXVFJCZOt2=U1pFAtsdM2H1uWYVROmDVGUabKg@mail.gmail.com>

On 10.10.2014 13:32, Peter Maydell wrote:
> On 10 October 2014 05:22, Amanieu d'Antras <amanieu@gmail.com> wrote:
>> On AArch64 the si_addr field of siginfo_t is truncated to 32 bits
>> because the fault address passes through an uint32_t variable. This
>> is fixed by changing the variable to uint64_t.
>>
>> Signed-off-by: Amanieu d'Antras <amanieu@gmail.com>
>> ---
>>  linux-user/main.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/linux-user/main.c b/linux-user/main.c
>> index 483eb3f..d63e093 100644
>> --- a/linux-user/main.c
>> +++ b/linux-user/main.c
>> @@ -1006,7 +1006,7 @@ void cpu_loop(CPUARMState *env)
>>      CPUState *cs = CPU(arm_env_get_cpu(env));
>>      int trapnr, sig;
>>      target_siginfo_t info;
>> -    uint32_t addr;
>> +    uint64_t addr;
>>
>>      for (;;) {
>>          cpu_exec_start(cs);
> 
> Thanks for catching this. Better to fix it by dropping
> the unnecessary local variable completely and just setting
>   info._sifields._sigfault._addr = env->exception.vaddress;
> at the only point where we currently use 'addr', though,
> I think.
> 
> -- PMM

We do use the name code pattern in most of the functions of that file,
meaning

uint32_t / uint64_t / target_ulong addr;

and then do_something_with_addr(addr);

Ciao,

Claudio

  reply	other threads:[~2014-10-10 14:58 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-10  4:22 [Qemu-devel] [PATCH] linux-user: Fix fault address truncation AArch64 Amanieu d'Antras
2014-10-10  8:02 ` Claudio Fontana
2014-10-10 11:32 ` Peter Maydell
2014-10-10 14:58   ` Claudio Fontana [this message]
2014-10-10 15:30     ` Peter Maydell
  -- strict thread matches above, loose matches on Subject: below --
2014-10-23 11:55 riku.voipio
2014-10-23 12:06 ` Peter Maydell
2014-10-23 17:31   ` Richard Henderson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5437F413.80100@huawei.com \
    --to=claudio.fontana@huawei.com \
    --cc=amanieu@gmail.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=riku.voipio@iki.fi \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.