lkml.org 
[lkml]   [2009]   [Jul]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC -tip] x86,apic -- reduce disable_apic usage
[Maciej W. Rozycki - Wed, Jul 08, 2009 at 12:49:11AM +0100]
| On Sun, 5 Jul 2009, H. Peter Anvin wrote:
|
| > > How do you set cpu_has_apic for systems with discrete local APICs? The
| > > CPUID flag is not set in this case.
| > >
| >
| > Well, should it be? We do set flags when they're appropriate to us, and
| > if the semantics are such as that is inappropriate we can set a custom bit.
|
| Hmm, that might simplify things here and there and the less special cases
| in code -- and thus effort needed -- for the discrete APIC, the better.
| I think there is no reason why it couldn't be done -- all the places which
| need version-specific APIC features have to check the LVR register anyway.
| And the availability of the APICBASE MSR has to be validated separately
| too as it comes with P6+ only.
|
| The only place which could care I believe is code to set X86_FEATURE_11AP
| -- this should obviously be disabled for the discrete APIC as it is now,
| as the chip does not suffer from the erratum and the workaround is costly
| performance-wise. That piece of code would have to be checked -- I don't
| know what the order of setting of these bits would be and thus if one
| could affect the other. The dependency would better be well documented
| then too -- my observation is the knowledge about the APIC subsystem among
| people typically only covers a narrow subset of implementations.
|
| Maciej
|

Thanks a lot for hints, Maciej! I've had an idea to set this bit
in verify_local_APIC (or something like that) since at this point
if discrete APIC happens -- we already complained in case of APIC
related BIOS problems. So that check-point should be safe. Anyway,
will recheck and put a big comment into patch.

-- Cyrill


\
 
 \ /
  Last update: 2009-07-08 16:47    [W:0.045 / U:0.348 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site