On Tue, 2014-10-28 at 23:25 +0100, Jakub Jermar wrote:
> Hi Jano,
> 
> On 10/28/2014 10:57 PM, Jan Vesely wrote:
> > sorry for taking so long to look into this, the time I can work on
> > HelenOS is really scarce.
> > 
> > the reason is that vmrs is ARMv7 only. as is probably the rest of the
> > arm FPU support on HelenOS. qemu probably just checks better (kudos to
> > them)
> > 
> > The solution is to disable FPU on armv6-, until somebody implements
> > properly, I enabled it on "it happens to work" basis.
> 
> This got fixed in the meantime - it was actually a bug in QEMU,
> something along the lines they completely forgot about ARMv5. But the
> latest released QEMU should have this fixed. ARMv5 does not have vmrs,
> but is has something else (I guess the normal FPU instructions) that,
> IIRC, share the same opcode, so it is expected to work.

ah, good :). thanks for pointing it out.
It still means that HelenOS FPU code works by accident (accidental
forward compatibility). ideally we'd have comments explaining why
armv6/7 code is OK on older devices with CONFIG_FPU. 


> 
> Here is the respective QEMU commit that fixed this again:
> 
> commit ed1f13d607e2c64c66bea49d6f4edaf278d3d246
> Author: Peter Maydell <[email protected]>
> Date:   Fri Aug 29 15:00:28 2014 +0100
> 
>     target-arm: Fix regression that disabled VFP for ARMv5 CPUs
> 
>     Commit 2c7ffc414 added support for honouring the CPACR coprocessor
>     access control register bits which may disable access to VFP
>     and Neon instructions. However it failed to account for the
>     fact that the CPACR is only present starting from the ARMv6
>     architecture version, so it accidentally disabled VFP completely
>     for ARMv5 CPUs like the ARM926. Linux would detect this as
>     "no VFP present" and probably fall back to its own emulation,
>     but other guest OSes might crash or misbehave.
> 
>     This fixes bug LP:1359930.
> 
> > I would commit the fix directly but icp crashes in bootloader on both
> > qemu-2.1.1, and git, so I can not verify.
> 
> Strange, my QEMU 2.1.1 runs just fine. Anyone else has the same problem?
> 
> Jakub
> 
> 
> _______________________________________________
> HelenOS-devel mailing list
> [email protected]
> http://lists.modry.cz/listinfo/helenos-devel


Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
HelenOS-devel mailing list
[email protected]
http://lists.modry.cz/listinfo/helenos-devel

Reply via email to