Update comment about ABI of flush_l1s_sw to match the reality.

CPUID instruction clobbers %rbx and %rdx.

Sponsored by:	The FreeBSD Foundation
MFC after:	13 days
This commit is contained in:
Konstantin Belousov 2018-08-20 19:09:39 +00:00
parent b0568ddbec
commit a997bcc015
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=338113

View File

@ -1230,9 +1230,9 @@ END(handle_ibrs_exit_rs)
* Flush L1D cache. Load enough of the data from the kernel text
* to flush existing L1D content.
*
* N.B. The function follows ABI calling conventions, but the vmm.ko
* caller expects that only %rax, %rcx, %r9, and %rflags registers
* are clobbered.
* N.B. The function does not follow ABI calling conventions, it corrupts %rbx.
* The vmm.ko caller expects that only %rax, %rdx, %rbx, %rcx, %r9, and %rflags
* registers are clobbered. The NMI handler caller only needs %r13 preserved.
*/
ENTRY(flush_l1d_sw)
#define L1D_FLUSH_SIZE (64 * 1024)