Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
35d266a2
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
35d266a2
编写于
1月 23, 2009
作者:
I
Ingo Molnar
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'tj-percpu' of
git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc
into core/percpu
上级
03b48632
2de3a5f7
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
48 addition
and
77 deletion
+48
-77
arch/x86/include/asm/hardirq.h
arch/x86/include/asm/hardirq.h
+45
-4
arch/x86/include/asm/hardirq_32.h
arch/x86/include/asm/hardirq_32.h
+0
-33
arch/x86/include/asm/hardirq_64.h
arch/x86/include/asm/hardirq_64.h
+0
-39
arch/x86/kernel/cpu/mcheck/mce_intel_64.c
arch/x86/kernel/cpu/mcheck/mce_intel_64.c
+1
-0
arch/x86/kernel/efi_64.c
arch/x86/kernel/efi_64.c
+1
-0
arch/x86/kernel/irq_64.c
arch/x86/kernel/irq_64.c
+1
-0
arch/x86/kernel/process_32.c
arch/x86/kernel/process_32.c
+0
-1
未找到文件。
arch/x86/include/asm/hardirq.h
浏览文件 @
35d266a2
#ifdef CONFIG_X86_32
# include "hardirq_32.h"
#else
# include "hardirq_64.h"
#ifndef _ASM_X86_HARDIRQ_H
#define _ASM_X86_HARDIRQ_H
#include <linux/threads.h>
#include <linux/irq.h>
typedef
struct
{
unsigned
int
__softirq_pending
;
unsigned
int
__nmi_count
;
/* arch dependent */
unsigned
int
irq0_irqs
;
#ifdef CONFIG_X86_LOCAL_APIC
unsigned
int
apic_timer_irqs
;
/* arch dependent */
unsigned
int
irq_spurious_count
;
#endif
#ifdef CONFIG_SMP
unsigned
int
irq_resched_count
;
unsigned
int
irq_call_count
;
unsigned
int
irq_tlb_count
;
#endif
#ifdef CONFIG_X86_MCE
unsigned
int
irq_thermal_count
;
# ifdef CONFIG_X86_64
unsigned
int
irq_threshold_count
;
# endif
#endif
}
____cacheline_aligned
irq_cpustat_t
;
DECLARE_PER_CPU
(
irq_cpustat_t
,
irq_stat
);
/* We can have at most NR_VECTORS irqs routed to a cpu at a time */
#define MAX_HARDIRQS_PER_CPU NR_VECTORS
#define __ARCH_IRQ_STAT
#define inc_irq_stat(member) percpu_add(irq_stat.member, 1)
#define local_softirq_pending() percpu_read(irq_stat.__softirq_pending)
#define __ARCH_SET_SOFTIRQ_PENDING
#define set_softirq_pending(x) percpu_write(irq_stat.__softirq_pending, (x))
#define or_softirq_pending(x) percpu_or(irq_stat.__softirq_pending, (x))
extern
void
ack_bad_irq
(
unsigned
int
irq
);
extern
u64
arch_irq_stat_cpu
(
unsigned
int
cpu
);
#define arch_irq_stat_cpu arch_irq_stat_cpu
extern
u64
arch_irq_stat
(
void
);
#define arch_irq_stat arch_irq_stat
#endif
/* _ASM_X86_HARDIRQ_H */
arch/x86/include/asm/hardirq_32.h
已删除
100644 → 0
浏览文件 @
03b48632
#ifndef _ASM_X86_HARDIRQ_32_H
#define _ASM_X86_HARDIRQ_32_H
#include <linux/threads.h>
#include <linux/irq.h>
typedef
struct
{
unsigned
int
__softirq_pending
;
unsigned
long
idle_timestamp
;
unsigned
int
__nmi_count
;
/* arch dependent */
unsigned
int
apic_timer_irqs
;
/* arch dependent */
unsigned
int
irq0_irqs
;
unsigned
int
irq_resched_count
;
unsigned
int
irq_call_count
;
unsigned
int
irq_tlb_count
;
unsigned
int
irq_thermal_count
;
unsigned
int
irq_spurious_count
;
}
____cacheline_aligned
irq_cpustat_t
;
DECLARE_PER_CPU
(
irq_cpustat_t
,
irq_stat
);
/* We can have at most NR_VECTORS irqs routed to a cpu at a time */
#define MAX_HARDIRQS_PER_CPU NR_VECTORS
#define __ARCH_IRQ_STAT
#define __IRQ_STAT(cpu, member) (per_cpu(irq_stat, cpu).member)
#define inc_irq_stat(member) (__get_cpu_var(irq_stat).member++)
void
ack_bad_irq
(
unsigned
int
irq
);
#include <linux/irq_cpustat.h>
#endif
/* _ASM_X86_HARDIRQ_32_H */
arch/x86/include/asm/hardirq_64.h
已删除
100644 → 0
浏览文件 @
03b48632
#ifndef _ASM_X86_HARDIRQ_64_H
#define _ASM_X86_HARDIRQ_64_H
#include <linux/threads.h>
#include <linux/irq.h>
#include <asm/apic.h>
typedef
struct
{
unsigned
int
__softirq_pending
;
unsigned
int
__nmi_count
;
/* arch dependent */
unsigned
int
apic_timer_irqs
;
/* arch dependent */
unsigned
int
irq0_irqs
;
unsigned
int
irq_resched_count
;
unsigned
int
irq_call_count
;
unsigned
int
irq_tlb_count
;
unsigned
int
irq_thermal_count
;
unsigned
int
irq_spurious_count
;
unsigned
int
irq_threshold_count
;
}
____cacheline_aligned
irq_cpustat_t
;
DECLARE_PER_CPU
(
irq_cpustat_t
,
irq_stat
);
/* We can have at most NR_VECTORS irqs routed to a cpu at a time */
#define MAX_HARDIRQS_PER_CPU NR_VECTORS
#define __ARCH_IRQ_STAT 1
#define inc_irq_stat(member) percpu_add(irq_stat.member, 1)
#define local_softirq_pending() percpu_read(irq_stat.__softirq_pending)
#define __ARCH_SET_SOFTIRQ_PENDING 1
#define set_softirq_pending(x) percpu_write(irq_stat.__softirq_pending, (x))
#define or_softirq_pending(x) percpu_or(irq_stat.__softirq_pending, (x))
extern
void
ack_bad_irq
(
unsigned
int
irq
);
#endif
/* _ASM_X86_HARDIRQ_64_H */
arch/x86/kernel/cpu/mcheck/mce_intel_64.c
浏览文件 @
35d266a2
...
...
@@ -7,6 +7,7 @@
#include <linux/interrupt.h>
#include <linux/percpu.h>
#include <asm/processor.h>
#include <asm/apic.h>
#include <asm/msr.h>
#include <asm/mce.h>
#include <asm/hw_irq.h>
...
...
arch/x86/kernel/efi_64.c
浏览文件 @
35d266a2
...
...
@@ -36,6 +36,7 @@
#include <asm/proto.h>
#include <asm/efi.h>
#include <asm/cacheflush.h>
#include <asm/fixmap.h>
static
pgd_t
save_pgd
__initdata
;
static
unsigned
long
efi_flags
__initdata
;
...
...
arch/x86/kernel/irq_64.c
浏览文件 @
35d266a2
...
...
@@ -18,6 +18,7 @@
#include <linux/smp.h>
#include <asm/io_apic.h>
#include <asm/idle.h>
#include <asm/apic.h>
DEFINE_PER_CPU_SHARED_ALIGNED
(
irq_cpustat_t
,
irq_stat
);
EXPORT_PER_CPU_SYMBOL
(
irq_stat
);
...
...
arch/x86/kernel/process_32.c
浏览文件 @
35d266a2
...
...
@@ -108,7 +108,6 @@ void cpu_idle(void)
play_dead
();
local_irq_disable
();
__get_cpu_var
(
irq_stat
).
idle_timestamp
=
jiffies
;
/* Don't trace irqs off for idle */
stop_critical_timings
();
pm_idle
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录