[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080823194541.GC22089@lenovo>
Date: Sat, 23 Aug 2008 23:45:41 +0400
From: Cyrill Gorcunov <gorcunov@...il.com>
To: Yinghai Lu <yhlu.kernel@...il.com>
Cc: mingo@...e.hu, macro@...ux-mips.org, hpa@...or.com,
tglx@...utronix.de, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 5/8] x86: apic - unify hard_smp_processor_id
[Yinghai Lu - Sat, Aug 23, 2008 at 12:13:21PM -0700]
| On Sat, Aug 23, 2008 at 6:01 AM, Cyrill Gorcunov <gorcunov@...il.com> wrote:
| > Move hard_smp_processor_id to apic_32.c.
| > There is no need to keep it in header - we are linked to
| > apic_xx.c code anyway.
| >
| > Signed-off-by: Cyrill Gorcunov <gorcunov@...il.com>
| > ---
| > arch/x86/kernel/apic_32.c | 5 +++++
| > include/asm-x86/smp.h | 10 ----------
| > 2 files changed, 5 insertions(+), 10 deletions(-)
| >
| > diff --git a/arch/x86/kernel/apic_32.c b/arch/x86/kernel/apic_32.c
| > index ad295cf..c71a77c 100644
| > --- a/arch/x86/kernel/apic_32.c
| > +++ b/arch/x86/kernel/apic_32.c
| > @@ -1569,6 +1569,11 @@ void __cpuinit generic_processor_info(int apicid, int version)
| > cpu_set(cpu, cpu_present_map);
| > }
| >
| > +int hard_smp_processor_id(void)
| > +{
| > + return read_apic_id();
| > +}
| > +
| > /*
| > * Power management
| > */
| > diff --git a/include/asm-x86/smp.h b/include/asm-x86/smp.h
| > index 29324c1..914a73d 100644
| > --- a/include/asm-x86/smp.h
| > +++ b/include/asm-x86/smp.h
| > @@ -185,17 +185,7 @@ static inline unsigned int read_apic_id(void)
| > }
| > #endif
| >
| > -
| > -# if defined(APIC_DEFINITION) || defined(CONFIG_X86_64)
| > extern int hard_smp_processor_id(void);
| > -# else
| > -#include <mach_apicdef.h>
| > -static inline int hard_smp_processor_id(void)
| > -{
| > - /* we don't want to mark this access volatile - bad code generation */
| > - return read_apic_id();
| > -}
| > -# endif /* APIC_DEFINITION */
| >
| > #else /* CONFIG_X86_LOCAL_APIC */
| >
| > --
| > 1.6.0.6.gc667
| >
| >
|
| this one seems have some problem with 32bit with genericarch
|
| because we have
|
| int hard_smp_processor_id(void)
| {
| return genapic->get_apic_id(*(unsigned long *)(APIC_BASE+APIC_ID));
| }
|
| arch/x86/mach-generic/probe.c
|
| updated 64 bit to have MACRO.
|
| YH
|
thanks Yinghai, but isn't it called _after_ x86 apic chip
initialized?
- Cyrill -
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists