[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PULL 0/1] RISC-V: Critical fixes for QEMU 2.12
From: |
Michael Clark |
Subject: |
Re: [Qemu-devel] [PULL 0/1] RISC-V: Critical fixes for QEMU 2.12 |
Date: |
Mon, 2 Apr 2018 19:43:35 -0700 |
On Sun, Apr 1, 2018 at 11:49 AM, Richard W.M. Jones <address@hidden>
wrote:
> On Fri, Mar 30, 2018 at 10:08:23AM -0700, Michael Clark wrote:
> > Hi Peter,
> >
> > I had tested Richard's proper fix but we didn't have a PR or the required
> > Reviewed-by and Signed-off-by so I made the PR for the conservative fix,
>
> "Richard" is me or Richard Henderson? Anyway if you meant Stefan
> O'Rear's fix (https://github.com/rwmjones/fedora-riscv-bootstrap/blob/
> master/stage1-riscv-qemu/force-float-save.patch)
> then it is my understanding that this is also just a workaround.
Apologies for not being precise. Richard Henderson has a comprehensive fix
that correctly marks mstatus.FS dirty inside of FP arithmetic and FP loads.
This logic is missing in the current QEMU, hence the bug. i.e. QEMU
currently only has logic to throw exceptions if mstatus.FS state is set of
off, but FP arithmetic and FP loads do not cause state change to dirty.
I submitted the pull request for your's/Stefan's workaround so that QEMU
2.12 has working FP context switching under Linux (always returning dirty
or off is valid implementation choice according to the specification),
given Richard Henderson had not made a PR for his more comprehensive fix,
with the rationale that we could implement the comprehensive fix for QEMU
2.13.
At this point, I think neither of the fixes have gone in due to timing i.e.
the Easter Holidays, so vendors will need either your's/Stefan's workaround
or Richard Henderson's 2 patch series which he sent to the mailing list.
- https://lists.nongnu.org/archive/html/qemu-devel/2018-03/msg07034.html