Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
c83d1280
Commit
c83d1280
authored
Aug 14, 2008
by
Ingo Molnar
Browse files
Options
Browse Files
Download
Plain Diff
Merge branches 'x86/prototypes', 'x86/x2apic' and 'x86/debug' into x86/core
parents
51ca3c67
8d7ccaa5
8067794b
a677f58a
Changes
42
Show whitespace changes
Inline
Side-by-side
Showing
42 changed files
with
192 additions
and
20 deletions
+192
-20
arch/x86/kernel/cpu/mtrr/main.c
arch/x86/kernel/cpu/mtrr/main.c
+1
-1
arch/x86/kernel/entry_64.S
arch/x86/kernel/entry_64.S
+2
-2
arch/x86/kernel/genx2apic_uv_x.c
arch/x86/kernel/genx2apic_uv_x.c
+1
-0
arch/x86/kernel/io_apic_32.c
arch/x86/kernel/io_apic_32.c
+4
-4
arch/x86/kernel/ioport.c
arch/x86/kernel/ioport.c
+1
-0
arch/x86/kernel/ipi.c
arch/x86/kernel/ipi.c
+2
-1
arch/x86/kernel/ldt.c
arch/x86/kernel/ldt.c
+1
-0
arch/x86/kernel/process_32.c
arch/x86/kernel/process_32.c
+2
-0
arch/x86/kernel/process_64.c
arch/x86/kernel/process_64.c
+1
-0
arch/x86/kernel/ptrace.c
arch/x86/kernel/ptrace.c
+1
-1
arch/x86/kernel/setup_percpu.c
arch/x86/kernel/setup_percpu.c
+8
-1
arch/x86/kernel/signal_32.c
arch/x86/kernel/signal_32.c
+1
-0
arch/x86/kernel/signal_64.c
arch/x86/kernel/signal_64.c
+1
-0
arch/x86/kernel/smpboot.c
arch/x86/kernel/smpboot.c
+2
-2
arch/x86/kernel/sys_i386_32.c
arch/x86/kernel/sys_i386_32.c
+2
-0
arch/x86/kernel/sys_x86_64.c
arch/x86/kernel/sys_x86_64.c
+1
-0
arch/x86/kernel/time_32.c
arch/x86/kernel/time_32.c
+1
-0
arch/x86/kernel/tls.c
arch/x86/kernel/tls.c
+1
-0
arch/x86/kernel/vm86_32.c
arch/x86/kernel/vm86_32.c
+1
-0
arch/x86/mach-default/setup.c
arch/x86/mach-default/setup.c
+3
-1
arch/x86/mm/fault.c
arch/x86/mm/fault.c
+1
-2
arch/x86/mm/init_32.c
arch/x86/mm/init_32.c
+1
-0
arch/x86/mm/ioremap.c
arch/x86/mm/ioremap.c
+2
-2
include/asm-x86/apic.h
include/asm-x86/apic.h
+5
-0
include/asm-x86/e820.h
include/asm-x86/e820.h
+1
-0
include/asm-x86/hw_irq.h
include/asm-x86/hw_irq.h
+20
-0
include/asm-x86/i387.h
include/asm-x86/i387.h
+1
-0
include/asm-x86/io.h
include/asm-x86/io.h
+2
-0
include/asm-x86/io_64.h
include/asm-x86/io_64.h
+0
-1
include/asm-x86/page_32.h
include/asm-x86/page_32.h
+1
-0
include/asm-x86/page_64.h
include/asm-x86/page_64.h
+1
-0
include/asm-x86/pgtable.h
include/asm-x86/pgtable.h
+2
-0
include/asm-x86/pgtable_32.h
include/asm-x86/pgtable_32.h
+1
-0
include/asm-x86/processor.h
include/asm-x86/processor.h
+4
-0
include/asm-x86/ptrace.h
include/asm-x86/ptrace.h
+3
-0
include/asm-x86/setup.h
include/asm-x86/setup.h
+1
-0
include/asm-x86/signal.h
include/asm-x86/signal.h
+3
-0
include/asm-x86/smp.h
include/asm-x86/smp.h
+3
-1
include/asm-x86/syscalls.h
include/asm-x86/syscalls.h
+93
-0
include/asm-x86/time.h
include/asm-x86/time.h
+2
-0
include/asm-x86/timer.h
include/asm-x86/timer.h
+4
-1
include/asm-x86/traps.h
include/asm-x86/traps.h
+4
-0
No files found.
arch/x86/kernel/cpu/mtrr/main.c
View file @
c83d1280
...
...
@@ -729,7 +729,7 @@ struct var_mtrr_range_state {
mtrr_type
type
;
};
struct
var_mtrr_range_state
__initdata
range_state
[
RANGE_NUM
];
st
atic
st
ruct
var_mtrr_range_state
__initdata
range_state
[
RANGE_NUM
];
static
int
__initdata
debug_print
;
static
int
__init
...
...
arch/x86/kernel/entry_64.S
View file @
c83d1280
...
...
@@ -275,9 +275,9 @@ ENTRY(native_usergs_sysret64)
ENTRY
(
ret_from_fork
)
CFI_DEFAULT_STACK
push
kernel_eflags
(%
rip
)
CFI_ADJUST_CFA_OFFSET
4
CFI_ADJUST_CFA_OFFSET
8
popf
#
reset
kernel
eflags
CFI_ADJUST_CFA_OFFSET
-
4
CFI_ADJUST_CFA_OFFSET
-
8
call
schedule_tail
GET_THREAD_INFO
(%
rcx
)
testl
$
(
_TIF_SYSCALL_TRACE
|
_TIF_SYSCALL_AUDIT
),
TI_flags
(%
rcx
)
...
...
arch/x86/kernel/genx2apic_uv_x.c
View file @
c83d1280
...
...
@@ -54,6 +54,7 @@ int is_uv_system(void)
{
return
uv_system_type
!=
UV_NONE
;
}
EXPORT_SYMBOL_GPL
(
is_uv_system
);
DEFINE_PER_CPU
(
struct
uv_hub_info_s
,
__uv_hub_info
);
EXPORT_PER_CPU_SYMBOL_GPL
(
__uv_hub_info
);
...
...
arch/x86/kernel/io_apic_32.c
View file @
c83d1280
...
...
@@ -1483,6 +1483,7 @@ static void print_APIC_bitfield(int base)
void /*__init*/ print_local_APIC(void *dummy)
{
unsigned int v, ver, maxlvt;
u64 icr;
if (apic_verbosity == APIC_QUIET)
return;
...
...
@@ -1533,10 +1534,9 @@ void /*__init*/ print_local_APIC(void *dummy)
printk(KERN_DEBUG "... APIC ESR: %08x\n", v);
}
v = apic_read(APIC_ICR);
printk(KERN_DEBUG "... APIC ICR: %08x\n", v);
v = apic_read(APIC_ICR2);
printk(KERN_DEBUG "... APIC ICR2: %08x\n", v);
icr = apic_icr_read();
printk(KERN_DEBUG "... APIC ICR: %08x\n", icr);
printk(KERN_DEBUG "... APIC ICR2: %08x\n", icr >> 32);
v = apic_read(APIC_LVTT);
printk(KERN_DEBUG "... APIC LVTT: %08x\n", v);
...
...
arch/x86/kernel/ioport.c
View file @
c83d1280
...
...
@@ -14,6 +14,7 @@
#include <linux/slab.h>
#include <linux/thread_info.h>
#include <linux/syscalls.h>
#include <asm/syscalls.h>
/* Set EXTENT bits starting at BASE in BITMAP to value TURN_ON. */
static
void
set_bitmap
(
unsigned
long
*
bitmap
,
unsigned
int
base
,
...
...
arch/x86/kernel/ipi.c
View file @
c83d1280
...
...
@@ -20,6 +20,8 @@
#ifdef CONFIG_X86_32
#include <mach_apic.h>
#include <mach_ipi.h>
/*
* the following functions deal with sending IPIs between CPUs.
*
...
...
@@ -147,7 +149,6 @@ void send_IPI_mask_sequence(cpumask_t mask, int vector)
}
/* must come after the send_IPI functions above for inlining */
#include <mach_ipi.h>
static
int
convert_apicid_to_cpu
(
int
apic_id
)
{
int
i
;
...
...
arch/x86/kernel/ldt.c
View file @
c83d1280
...
...
@@ -18,6 +18,7 @@
#include <asm/ldt.h>
#include <asm/desc.h>
#include <asm/mmu_context.h>
#include <asm/syscalls.h>
#ifdef CONFIG_SMP
static
void
flush_ldt
(
void
*
current_mm
)
...
...
arch/x86/kernel/process_32.c
View file @
c83d1280
...
...
@@ -55,6 +55,8 @@
#include <asm/tlbflush.h>
#include <asm/cpu.h>
#include <asm/kdebug.h>
#include <asm/syscalls.h>
#include <asm/smp.h>
asmlinkage
void
ret_from_fork
(
void
)
__asm__
(
"ret_from_fork"
);
...
...
arch/x86/kernel/process_64.c
View file @
c83d1280
...
...
@@ -51,6 +51,7 @@
#include <asm/proto.h>
#include <asm/ia32.h>
#include <asm/idle.h>
#include <asm/syscalls.h>
asmlinkage
extern
void
ret_from_fork
(
void
);
...
...
arch/x86/kernel/ptrace.c
View file @
c83d1280
...
...
@@ -69,7 +69,7 @@ static inline bool invalid_selector(u16 value)
#define FLAG_MASK FLAG_MASK_32
static
long
*
pt_regs_access
(
struct
pt_regs
*
regs
,
unsigned
long
regno
)
static
unsigned
long
*
pt_regs_access
(
struct
pt_regs
*
regs
,
unsigned
long
regno
)
{
BUILD_BUG_ON
(
offsetof
(
struct
pt_regs
,
bx
)
!=
0
);
regno
>>=
2
;
...
...
arch/x86/kernel/setup_percpu.c
View file @
c83d1280
...
...
@@ -162,9 +162,16 @@ void __init setup_per_cpu_areas(void)
printk
(
KERN_INFO
"cpu %d has no node %d or node-local memory
\n
"
,
cpu
,
node
);
if
(
ptr
)
printk
(
KERN_DEBUG
"per cpu data for cpu%d at %016lx
\n
"
,
cpu
,
__pa
(
ptr
));
}
else
else
{
ptr
=
alloc_bootmem_pages_node
(
NODE_DATA
(
node
),
size
);
if
(
ptr
)
printk
(
KERN_DEBUG
"per cpu data for cpu%d on node%d at %016lx
\n
"
,
cpu
,
node
,
__pa
(
ptr
));
}
#endif
per_cpu_offset
(
cpu
)
=
ptr
-
__per_cpu_start
;
memcpy
(
ptr
,
__per_cpu_start
,
__per_cpu_end
-
__per_cpu_start
);
...
...
arch/x86/kernel/signal_32.c
View file @
c83d1280
...
...
@@ -26,6 +26,7 @@
#include <asm/uaccess.h>
#include <asm/i387.h>
#include <asm/vdso.h>
#include <asm/syscalls.h>
#include "sigframe.h"
...
...
arch/x86/kernel/signal_64.c
View file @
c83d1280
...
...
@@ -26,6 +26,7 @@
#include <asm/proto.h>
#include <asm/ia32_unistd.h>
#include <asm/mce.h>
#include <asm/syscalls.h>
#include "sigframe.h"
#define _BLOCKABLE (~(sigmask(SIGKILL) | sigmask(SIGSTOP)))
...
...
arch/x86/kernel/smpboot.c
View file @
c83d1280
...
...
@@ -88,7 +88,7 @@ static DEFINE_PER_CPU(struct task_struct *, idle_thread_array);
#define get_idle_for_cpu(x) (per_cpu(idle_thread_array, x))
#define set_idle_for_cpu(x, p) (per_cpu(idle_thread_array, x) = (p))
#else
struct
task_struct
*
idle_thread_array
[
NR_CPUS
]
__cpuinitdata
;
st
atic
st
ruct
task_struct
*
idle_thread_array
[
NR_CPUS
]
__cpuinitdata
;
#define get_idle_for_cpu(x) (idle_thread_array[(x)])
#define set_idle_for_cpu(x, p) (idle_thread_array[(x)] = (p))
#endif
...
...
@@ -128,7 +128,7 @@ static atomic_t init_deasserted;
static
cpumask_t
cpu_sibling_setup_map
;
/* Set if we find a B stepping CPU */
int
__cpuinitdata
smp_b_stepping
;
static
int
__cpuinitdata
smp_b_stepping
;
#if defined(CONFIG_NUMA) && defined(CONFIG_X86_32)
...
...
arch/x86/kernel/sys_i386_32.c
View file @
c83d1280
...
...
@@ -22,6 +22,8 @@
#include <linux/uaccess.h>
#include <linux/unistd.h>
#include <asm/syscalls.h>
asmlinkage
long
sys_mmap2
(
unsigned
long
addr
,
unsigned
long
len
,
unsigned
long
prot
,
unsigned
long
flags
,
unsigned
long
fd
,
unsigned
long
pgoff
)
...
...
arch/x86/kernel/sys_x86_64.c
View file @
c83d1280
...
...
@@ -16,6 +16,7 @@
#include <asm/uaccess.h>
#include <asm/ia32.h>
#include <asm/syscalls.h>
asmlinkage
long
sys_mmap
(
unsigned
long
addr
,
unsigned
long
len
,
unsigned
long
prot
,
unsigned
long
flags
,
unsigned
long
fd
,
unsigned
long
off
)
...
...
arch/x86/kernel/time_32.c
View file @
c83d1280
...
...
@@ -36,6 +36,7 @@
#include <asm/arch_hooks.h>
#include <asm/hpet.h>
#include <asm/time.h>
#include <asm/timer.h>
#include "do_timer.h"
...
...
arch/x86/kernel/tls.c
View file @
c83d1280
...
...
@@ -10,6 +10,7 @@
#include <asm/ldt.h>
#include <asm/processor.h>
#include <asm/proto.h>
#include <asm/syscalls.h>
#include "tls.h"
...
...
arch/x86/kernel/vm86_32.c
View file @
c83d1280
...
...
@@ -46,6 +46,7 @@
#include <asm/io.h>
#include <asm/tlbflush.h>
#include <asm/irq.h>
#include <asm/syscalls.h>
/*
* Known problems:
...
...
arch/x86/mach-default/setup.c
View file @
c83d1280
...
...
@@ -10,13 +10,15 @@
#include <asm/e820.h>
#include <asm/setup.h>
#include <mach_ipi.h>
#ifdef CONFIG_HOTPLUG_CPU
#define DEFAULT_SEND_IPI (1)
#else
#define DEFAULT_SEND_IPI (0)
#endif
int
no_broadcast
=
DEFAULT_SEND_IPI
;
int
no_broadcast
=
DEFAULT_SEND_IPI
;
/**
* pre_intr_init_hook - initialisation prior to setting up interrupt vectors
...
...
arch/x86/mm/fault.c
View file @
c83d1280
...
...
@@ -35,6 +35,7 @@
#include <asm/tlbflush.h>
#include <asm/proto.h>
#include <asm-generic/sections.h>
#include <asm/traps.h>
/*
* Page fault error code bits
...
...
@@ -357,8 +358,6 @@ static int is_errata100(struct pt_regs *regs, unsigned long address)
return
0
;
}
void
do_invalid_op
(
struct
pt_regs
*
,
unsigned
long
);
static
int
is_f00f_bug
(
struct
pt_regs
*
regs
,
unsigned
long
address
)
{
#ifdef CONFIG_X86_F00F_BUG
...
...
arch/x86/mm/init_32.c
View file @
c83d1280
...
...
@@ -47,6 +47,7 @@
#include <asm/paravirt.h>
#include <asm/setup.h>
#include <asm/cacheflush.h>
#include <asm/smp.h>
unsigned
int
__VMALLOC_RESERVE
=
128
<<
20
;
...
...
arch/x86/mm/ioremap.c
View file @
c83d1280
...
...
@@ -421,7 +421,7 @@ void unxlate_dev_mem_ptr(unsigned long phys, void *addr)
return
;
}
int
__initdata
early_ioremap_debug
;
static
int
__initdata
early_ioremap_debug
;
static
int
__init
early_ioremap_debug_setup
(
char
*
str
)
{
...
...
@@ -547,7 +547,7 @@ static inline void __init early_clear_fixmap(enum fixed_addresses idx)
}
int
__initdata
early_ioremap_nested
;
static
int
__initdata
early_ioremap_nested
;
static
int
__init
check_early_ioremap_leak
(
void
)
{
...
...
include/asm-x86/apic.h
View file @
c83d1280
...
...
@@ -54,6 +54,11 @@ extern int disable_apic;
#endif
extern
int
is_vsmp_box
(
void
);
extern
void
xapic_wait_icr_idle
(
void
);
extern
u32
safe_xapic_wait_icr_idle
(
void
);
extern
u64
xapic_icr_read
(
void
);
extern
void
xapic_icr_write
(
u32
,
u32
);
extern
int
setup_profiling_timer
(
unsigned
int
);
static
inline
void
native_apic_mem_write
(
u32
reg
,
u32
v
)
{
...
...
include/asm-x86/e820.h
View file @
c83d1280
...
...
@@ -64,6 +64,7 @@ struct e820map {
extern
struct
e820map
e820
;
extern
struct
e820map
e820_saved
;
extern
unsigned
long
pci_mem_start
;
extern
int
e820_any_mapped
(
u64
start
,
u64
end
,
unsigned
type
);
extern
int
e820_all_mapped
(
u64
start
,
u64
end
,
unsigned
type
);
extern
void
e820_add_region
(
u64
start
,
u64
size
,
int
type
);
...
...
include/asm-x86/hw_irq.h
View file @
c83d1280
...
...
@@ -95,6 +95,26 @@ extern asmlinkage void qic_reschedule_interrupt(void);
extern
asmlinkage
void
qic_enable_irq_interrupt
(
void
);
extern
asmlinkage
void
qic_call_function_interrupt
(
void
);
/* SMP */
extern
void
smp_apic_timer_interrupt
(
struct
pt_regs
*
);
#ifdef CONFIG_X86_32
extern
void
smp_spurious_interrupt
(
struct
pt_regs
*
);
extern
void
smp_error_interrupt
(
struct
pt_regs
*
);
#else
extern
asmlinkage
void
smp_spurious_interrupt
(
void
);
extern
asmlinkage
void
smp_error_interrupt
(
void
);
#endif
#ifdef CONFIG_X86_SMP
extern
void
smp_reschedule_interrupt
(
struct
pt_regs
*
);
extern
void
smp_call_function_interrupt
(
struct
pt_regs
*
);
extern
void
smp_call_function_single_interrupt
(
struct
pt_regs
*
);
#ifdef CONFIG_X86_32
extern
void
smp_invalidate_interrupt
(
struct
pt_regs
*
);
#else
extern
asmlinkage
void
smp_invalidate_interrupt
(
struct
pt_regs
*
);
#endif
#endif
#ifdef CONFIG_X86_32
extern
void
(
*
const
interrupt
[
NR_IRQS
])(
void
);
#else
...
...
include/asm-x86/i387.h
View file @
c83d1280
...
...
@@ -25,6 +25,7 @@ extern void mxcsr_feature_mask_init(void);
extern
int
init_fpu
(
struct
task_struct
*
child
);
extern
asmlinkage
void
math_state_restore
(
void
);
extern
void
init_thread_xstate
(
void
);
extern
int
dump_fpu
(
struct
pt_regs
*
,
struct
user_i387_struct
*
);
extern
user_regset_active_fn
fpregs_active
,
xfpregs_active
;
extern
user_regset_get_fn
fpregs_get
,
xfpregs_get
,
fpregs_soft_get
;
...
...
include/asm-x86/io.h
View file @
c83d1280
...
...
@@ -73,6 +73,8 @@ build_mmio_write(__writeq, "q", unsigned long, "r", )
#define writeq writeq
#endif
extern
int
iommu_bio_merge
;
#ifdef CONFIG_X86_32
# include "io_32.h"
#else
...
...
include/asm-x86/io_64.h
View file @
c83d1280
...
...
@@ -235,7 +235,6 @@ void memset_io(volatile void __iomem *a, int b, size_t c);
#define flush_write_buffers()
extern
int
iommu_bio_merge
;
#define BIO_VMERGE_BOUNDARY iommu_bio_merge
/*
...
...
include/asm-x86/page_32.h
View file @
c83d1280
...
...
@@ -96,6 +96,7 @@ extern void find_low_pfn_range(void);
extern
unsigned
long
init_memory_mapping
(
unsigned
long
start
,
unsigned
long
end
);
extern
void
initmem_init
(
unsigned
long
,
unsigned
long
);
extern
void
free_initmem
(
void
);
extern
void
setup_bootmem_allocator
(
void
);
...
...
include/asm-x86/page_64.h
View file @
c83d1280
...
...
@@ -91,6 +91,7 @@ extern unsigned long init_memory_mapping(unsigned long start,
unsigned
long
end
);
extern
void
initmem_init
(
unsigned
long
start_pfn
,
unsigned
long
end_pfn
);
extern
void
free_initmem
(
void
);
extern
void
init_extra_mapping_uc
(
unsigned
long
phys
,
unsigned
long
size
);
extern
void
init_extra_mapping_wb
(
unsigned
long
phys
,
unsigned
long
size
);
...
...
include/asm-x86/pgtable.h
View file @
c83d1280
...
...
@@ -313,6 +313,8 @@ static inline void native_pagetable_setup_start(pgd_t *base) {}
static
inline
void
native_pagetable_setup_done
(
pgd_t
*
base
)
{}
#endif
extern
int
arch_report_meminfo
(
char
*
page
);
#ifdef CONFIG_PARAVIRT
#include <asm/paravirt.h>
#else
/* !CONFIG_PARAVIRT */
...
...
include/asm-x86/pgtable_32.h
View file @
c83d1280
...
...
@@ -31,6 +31,7 @@ static inline void pgtable_cache_init(void) { }
static
inline
void
check_pgt_cache
(
void
)
{
}
void
paging_init
(
void
);
extern
void
set_pmd_pfn
(
unsigned
long
,
unsigned
long
,
pgprot_t
);
/*
* The Linux x86 paging architecture is 'compile-time dual-mode', it
...
...
include/asm-x86/processor.h
View file @
c83d1280
...
...
@@ -140,6 +140,8 @@ DECLARE_PER_CPU(struct cpuinfo_x86, cpu_info);
#define current_cpu_data boot_cpu_data
#endif
extern
const
struct
seq_operations
cpuinfo_op
;
static
inline
int
hlt_works
(
int
cpu
)
{
#ifdef CONFIG_X86_32
...
...
@@ -153,6 +155,8 @@ static inline int hlt_works(int cpu)
extern
void
cpu_detect
(
struct
cpuinfo_x86
*
c
);
extern
struct
pt_regs
*
idle_regs
(
struct
pt_regs
*
);
extern
void
early_cpu_init
(
void
);
extern
void
identify_boot_cpu
(
void
);
extern
void
identify_secondary_cpu
(
struct
cpuinfo_x86
*
);
...
...
include/asm-x86/ptrace.h
View file @
c83d1280
...
...
@@ -148,6 +148,9 @@ extern void send_sigtrap(struct task_struct *tsk, struct pt_regs *regs,
void
signal_fault
(
struct
pt_regs
*
regs
,
void
__user
*
frame
,
char
*
where
);
#endif
extern
long
syscall_trace_enter
(
struct
pt_regs
*
);
extern
void
syscall_trace_leave
(
struct
pt_regs
*
);
static
inline
unsigned
long
regs_return_value
(
struct
pt_regs
*
regs
)
{
return
regs
->
ax
;
...
...
include/asm-x86/setup.h
View file @
c83d1280
...
...
@@ -42,6 +42,7 @@ struct x86_quirks {
};
extern
struct
x86_quirks
*
x86_quirks
;
extern
unsigned
long
saved_video_mode
;
#ifndef CONFIG_PARAVIRT
#define paravirt_post_allocator_init() do {} while (0)
...
...
include/asm-x86/signal.h
View file @
c83d1280
...
...
@@ -140,6 +140,9 @@ struct sigaction {
struct
k_sigaction
{
struct
sigaction
sa
;
};
extern
void
do_notify_resume
(
struct
pt_regs
*
,
void
*
,
__u32
);
# else
/* __KERNEL__ */
/* Here we must cater to libcs that poke about in kernel headers. */
...
...
include/asm-x86/smp.h
View file @
c83d1280
...
...
@@ -34,6 +34,9 @@ extern cpumask_t cpu_initialized;
DECLARE_PER_CPU
(
cpumask_t
,
cpu_sibling_map
);
DECLARE_PER_CPU
(
cpumask_t
,
cpu_core_map
);
DECLARE_PER_CPU
(
u16
,
cpu_llc_id
);
#ifdef CONFIG_X86_32
DECLARE_PER_CPU
(
int
,
cpu_number
);
#endif
DECLARE_EARLY_PER_CPU
(
u16
,
x86_cpu_to_apicid
);
DECLARE_EARLY_PER_CPU
(
u16
,
x86_bios_cpu_apicid
);
...
...
@@ -142,7 +145,6 @@ extern unsigned disabled_cpus __cpuinitdata;
* from the initial startup. We map APIC_BASE very early in page_setup(),
* so this is correct in the x86 case.
*/
DECLARE_PER_CPU
(
int
,
cpu_number
);
#define raw_smp_processor_id() (x86_read_percpu(cpu_number))
extern
int
safe_smp_processor_id
(
void
);
...
...
include/asm-x86/syscalls.h
0 → 100644
View file @
c83d1280
/*
* syscalls.h - Linux syscall interfaces (arch-specific)
*
* Copyright (c) 2008 Jaswinder Singh
*
* This file is released under the GPLv2.
* See the file COPYING for more details.
*/
#ifndef _ASM_X86_SYSCALLS_H
#define _ASM_X86_SYSCALLS_H
#include <linux/compiler.h>
#include <linux/linkage.h>
#include <linux/types.h>
#include <linux/signal.h>
/* Common in X86_32 and X86_64 */
/* kernel/ioport.c */
asmlinkage
long
sys_ioperm
(
unsigned
long
,
unsigned
long
,
int
);
/* X86_32 only */
#ifdef CONFIG_X86_32
/* kernel/process_32.c */
asmlinkage
int
sys_fork
(
struct
pt_regs
);
asmlinkage
int
sys_clone
(
struct
pt_regs
);
asmlinkage
int
sys_vfork
(
struct
pt_regs
);
asmlinkage
int
sys_execve
(
struct
pt_regs
);
/* kernel/signal_32.c */
asmlinkage
int
sys_sigsuspend
(
int
,
int
,
old_sigset_t
);
asmlinkage
int
sys_sigaction
(
int
,
const
struct
old_sigaction
__user
*
,
struct
old_sigaction
__user
*
);
asmlinkage
int
sys_sigaltstack
(
unsigned
long
);
asmlinkage
unsigned
long
sys_sigreturn
(
unsigned
long
);
asmlinkage
int
sys_rt_sigreturn
(
unsigned
long
);
/* kernel/ioport.c */
asmlinkage
long
sys_iopl
(
unsigned
long
);
/* kernel/ldt.c */
asmlinkage
int
sys_modify_ldt
(
int
,
void
__user
*
,
unsigned
long
);
/* kernel/sys_i386_32.c */
asmlinkage
long
sys_mmap2
(
unsigned
long
,
unsigned
long
,
unsigned
long
,
unsigned
long
,
unsigned
long
,
unsigned
long
);
struct
mmap_arg_struct
;
asmlinkage
int
old_mmap
(
struct
mmap_arg_struct
__user
*
);
struct
sel_arg_struct
;
asmlinkage
int
old_select
(
struct
sel_arg_struct
__user
*
);
asmlinkage
int
sys_ipc
(
uint
,
int
,
int
,
int
,
void
__user
*
,
long
);
struct
old_utsname
;
asmlinkage
int
sys_uname
(
struct
old_utsname
__user
*
);
struct
oldold_utsname
;
asmlinkage
int
sys_olduname
(
struct
oldold_utsname
__user
*
);
/* kernel/tls.c */
asmlinkage
int
sys_set_thread_area
(
struct
user_desc
__user
*
);
asmlinkage
int
sys_get_thread_area
(
struct
user_desc
__user
*
);
/* kernel/vm86_32.c */
asmlinkage
int
sys_vm86old
(
struct
pt_regs
);
asmlinkage
int
sys_vm86
(
struct
pt_regs
);
#else
/* CONFIG_X86_32 */
/* X86_64 only */
/* kernel/process_64.c */
asmlinkage
long
sys_fork
(
struct
pt_regs
*
);
asmlinkage
long
sys_clone
(
unsigned
long
,
unsigned
long
,
void
__user
*
,
void
__user
*
,
struct
pt_regs
*
);
asmlinkage
long
sys_vfork
(
struct
pt_regs
*
);
asmlinkage
long
sys_execve
(
char
__user
*
,
char
__user
*
__user
*
,
char
__user
*
__user
*
,
struct
pt_regs
*
);
/* kernel/ioport.c */
asmlinkage
long
sys_iopl
(
unsigned
int
,
struct
pt_regs
*
);
/* kernel/signal_64.c */
asmlinkage
long
sys_sigaltstack
(
const
stack_t
__user
*
,
stack_t
__user
*
,
struct
pt_regs
*
);
asmlinkage
long
sys_rt_sigreturn
(
struct
pt_regs
*
);
/* kernel/sys_x86_64.c */
asmlinkage
long
sys_mmap
(
unsigned
long
,
unsigned
long
,
unsigned
long
,
unsigned
long
,
unsigned
long
,
unsigned
long
);
struct
new_utsname
;
asmlinkage
long
sys_uname
(
struct
new_utsname
__user
*
);
#endif
/* CONFIG_X86_32 */
#endif
/* _ASM_X86_SYSCALLS_H */
include/asm-x86/time.h
View file @
c83d1280
...
...
@@ -46,6 +46,8 @@ static inline int native_set_wallclock(unsigned long nowtime)
#endif
extern
void
time_init
(
void
);
#ifdef CONFIG_PARAVIRT
#include <asm/paravirt.h>
#else
/* !CONFIG_PARAVIRT */
...
...
include/asm-x86/timer.h
View file @
c83d1280
...
...
@@ -9,9 +9,12 @@
unsigned
long
long
native_sched_clock
(
void
);
unsigned
long
native_calibrate_tsc
(
void
);
#ifdef CONFIG_X86_32
extern
int
timer_ack
;
extern
int
no_timer_check
;
extern
int
recalibrate_cpu_khz
(
void
);
#endif
/* CONFIG_X86_32 */
extern
int
no_timer_check
;
#ifndef CONFIG_PARAVIRT
#define calibrate_tsc() native_calibrate_tsc()
...
...
include/asm-x86/traps.h
View file @
c83d1280
...
...
@@ -51,6 +51,8 @@ void do_spurious_interrupt_bug(struct pt_regs *, long);
unsigned
long
patch_espfix_desc
(
unsigned
long
,
unsigned
long
);
asmlinkage
void
math_emulate
(
long
);
void
do_page_fault
(
struct
pt_regs
*
regs
,
unsigned
long
error_code
);
#else
/* CONFIG_X86_32 */
asmlinkage
void
double_fault
(
void
);
...
...
@@ -62,5 +64,7 @@ asmlinkage void do_coprocessor_error(struct pt_regs *);
asmlinkage
void
do_simd_coprocessor_error
(
struct
pt_regs
*
);
asmlinkage
void
do_spurious_interrupt_bug
(
struct
pt_regs
*
);
asmlinkage
void
do_page_fault
(
struct
pt_regs
*
regs
,
unsigned
long
error_code
);
#endif
/* CONFIG_X86_32 */
#endif
/* ASM_X86__TRAPS_H */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment