amd64/135014: [padlock] Using padlock(4) in 8-current triggers
"fpudna in kernel mode!" warnings
Patrick Lamaiziere
patfbsd at davenulle.org
Tue Dec 15 11:10:03 PST 2009
The following reply was made to PR amd64/135014; it has been noted by GNATS.
From: Patrick Lamaiziere <patfbsd at davenulle.org>
To: bug-followup at freebsd.org
Cc: Bruce Evans <brde at optusnet.com.au>, freebsd-amd64 at FreeBSD.org
Subject: Re: amd64/135014: [padlock] Using padlock(4) in 8-current triggers
"fpudna in kernel mode!" warnings
Date: Tue, 15 Dec 2009 20:04:59 +0100
Le Wed, 16 Dec 2009 01:35:07 +1100 (EST),
Bruce Evans <brde at optusnet.com.au> a =E9crit :
> [This probably won't make it into the followup, since gnats still
> doesn't generate useful followup addresses and I didn't tyy to edit
> the headers.]
>=20
> > Synopsis: [padlock] Using padlock(4) in 8-current triggers "fpudna
> > in kernel mode!" warnings
>=20
> > By request of Michael Moll in followup, reclassify this as an amd64
> > bug. His theory is that the floating-point registers may not be
> > being handled correctly in the kernel.
>=20
> This seems to be a bug in padlock(4). Apparently the inline asm that
> it uses requires the FPU. But use of the FPU in the kernel is not
> supported. (except the obsolete i586 copy optimizations).
According to the Linux code, padlock does not use the FPU but can
generate a DNA fault:
http://fxr.watson.org/fxr/source/drivers/crypto/padlock-aes.c?v=3Dlinux-2.6=
#L182
=20
They use a irq_ts_save() / restore operation between padlock
intruction. I don't know if there are similar things into the FreeBSD
kernel:
http://fxr.watson.org/fxr/source/drivers/crypto/padlock-aes.c?v=3Dlinux-2.6=
#L296
See also this thread:
http://lkml.indiana.edu/hypermail/linux/kernel/0808.1/0306.html
HTH, regards.
More information about the freebsd-amd64
mailing list