[Barrelfish-users] Bug fix related to FPU context switch on LRPC path for x86_64

Andrei Poenaru poenarua at student.ethz.ch
Sat Jan 14 14:24:34 CET 2017


Dear all,

While working on context switching I found a bug regarding the FPU context
switching on the LRPC path: no FPU switching is performed on that path.

When 2 domains (using the FPU) communicate via LRPC the data stored in the
registers is not correctly preserved. I was able to derive a test starting
from 'lrpc_bench'.

In order to fix the issue, I implemented in assembly, on the LRPC path, the
same logic as in 'fpu_lazy_top' (function called during a context switch on
the normal kernel path).

The test and the proposed fix can be found in the attached patch.

Best regards,
Andrei
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20170114/e9d63eec/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix_lrpc_fpu.patch
Type: application/octet-stream
Size: 11531 bytes
Desc: not available
URL: <http://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20170114/e9d63eec/attachment.obj>


More information about the Barrelfish-users mailing list