FreeBSD/src 1715256 (r343298)sys/compat/ndis kern_windrv.c pe_var.h

[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 at gmail.com>
MFC after:      1 month
DeltaFile
+181-0sys/compat/ndis/kern_windrv.c
+14-6sys/compat/ndis/pe_var.h
+195-62 files

UnifiedSplitRaw