From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org, patches@linaro.org,
Richard Henderson <rth@twiddle.net>,
Paolo Bonzini <pbonzini@redhat.com>,
Eduardo Habkost <ehabkost@redhat.com>,
Laurent Vivier <laurent@vivier.eu>
Subject: Re: [Qemu-devel] [PATCH for-2.9 5/6] disas/cris: Avoid unintended sign extension
Date: Fri, 3 Mar 2017 16:58:59 +0100 [thread overview]
Message-ID: <20170303155859.GZ9606@toto> (raw)
In-Reply-To: <1488556233-31246-6-git-send-email-peter.maydell@linaro.org>
On Fri, Mar 03, 2017 at 03:50:32PM +0000, Peter Maydell wrote:
> In the cris disassembler we were using 'unsigned long' to calculate
> addresses which are supposed to be 32 bits. This meant that we might
> accidentally sign extend or calculate a value that was outside the 32
> bit range of the guest CPU. Use 'uint32_t' instead so we give the
> right answers on 64-bit hosts.
>
> (Spotted by Coverity, CID 1005402, 1005403.)
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> disas/cris.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/disas/cris.c b/disas/cris.c
> index 8a1daf9..30217f1 100644
> --- a/disas/cris.c
> +++ b/disas/cris.c
> @@ -2009,7 +2009,7 @@ print_with_operands (const struct cris_opcode *opcodep,
> case 'n':
> {
> /* Like N but pc-relative to the start of the insn. */
> - unsigned long number
> + uint32_t number
> = (buffer[2] + buffer[3] * 256 + buffer[4] * 65536
> + buffer[5] * 0x1000000 + addr);
>
> @@ -2201,7 +2201,7 @@ print_with_operands (const struct cris_opcode *opcodep,
> {
> /* It's [pc+]. This cannot possibly be anything
> but an address. */
> - unsigned long number
> + uint32_t number
> = prefix_buffer[2] + prefix_buffer[3] * 256
> + prefix_buffer[4] * 65536
> + prefix_buffer[5] * 0x1000000;
> --
> 2.7.4
>
next prev parent reply other threads:[~2017-03-03 15:59 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-03 15:50 [Qemu-devel] [PATCH for-2.9 0/6] disas: Fix various coverity nits Peter Maydell
2017-03-03 15:50 ` [Qemu-devel] [PATCH for-2.9 1/6] disas/hppa: Remove dead code Peter Maydell
2017-03-03 19:40 ` Philippe Mathieu-Daudé
2017-03-03 15:50 ` [Qemu-devel] [PATCH for-2.9 2/6] disas/i386: Avoid NULL pointer dereference in error case Peter Maydell
2017-03-03 15:50 ` [Qemu-devel] [PATCH for-2.9 3/6] disas/m68k: Avoid unintended sign extension in get_field() Peter Maydell
2017-03-03 18:56 ` Laurent Vivier
2017-03-03 15:50 ` [Qemu-devel] [PATCH for-2.9 4/6] disas/microblaze: Avoid unintended sign extension Peter Maydell
2017-03-03 15:58 ` Edgar E. Iglesias
2017-03-03 16:02 ` Peter Maydell
2017-03-03 16:06 ` Edgar E. Iglesias
2017-03-03 15:50 ` [Qemu-devel] [PATCH for-2.9 5/6] disas/cris: " Peter Maydell
2017-03-03 15:58 ` Edgar E. Iglesias [this message]
2017-03-03 19:43 ` Philippe Mathieu-Daudé
2017-03-03 15:50 ` [Qemu-devel] [PATCH for-2.9 6/6] disas/arm: " Peter Maydell
2017-03-03 16:11 ` [Qemu-devel] [PATCH for-2.9 0/6] disas: Fix various coverity nits no-reply
2017-03-04 0:00 ` no-reply
2017-03-04 12:44 ` Peter Maydell
2017-03-06 1:03 ` Fam Zheng
2017-03-07 17:06 ` Peter Maydell
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=20170303155859.GZ9606@toto \
--to=edgar.iglesias@gmail.com \
--cc=ehabkost@redhat.com \
--cc=laurent@vivier.eu \
--cc=patches@linaro.org \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/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.