AESNI driver and fpu_kern KPI

From: Kostik Belousov <kostikbel_at_gmail.com>
Date: Sat, 15 May 2010 13:04:01 +0300
Hello,

please find at http://people.freebsd.org/~kib/misc/aesni.1.patch the
combined patch, containing the fpu_kern KPI and Intel AESNI crypto(9)
driver.  I did development and some testing on the hardware generously
provided by Sentex Communications to Netperf cluster.

I already posted the kern_fpu part. This is a KPI for x86 arches to
denote the region of the kernel code as using the FPU/SSE hardware. I
wanted to use the KPI for some in-kernel SSE code to have a proof that
interface is useful and up to the task. The crypto(9) driver using
AESNI instructions appeared to be a perfect match.

Also, the patch should fix the "fpu dna in kernel mode" messages
usually appearing when using VIA padlock engine. Padlock does not use
FPU resources, but occasionally issues NPX exception if FPU is marked
as unavailable due to context switch.

I am interested in the problem reports and reviews. Maintainers of
!x86-oids are welcome to provide feedback whether they feel that
proposed KPI could be implemented on their architectures, or what
modifications they consider as needed to be able to implement
it.

Unless major objections are raised or bugs are found, I plan to commit
the fpu_kern KPI shortly.

On the other hand, some code in the AESNI driver was derived from the
Intel whitepaper, that does not specified a license for the code
explicitely. I asked the author of the paper for clarification, he
seems to be supportive. In the worst case, aeskeys_{i386,amd64}.S
files would be rewritten from scratch. Until the issue is resolved,
AESNI part cannot be committed.


Received on Sat May 15 2010 - 08:04:09 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:03 UTC