Discussion:
High 32 bits of SFMASK is reserved
Yuxuan Shui
2018-09-18 21:45:41 UTC
Permalink
Hi,

In cpu-64.cpp, in function Cpu::setup_sysenter, Fiasco try to set
IA32_FMASK (called MSR_SFMASK in the code) to ~0ULL. However, only the
lower 32bit of FMASK should be written to.

This cause problems on some platforms.
--
Regards
Yuxuan Shui
Adam Lackorzynski
2018-09-19 01:23:27 UTC
Permalink
Hi,
Post by Yuxuan Shui
In cpu-64.cpp, in function Cpu::setup_sysenter, Fiasco try to set
IA32_FMASK (called MSR_SFMASK in the code) to ~0ULL. However, only the
lower 32bit of FMASK should be written to.
This cause problems on some platforms.
Thanks a lot, will be fixed.


Adam
Matthias Lange
2018-09-20 18:05:12 UTC
Permalink
Hi,
Post by Yuxuan Shui
Hi,
In cpu-64.cpp, in function Cpu::setup_sysenter, Fiasco try to set
IA32_FMASK (called MSR_SFMASK in the code) to ~0ULL. However, only the
lower 32bit of FMASK should be written to.
This cause problems on some platforms.
The fix has landed in our public repository [1]. Thank you for reporting this
issue.

Regards,
Matthias.

[1] https://github.com/kernkonzept/fiasco/commit/cbb304483dec557749580e680c95b6293ef9b6e8
Post by Yuxuan Shui
--
Regards
Yuxuan Shui
Loading...