| From d0055f351e647f33f3b0329bff022213bf8aa085 Mon Sep 17 00:00:00 2001 |
| From: Vlastimil Babka <vbabka@suse.cz> |
| Date: Tue, 14 Aug 2018 23:38:57 +0200 |
| Subject: x86/smp: fix non-SMP broken build due to redefinition of apic_id_is_primary_thread |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Vlastimil Babka <vbabka@suse.cz> |
| |
| commit d0055f351e647f33f3b0329bff022213bf8aa085 upstream. |
| |
| The function has an inline "return false;" definition with CONFIG_SMP=n |
| but the "real" definition is also visible leading to "redefinition of |
| ‘apic_id_is_primary_thread’" compiler error. |
| |
| Guard it with #ifdef CONFIG_SMP |
| |
| Signed-off-by: Vlastimil Babka <vbabka@suse.cz> |
| Fixes: 6a4d2657e048 ("x86/smp: Provide topology_is_primary_thread()") |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/x86/kernel/apic/apic.c | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| --- a/arch/x86/kernel/apic/apic.c |
| +++ b/arch/x86/kernel/apic/apic.c |
| @@ -2043,6 +2043,7 @@ static int cpuid_to_apicid[] = { |
| [0 ... NR_CPUS - 1] = -1, |
| }; |
| |
| +#ifdef CONFIG_SMP |
| /** |
| * apic_id_is_primary_thread - Check whether APIC ID belongs to a primary thread |
| * @id: APIC ID to check |
| @@ -2057,6 +2058,7 @@ bool apic_id_is_primary_thread(unsigned |
| mask = (1U << (fls(smp_num_siblings) - 1)) - 1; |
| return !(apicid & mask); |
| } |
| +#endif |
| |
| /* |
| * Should use this API to allocate logical CPU IDs to keep nr_logical_cpuids |