]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
[ndis] Fix unregistered use of FPU by NDIS in kernel on amd64
authorgonzo <gonzo@FreeBSD.org>
Tue, 22 Jan 2019 03:53:42 +0000 (03:53 +0000)
committergonzo <gonzo@FreeBSD.org>
Tue, 22 Jan 2019 03:53:42 +0000 (03:53 +0000)
commitf59c76260c1af80572faec13deb624cccb46a0af
tree36e13b45f6411b5a7dbf25a9e17066d4e06fe232
parentbb8bc10cc7d4ad308c656a8b172035b734ff3200
[ndis] Fix unregistered use of FPU by NDIS in kernel on amd64

amd64 miniport drivers are allowed to use FPU which triggers "Unregistered use
of FPU in kernel" panic.

Wrap all variants of MSCALL with fpu_kern_enter/fpu_kern_leave.  To reduce
amount of allocations/deallocations done via
fpu_kern_alloc_ctx/fpu_kern_free_ctx maintain cache of fpu_kern_ctx elements.

Based on the patch by Paul B Mahol

PR: 165622
Submitted by: Vlad Movchan <vladislav.movchan@gmail.com>
MFC after: 1 month
sys/compat/ndis/kern_windrv.c
sys/compat/ndis/pe_var.h