FreeBSD-EN-22:01.xsave : Incorrect XSAVE state size
Versions Affected : All versions prior to TrueNAS 12.0-U8
Description
The hard-coded size for state region 1 (SSE/XMM) was incorrect, effectively filling the xmm8 through xmm15 registers with arbitrary values on signal return when the init optimization occurred.
On amd64 and i386 systems, application memory may become corrupted, leading to incorrect behaviour. Other platforms are not affected.
Workaround
Use of XSAVEOPT may be disabled by adding the following line to loader.conf:
hw.cpu_stdext_disable=0x1
Mitigation
- Upgrade to TrueNAS 12.0-U8 or later.
Commit
- FreeBSD Revision : r371483
- TrueNAS Commit : 9c4b852
- TrueNAS Commit : c25fe91
- JIRA Ticket : NAS-114278