All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-arm <qemu-arm@nongnu.org>,
	QEMU Developers <qemu-devel@nongnu.org>,
	"patches\@linaro.org" <patches@linaro.org>
Subject: Re: [Qemu-arm] [PATCH v2 00/13] Rewrite NVIC to not depend on the GIC
Date: Fri, 24 Feb 2017 14:40:16 +0000	[thread overview]
Message-ID: <87shn3lkj3.fsf@linaro.org> (raw)
In-Reply-To: <CAFEAcA-OhSMFKgRYsCWUrb6OBxxrWokkkpJyioveEur-p4-g2A@mail.gmail.com>


Peter Maydell <peter.maydell@linaro.org> writes:

> On 24 February 2017 at 13:55, Alex Bennée <alex.bennee@linaro.org> wrote:
>> Even this branch is failing the tests for me:
>
>> =============== Testing test9-kern.bin ===============
>
>> not ok 9 - 00000000 == 00000800 icsr
>
>> =============== Testing test10-kern.bin ===============
>> not ok 1 - 00000000 == 00000800 ICSR
>
>> not ok 9 - 00000000 == 00000800 ICSR
>
>> =============== Testing test4-kern.bin ===============
>> not ok 5 - 00000000 == 00000800 ICSR
>
>> not ok 9 - 00410000 == 00410800 ICSR
>
> Ah, I missed the test failures, but these are all test bugs.

I thought it was likely to be that ;-)

> All of these failures are for reads of ICSR when we're not
> in an exception handler and the mismatch is because the
> expected value of RETTOBASE differs. The bit is architecturally
> UNKNOWN, and we did a late swap from making it be clear to
> making it be set, because that seemed to be more in line
> with the Cortex-M3 documented behaviour.
>
> I didn't notice that the tests needed to be updated to
> mask out the UNKNOWN bit before comparison.

The tests currently fail to build:

/usr/bin/arm-none-eabi-objcopy -S -O binary test6-kern.elf test6-kern.bin
test7.c: In function 'usage':
test7.c:58:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("Ignoring bogus LR %x, doing return to handler", old_lr);
         ^
test7.c:76:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("Ignoring bogus LR %x, doing return to thread", old_lr);
         ^
test7.c: In function 'svc':
test7.c:105:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("New xPSR %x", sframe[7]);
         ^
test7.c:109:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("old xPSR %x", sframe[7]);
         ^
test7.c:116:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("In SVC handler (direct call from main with LR %x)", old_lr);
         ^
/usr/bin/arm-none-eabi-objcopy -S -O binary test8-kern.elf test8-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test9-kern.elf test9-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test10-kern.elf test10-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test11-kern.elf test11-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test13-kern.elf test13-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test14-kern.elf test14-kern.bin
cc1: all warnings being treated as errors
Makefile:49: recipe for target 'test7.o' failed
make: *** [test7.o] Error 1
make: Target 'all' not remade because of errors.

I suspect its the same thing as I came across with kvm-unit-tests that
compilers targeting the same abi can still disagree about sizes:

  https://git.kernel.org/cgit/virt/kvm/kvm-unit-tests.git/commit/?id=529046c397059b8c5ef4dc5fb3c258d86fafb126

>
> thanks
> -- PMM


--
Alex Bennée

WARNING: multiple messages have this Message-ID (diff)
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-arm <qemu-arm@nongnu.org>,
	QEMU Developers <qemu-devel@nongnu.org>,
	"patches@linaro.org" <patches@linaro.org>
Subject: Re: [Qemu-devel] [Qemu-arm] [PATCH v2 00/13] Rewrite NVIC to not depend on the GIC
Date: Fri, 24 Feb 2017 14:40:16 +0000	[thread overview]
Message-ID: <87shn3lkj3.fsf@linaro.org> (raw)
In-Reply-To: <CAFEAcA-OhSMFKgRYsCWUrb6OBxxrWokkkpJyioveEur-p4-g2A@mail.gmail.com>


Peter Maydell <peter.maydell@linaro.org> writes:

> On 24 February 2017 at 13:55, Alex Bennée <alex.bennee@linaro.org> wrote:
>> Even this branch is failing the tests for me:
>
>> =============== Testing test9-kern.bin ===============
>
>> not ok 9 - 00000000 == 00000800 icsr
>
>> =============== Testing test10-kern.bin ===============
>> not ok 1 - 00000000 == 00000800 ICSR
>
>> not ok 9 - 00000000 == 00000800 ICSR
>
>> =============== Testing test4-kern.bin ===============
>> not ok 5 - 00000000 == 00000800 ICSR
>
>> not ok 9 - 00410000 == 00410800 ICSR
>
> Ah, I missed the test failures, but these are all test bugs.

I thought it was likely to be that ;-)

> All of these failures are for reads of ICSR when we're not
> in an exception handler and the mismatch is because the
> expected value of RETTOBASE differs. The bit is architecturally
> UNKNOWN, and we did a late swap from making it be clear to
> making it be set, because that seemed to be more in line
> with the Cortex-M3 documented behaviour.
>
> I didn't notice that the tests needed to be updated to
> mask out the UNKNOWN bit before comparison.

The tests currently fail to build:

/usr/bin/arm-none-eabi-objcopy -S -O binary test6-kern.elf test6-kern.bin
test7.c: In function 'usage':
test7.c:58:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("Ignoring bogus LR %x, doing return to handler", old_lr);
         ^
test7.c:76:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("Ignoring bogus LR %x, doing return to thread", old_lr);
         ^
test7.c: In function 'svc':
test7.c:105:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("New xPSR %x", sframe[7]);
         ^
test7.c:109:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("old xPSR %x", sframe[7]);
         ^
