kern/98460 : [kernel] [patch] fpu_clean_state() cannot be disabled for not AMD processors, those are not vulnerable to FreeBSD-SA-06:14.fpu

Rostislav Krasny rosti.bsd at gmail.com
Sun Jun 4 08:40:45 PDT 2006


The following reply was made to PR kern/98460; it has been noted by GNATS.

From: Rostislav Krasny <rosti.bsd at gmail.com>
To: Bruce Evans <bde at zeta.org.au>
Cc: bug-followup at FreeBSD.org
Subject: Re: kern/98460 : [kernel] [patch] fpu_clean_state() cannot be
 disabled for not AMD processors, those are not vulnerable to
 FreeBSD-SA-06:14.fpu
Date: Sun, 4 Jun 2006 18:36:23 +0300

 On Sun, 4 Jun 2006, Bruce Evans wrote: 
 > >> Description:
 > > When FreeBSD is running on any non AMD processor an fpu_clean_state() function
 > > adds unneeded operations to a context switch. My patch makes it possible
 > > to disable the fpu_clean_state() by rebuilding a kernel with
 > > "options CPU_FXSAVE_NO_LEAK".
 > >
 > > Colin Percival has nothing against my idea in general:
 > 
 > Hrmph.  My review implied that this should be done (not be me :-) before
 > committing anything.
 > 
 > The configuration should be dynamic and automatic, so that it doesn't
 > take changes to zillions of configuration files to implement and
 > document an option that almost no one will know to set.  I think there
 > is a simple feature test for the AMD misfeature.
 
 David Xu had proposed something like that. But from Colin Percival's
 reply I understood that it is hard to be done effectively. See their
 discussion by the first URL in this PR.
 
 > On i386's, this
 > should be combined with the cpu_fxsr test so that only a single test
 > is needed at runtime.  On amd64's, the test would be 1 unnecessary
 > compare-and-branch.  I think it is not useful to have a configuration
 > option to avoid this compare-and-branch.
 
 Future amd64 processors may be changed back, to the classical behavior
 of FXSAVE and FXRSTOR instructions.


More information about the freebsd-bugs mailing list