tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/apic head: ea5dfef5a890c9e6e47bdddfc23c4a4ba0c1bea1 commit: 2066f4d67e7d9cbe44e451d782cdcc0a0d12e5d3 [1/2] x86/apic: Move pending intr check code into it's own function config: i386-randconfig-x004-201808 (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: git checkout 2066f4d67e7d9cbe44e451d782cdcc0a0d12e5d3 # save the attached .config to linux build tree make ARCH=i386
All errors (new ones prefixed by >>):
arch/x86/kernel/apic/apic.c: In function 'setup_local_APIC':
>> arch/x86/kernel/apic/apic.c:1507:2: error: 'i' undeclared (first use in this
>> function)
i = early_per_cpu(x86_cpu_to_logical_apicid, cpu);
^
arch/x86/kernel/apic/apic.c:1507:2: note: each undeclared identifier is
reported only once for each function it appears in
vim +/i +1507 arch/x86/kernel/apic/apic.c
2066f4d6 arch/x86/kernel/apic/apic.c Dou Liyang 2018-02-26 1460
0e078e2f arch/x86/kernel/apic_64.c Thomas Gleixner 2008-01-30 1461 /**
0e078e2f arch/x86/kernel/apic_64.c Thomas Gleixner 2008-01-30 1462 *
setup_local_APIC - setup the local APIC
0aa002fe arch/x86/kernel/apic/apic.c Tejun Heo 2010-12-09 1463 *
543113d2 arch/x86/kernel/apic/apic.c Dou Liyang 2017-02-07 1464 *
Used to setup local APIC while initializing BSP or bringing up APs.
0aa002fe arch/x86/kernel/apic/apic.c Tejun Heo 2010-12-09 1465 *
Always called with preemption disabled.
0e078e2f arch/x86/kernel/apic_64.c Thomas Gleixner 2008-01-30 1466 */
b753a2b7 arch/x86/kernel/apic/apic.c Dou Liyang 2018-02-14 1467
static void setup_local_APIC(void)
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1468 {
0aa002fe arch/x86/kernel/apic/apic.c Tejun Heo 2010-12-09 1469
int cpu = smp_processor_id();
2066f4d6 arch/x86/kernel/apic/apic.c Dou Liyang 2018-02-26 1470
unsigned int value;
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1471
f1182638 arch/x86/kernel/apic.c Jan Beulich 2009-01-14 1472
if (disable_apic) {
7167d08e arch/x86/kernel/apic/apic.c Henrik Kretzschmar 2011-02-22 1473
disable_ioapic_support();
f1182638 arch/x86/kernel/apic.c Jan Beulich 2009-01-14 1474
return;
f1182638 arch/x86/kernel/apic.c Jan Beulich 2009-01-14 1475
}
f1182638 arch/x86/kernel/apic.c Jan Beulich 2009-01-14 1476
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1477
#ifdef CONFIG_X86_32
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1478
/* Pound the ESR really hard over the head with a big hammer - mbligh */
08125d3e arch/x86/kernel/apic.c Ingo Molnar 2009-01-28 1479
if (lapic_is_integrated() && apic->disable_esr) {
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1480
apic_write(APIC_ESR, 0);
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1481
apic_write(APIC_ESR, 0);
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1482
apic_write(APIC_ESR, 0);
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1483
apic_write(APIC_ESR, 0);
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1484
}
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1485 #endif
cdd6c482 arch/x86/kernel/apic/apic.c Ingo Molnar 2009-09-21 1486
perf_events_lapic_init();
89c38c28 arch/x86/kernel/apic_64.c Cyrill Gorcunov 2008-08-24 1487
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1488
/*
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1489
* Double-check whether this APIC is really registered.
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1490
* This is meaningless in clustered apic mode, so we skip it.
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1491
*/
c2777f98 arch/x86/kernel/apic/apic.c Daniel Walker 2009-09-12 1492
BUG_ON(!apic->apic_id_registered());
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1493
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1494
/*
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1495
* Intel recommends to set DFR, LDR and TPR before enabling
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1496
* an APIC. See e.g. "AP-388 82489DX User's Manual" (Intel
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1497
* document number 292116). So here it goes...
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1498
*/
a5c43296 arch/x86/kernel/apic.c Ingo Molnar 2009-01-28 1499
apic->init_apic_ldr();
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1500
6f802c4b arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1501
#ifdef CONFIG_X86_32
6f802c4b arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1502
/*
acb8bc09 arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1503
* APIC LDR is initialized. If logical_apicid mapping was
acb8bc09 arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1504
* initialized during get_smp_config(), make sure it matches the
acb8bc09 arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1505
* actual value.
6f802c4b arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1506
*/
acb8bc09 arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 @1507
i = early_per_cpu(x86_cpu_to_logical_apicid, cpu);
acb8bc09 arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1508
WARN_ON(i != BAD_APICID && i != logical_smp_processor_id());
acb8bc09 arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1509
/* always use the value from LDR */
6f802c4b arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1510
early_per_cpu(x86_cpu_to_logical_apicid, cpu) =
6f802c4b arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1511
logical_smp_processor_id();
6f802c4b arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1512 #endif
6f802c4b arch/x86/kernel/apic/apic.c Tejun Heo 2011-01-23 1513
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1514
/*
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1515
* Set Task Priority to 'accept all'. We never change this
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1516
* later on.
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1517
*/
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1518
value = apic_read(APIC_TASKPRI);
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1519
value &= ~APIC_TPRI_MASK;
11a8e778 arch/x86_64/kernel/apic.c Andi Kleen 2006-01-11 1520
apic_write(APIC_TASKPRI, value);
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1521
2066f4d6 arch/x86/kernel/apic/apic.c Dou Liyang 2018-02-26 1522
apic_pending_intr_clear();
da7ed9f9 arch/x86_64/kernel/apic.c Vivek Goyal 2006-03-25 1523
da7ed9f9 arch/x86_64/kernel/apic.c Vivek Goyal 2006-03-25 1524
/*
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1525
* Now that we are all set up, enable the APIC
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1526
*/
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1527
value = apic_read(APIC_SPIV);
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1528
value &= ~APIC_VECTOR_MASK;
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1529
/*
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1530
* Enable APIC
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1531
*/
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1532
value |= APIC_SPIV_APIC_ENABLED;
^1da177e arch/x86_64/kernel/apic.c Linus Torvalds 2005-04-16 1533
:::::: The code at line 1507 was first introduced by commit
:::::: acb8bc09c6185e4d3d582d0076aaa6a89f19d8c5 x86: Add
apic->x86_32_early_logical_apicid()
:::::: TO: Tejun Heo <[email protected]>
:::::: CC: Ingo Molnar <[email protected]>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip

