Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Mar 2008 08:13:08 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-current@freebsd.org
Cc:        Richard Todd <rmtodd@ichotolot.servalan.com>
Subject:   Re: Weird performance behaviour in 7.0
Message-ID:  <200803130813.08976.jhb@freebsd.org>
In-Reply-To: <x7y7a8i4qc.fsf@ichotolot.servalan.com>
References:  <18328.45282.562906.708945@celery.zuhause.org> <18332.52845.956601.870334@celery.zuhause.org> <x7y7a8i4qc.fsf@ichotolot.servalan.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 29 January 2008 06:36:43 pm Richard Todd wrote:
> bruce@zuhause.mn.org writes:
> > I'm curious, though, should I be worried about the memcontrol list
> > entries that are listed as "set-by-firmware active bogus"?
> >
> > 0x0/0xf080000000 BIOS write-back set-by-firmware active bogus
> > 0x80000000/0xf040000000 BIOS write-back set-by-firmware active bogus
> > 0xc0000000/0xf010000000 BIOS write-back set-by-firmware active bogus
> > 0xcf800000/0xf000800000 BIOS uncacheable set-by-firmware active bogus
> > 0xcf700000/0xf000100000 BIOS uncacheable set-by-firmware active bogus
> > 0x100000000/0xf020000000 BIOS write-back set-by-firmware active bogus
> > 0x120000000/0xf008000000 BIOS write-back set-by-firmware active bogus
>
> Worried that it says "bogus"?  No, not really.  This is, as I said earlier,
> the result of an issue in the amd64 machdep.c code for handling MTRRs --
> it was written for the original amd64 where the "size" field of the MTRR
> was a certain width.  On Core 2 Duo these fields are 4 bits shorter, so
> the machdep.c code looks at 4 more bits from that register than it should
> and so all the size fields have that leading "f" digit.  This causes the
> sizes to no longer be a power of two, which causes machdep.c to set the
> "bogus" flag because those entries look funny.  The "bogus" flag being set
> doesn't seem to actually break anything, and as near as I can figure if you
> change the memcontrol entries the correct data gets written back to the
> registers even on Core2Duo, so the "bogus" warnings seem to be pretty
> harmless.

This should be fixed now in HEAD.

-- 
John Baldwin



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