Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 277436
b: refs/heads/master
c: b49d7d8
h: refs/heads/master
v: v3
  • Loading branch information
Fernando Luis Vazquez Cao authored and Ingo Molnar committed Dec 18, 2011
1 parent 1f2aca2 commit e9382df
Show file tree
Hide file tree
Showing 5 changed files with 5 additions and 11 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 346b46be5f10e4d247160ea94ac34450be60ce1e
refs/heads/master: b49d7d877ff96428c8cd2076b33ba72bf85ceaba
2 changes: 0 additions & 2 deletions trunk/arch/x86/include/asm/apic.h
Original file line number Diff line number Diff line change
Expand Up @@ -411,8 +411,6 @@ extern int wakeup_secondary_cpu_via_nmi(int apicid, unsigned long start_eip);

#ifdef CONFIG_X86_LOCAL_APIC

DECLARE_PER_CPU(unsigned, icr_read_retry_count);

static inline u32 apic_read(u32 reg)
{
return apic->read(reg);
Expand Down
1 change: 1 addition & 0 deletions trunk/arch/x86/include/asm/hardirq.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ typedef struct {
#ifdef CONFIG_X86_LOCAL_APIC
unsigned int apic_timer_irqs; /* arch dependent */
unsigned int irq_spurious_count;
unsigned int icr_read_retry_count;
#endif
unsigned int x86_platform_ipis; /* arch dependent */
unsigned int apic_perf_irqs;
Expand Down
7 changes: 1 addition & 6 deletions trunk/arch/x86/kernel/apic/apic.c
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,6 @@ DEFINE_EARLY_PER_CPU(u16, x86_bios_cpu_apicid, BAD_APICID);
EXPORT_EARLY_PER_CPU_SYMBOL(x86_cpu_to_apicid);
EXPORT_EARLY_PER_CPU_SYMBOL(x86_bios_cpu_apicid);

/*
* ICR read retry counter
*/
DEFINE_PER_CPU(unsigned, icr_read_retry_count);

#ifdef CONFIG_X86_32

/*
Expand Down Expand Up @@ -255,7 +250,7 @@ u32 native_safe_apic_wait_icr_idle(void)
send_status = apic_read(APIC_ICR) & APIC_ICR_BUSY;
if (!send_status)
break;
percpu_inc(icr_read_retry_count);
inc_irq_stat(icr_read_retry_count);
udelay(100);
} while (timeout++ < 1000);

Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/x86/kernel/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ int arch_show_interrupts(struct seq_file *p, int prec)
seq_printf(p, " IRQ work interrupts\n");
seq_printf(p, "%*s: ", prec, "RTR");
for_each_online_cpu(j)
seq_printf(p, "%10u ", per_cpu(icr_read_retry_count, j));
seq_printf(p, "%10u ", irq_stats(j)->icr_read_retry_count);
seq_printf(p, " APIC ICR read retries\n");
#endif
if (x86_platform_ipi_callback) {
Expand Down Expand Up @@ -140,7 +140,7 @@ u64 arch_irq_stat_cpu(unsigned int cpu)
sum += irq_stats(cpu)->irq_spurious_count;
sum += irq_stats(cpu)->apic_perf_irqs;
sum += irq_stats(cpu)->apic_irq_work_irqs;
sum += per_cpu(icr_read_retry_count, cpu);
sum += irq_stats(cpu)->icr_read_retry_count;
#endif
if (x86_platform_ipi_callback)
sum += irq_stats(cpu)->x86_platform_ipis;
Expand Down

0 comments on commit e9382df

Please sign in to comment.