Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Dec 2009 20:04:59 +0100
From:      Patrick Lamaiziere <patfbsd@davenulle.org>
To:        bug-followup@freebsd.org
Cc:        freebsd-amd64@FreeBSD.org
Subject:   Re: amd64/135014: [padlock] Using padlock(4) in 8-current triggers "fpudna in kernel mode!" warnings
Message-ID:  <20091215200459.3dbe84eb@baby-jane.lamaiziere.net>
In-Reply-To: <20091216005926.T34815@delplex.bde.org>
References:  <200912150035.nBF0ZsLi088804@freefall.freebsd.org> <20091216005926.T34815@delplex.bde.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Le Wed, 16 Dec 2009 01:35:07 +1100 (EST),
Bruce Evans <brde@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.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20091215200459.3dbe84eb>