ARMv7 LPAE: IFSR doesn't have the LPAE bit in case of BKPT

Bug #1756927 reported by Vincent Siles
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

When a user application triggers a 'bkpt' instruction while LPAE is used, the bit [9] of IFSR is not correctly set during the prefetch abort exception.

You'll find attached a minimal example to reproduce the issue (just run 'make all').
The output I get is:

supervisor
user
prefetch
short-descriptor

The last entry should read 'long-descriptor'.

Qemu revision: 48ae1f60d8c9a770e6da64407984d84e25253c69
Ubuntu verison: 16.04 LTS
Cross Compiler: gcc linaro 6.3.1-2017.02-x86_64_arm-eabi

Tags: arm
Revision history for this message
Vincent Siles (vsiles) wrote :
Revision history for this message
Peter Maydell (pmaydell) wrote :

I've just sent this patchset:
http://<email address hidden>/
which should fix this bug and a couple of others that I noticed with our debug exception handling while I was doing that.

Changed in qemu:
status: New → In Progress
Peter Maydell (pmaydell)
tags: added: arm
Revision history for this message
Vincent Siles (vsiles) wrote :

thanks Peter ! Any news on the review ?

Revision history for this message
Peter Maydell (pmaydell) wrote :

The patches are in master now.

Changed in qemu:
status: In Progress → Fix Committed
Revision history for this message
Vincent Siles (vsiles) wrote :

Hi Peter,
we tested the fix and it work correctly now, thank you very much !

Thomas Huth (th-huth)
Changed in qemu:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.