test7.c:116:9: error: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format=]
         testDiag("In SVC handler (direct call from main with LR %x)", old_lr);
         ^
/usr/bin/arm-none-eabi-objcopy -S -O binary test8-kern.elf test8-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test9-kern.elf test9-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test10-kern.elf test10-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test11-kern.elf test11-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test13-kern.elf test13-kern.bin
/usr/bin/arm-none-eabi-objcopy -S -O binary test14-kern.elf test14-kern.bin
cc1: all warnings being treated as errors
Makefile:49: recipe for target 'test7.o' failed
make: *** [test7.o] Error 1
make: Target 'all' not remade because of errors.

I suspect its the same thing as I came across with kvm-unit-tests that
compilers targeting the same abi can still disagree about sizes:

  https://git.kernel.org/cgit/virt/kvm/kvm-unit-tests.git/commit/?id=529046c397059b8c5ef4dc5fb3c258d86fafb126

>
> thanks
> -- PMM


--
Alex Bennée

  parent reply	other threads:[~2017-02-24 14:40 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-16 16:35 [PATCH v2 00/13] Rewrite NVIC to not depend on the GIC Peter Maydell
2017-02-16 16:35 ` [Qemu-devel] " Peter Maydell
2017-02-16 16:35 ` [PATCH v2 01/13] armv7m: Rename nvic_state to NVICState Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-02-16 16:35 ` [PATCH v2 02/13] armv7m: Implement reading and writing of PRIGROUP Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-02-16 16:35 ` [PATCH v2 03/13] armv7m: Rewrite NVIC to not use any GIC code Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-02-16 18:27   ` Peter Maydell
2017-02-24 17:25     ` Alex Bennée
2017-02-24 17:25       ` Alex Bennée
2017-02-16 16:35 ` [PATCH v2 04/13] armv7m: Fix condition check for taking exceptions Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-04-17  2:37   ` [Qemu-arm] " Philippe Mathieu-Daudé
2017-04-17  2:37     ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-02-16 16:35 ` [PATCH v2 05/13] arm: gic: Remove references to NVIC Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-04-17  4:10   ` [Qemu-devel] [Qemu-arm] " Philippe Mathieu-Daudé
2017-02-16 16:35 ` [PATCH v2 06/13] armv7m: Escalate exceptions to HardFault if necessary Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-02-16 16:35 ` [PATCH v2 07/13] armv7m: Remove unused armv7m_nvic_acknowledge_irq() return value Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-04-17  3:42   ` [Qemu-arm] " Philippe Mathieu-Daudé
2017-04-17  3:42     ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-02-16 16:35 ` [PATCH v2 08/13] armv7m: Simpler and faster exception start Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-04-17  3:44   ` [Qemu-arm] " Philippe Mathieu-Daudé
2017-04-17  3:44     ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-02-16 16:35 ` [PATCH v2 09/13] armv7m: VECTCLRACTIVE and VECTRESET are UNPREDICTABLE Peter Maydell
2017-02-16 16:35   ` [Qemu-devel] " Peter Maydell
2017-02-16 16:36 ` [PATCH v2 10/13] armv7m: Extract "exception taken" code into functions Peter Maydell
2017-02-16 16:36   ` [Qemu-devel] " Peter Maydell
2017-02-24 17:13   ` Alex Bennée
2017-02-24 17:13     ` [Qemu-devel] " Alex Bennée
2017-04-17  3:49   ` [Qemu-arm] " Philippe Mathieu-Daudé
2017-04-17  3:49     ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-02-16 16:36 ` [PATCH v2 11/13] armv7m: Check exception return consistency Peter Maydell
2017-02-16 16:36   ` [Qemu-devel] " Peter Maydell
2017-02-24 17:14   ` Alex Bennée
2017-02-24 17:14     ` [Qemu-devel] " Alex Bennée
2017-02-16 16:36 ` [PATCH v2 12/13] armv7m: Raise correct kind of UsageFault for attempts to execute ARM code Peter Maydell
2017-02-16 16:36   ` [Qemu-devel] " Peter Maydell
2017-02-24 17:16   ` Alex Bennée
2017-02-24 17:16     ` [Qemu-devel] " Alex Bennée
2017-02-16 16:36 ` [PATCH v2 13/13] armv7m: Allow SHCSR writes to change pending and active bits Peter Maydell
2017-02-16 16:36   ` [Qemu-devel] " Peter Maydell
2017-02-24 17:17   ` Alex Bennée
2017-02-24 17:17     ` [Qemu-devel] " Alex Bennée
2017-02-16 19:33 ` [Qemu-arm] [PATCH v2 00/13] Rewrite NVIC to not depend on the GIC Peter Maydell
2017-02-16 19:33   ` [Qemu-devel] " Peter Maydell
2017-02-24 13:55   ` Alex Bennée
2017-02-24 13:55     ` [Qemu-devel] " Alex Bennée
2017-02-24 14:07     ` Peter Maydell
2017-02-24 14:07       ` [Qemu-devel] " Peter Maydell
2017-02-24 14:15       ` Peter Maydell
2017-02-24 14:15         ` [Qemu-devel] " Peter Maydell
2017-02-24 14:40       ` Alex Bennée [this message]
2017-02-24 14:40         ` Alex Bennée
2017-02-24 14:57         ` Peter Maydell
2017-02-24 14:57           ` [Qemu-devel] " Peter Maydell
2017-02-24 16:43           ` Alex Bennée
2017-02-24 16:43             ` [Qemu-devel] " Alex Bennée
2017-02-24 17:00             ` Peter Maydell
2017-02-24 17:00               ` [Qemu-devel] " Peter Maydell
2017-02-24 17:17               ` Alex Bennée
2017-02-24 17:17                 ` [Qemu-devel] " Alex Bennée

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=87shn3lkj3.fsf@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=patches@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /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.