[BUG] dm-crypt broken after 2632e2521769 ("arm64: fpsimd: Implement lazy restore for kernel mode FPSIMD")

Johannes Nixdorf mixi at shadowice.org
Mon May 20 23:22:08 PDT 2024


Bad news: I hit the bug again with 2632e2521769 ("arm64: fpsimd: Implement
lazy restore for kernel mode FPSIMD") reverted during prolonged interactive
usage with the downstream Asahi Linux kernel.

This prompted me to adjust the reproducer to be closer to the desktop use
case, which then also found aefbab8e77eb ("arm64: fpsimd: Preserve/restore
kernel mode NEON at context switch"). With the vanilla kernel before the
commit or that commit reverted on the Asahi Linux kernel the new reproducer
also sees no bug, and interactive usage seems fine.

The old reproducer used a loop device backed by the initramfs' tmpfs. The
new reproducer now uses the actual hardware nvme device as backend:

init:
 dev=/dev/nvme0n1p7
 dm_name=test
 dm_dev=/dev/mapper/${dm_name}
 echo test | cryptsetup luksFormat -q ${dev}
 echo test | cryptsetup open ${dev} test
 mkfs.ext4 ${dm_dev}
 mount ${dm_dev} /target
 cd /target
 fio /verify.fio

verify.fio:
 [write-and-verify]
 loops=10
 rw=randwrite
 bs=4k
 direct=1
 ioengine=libaio
 iodepth=16
 verify=crc32c
 size=1G

CC: +jannau, as I previously told him aefbab8e77eb was safe after reverting it
for the wrong reasons, and then finding out is was not needed after retesting
with my old reproducer.

Kind Regards,
Johannes Nixdorf



More information about the linux-arm-kernel mailing list