mirror_zfs/module/icp/asm-x86_64/aes
Tom Caputi a73c94934f Change movaps to movups in AES-NI code
Currently, the ICP contains accelerated assembly code to be
used specifically on CPUs with AES-NI enabled. This code
makes heavy use of the movaps instruction which assumes that
it will be provided aes keys that are 16 byte aligned. This
assumption seems to hold on Illumos, but on Linux some kernel
options such as 'slub_debug=P' will violate it. This patch
changes all instances of this instruction to movups which is
the same except that it can handle unaligned memory.

This patch also adds a few flags which were accidentally never
given to the assembly compiler, resulting in objtool warnings.

Reviewed by: Gvozden Neskovic <neskovic@gmail.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Nathaniel R. Lewis <linux.robotdude@gmail.com>
Signed-off-by: Tom Caputi <tcaputi@datto.com>
Closes #7065 
Closes #7108
2018-01-31 15:17:56 -08:00
..
aes_amd64.S [icp] fpu and asm cleanup for linux 2017-03-07 12:59:31 -08:00
aes_intel.S Change movaps to movups in AES-NI code 2018-01-31 15:17:56 -08:00
aeskey.c codebase style improvements for OpenZFS 6459 port 2017-01-22 13:25:40 -08:00
aesopt.h Illumos Crypto Port module added to enable native encryption in zfs 2016-07-20 10:43:30 -07:00
aestab2.h Illumos Crypto Port module added to enable native encryption in zfs 2016-07-20 10:43:30 -07:00
aestab.h Illumos Crypto Port module added to enable native encryption in zfs 2016-07-20 10:43:30 -07:00
THIRDPARTYLICENSE.gladman Illumos Crypto Port module added to enable native encryption in zfs 2016-07-20 10:43:30 -07:00
THIRDPARTYLICENSE.gladman.descrip Illumos Crypto Port module added to enable native encryption in zfs 2016-07-20 10:43:30 -07:00
THIRDPARTYLICENSE.openssl Illumos Crypto Port module added to enable native encryption in zfs 2016-07-20 10:43:30 -07:00
THIRDPARTYLICENSE.openssl.descrip Illumos Crypto Port module added to enable native encryption in zfs 2016-07-20 10:43:30 -07:00