Date: Thu, 09 May 2013 22:22:51 -0700 From: Dennis Glatting <freebsd@pki2.com> To: Jim Ohlstein <jim@ohlste.in> Cc: Konstantin Belousov <kostikbel@gmail.com>, freebsd-stable@freebsd.org Subject: Re: Apparent regression in r250359 Message-ID: <1368163371.96389.2.camel@btw.pki2.com> In-Reply-To: <518BDA28.20603@ohlste.in> References: <518A880C.3090906@ohlste.in> <20130509053055.GM3047@kib.kiev.ua> <518BAEFB.5090204@ohlste.in> <20130509143038.GV3047@kib.kiev.ua> <518BC3E4.1030104@ohlste.in> <20130509160433.GW3047@kib.kiev.ua> <518BDA28.20603@ohlste.in>
next in thread | previous in thread | raw e-mail | index | archive | help
This patch allows my AMD CURRENT to complete boot without core dumping.
I was also able to recompile/reinstall lang/gcc48 without trouble.
My 9.1 systems are busy but I may be able to give it a try tomorrow.
On Thu, 2013-05-09 at 13:17 -0400, Jim Ohlstein wrote:
> On 05/09/13 12:04, Konstantin Belousov wrote:
> > On Thu, May 09, 2013 at 11:42:28AM -0400, Jim Ohlstein wrote:
> >> On 05/09/13 10:30, Konstantin Belousov wrote:
> >>> On Thu, May 09, 2013 at 10:13:15AM -0400, Jim Ohlstein wrote:
> >>>> # sysctl hw.model
> >>>> hw.model: AMD FX(tm)-8350 Eight-Core Processor
> >>> Ahh, so it seems that this is a CPU with the LWP.
> >>> Please try the patch at the end of message.
> >>
> >> Same error
> >>
> >>>
> >>> As another workaround, which does not disable AVX support, you
> >>> could try loader tunable hw.xsave_mask=0x7.
> >>
> >> This works
> >
> > Hm, I see another bug in the next line as well. Could you try this
> > updated patch ?
>
> This does work.
>
> >
> > diff --git a/sys/amd64/amd64/fpu.c b/sys/amd64/amd64/fpu.c
> > index de79baa..9bc8a2f 100644
> > --- a/sys/amd64/amd64/fpu.c
> > +++ b/sys/amd64/amd64/fpu.c
> > @@ -687,8 +687,8 @@ fpugetregs(struct thread *td)
> > offsetof(struct xstate_hdr, xstate_bv));
> > max_ext_n = flsl(xsave_mask);
> > for (i = 0; i < max_ext_n; i++) {
> > - bit = 1 << i;
> > - if ((*xstate_bv & bit) != 0)
> > + bit = 1ULL << i;
> > + if ((xsave_mask & bit) == 0 || (*xstate_bv & bit) != 0)
> > continue;
> > bcopy((char *)fpu_initialstate +
> > xsave_area_desc[i].offset,
> >
>
>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1368163371.96389.2.camel>
