aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/cris/arch-v32/kernel/smp.c2
-rw-r--r--arch/i386/defconfig14
-rw-r--r--arch/i386/kernel/cpu/cyrix.c2
-rw-r--r--arch/i386/kernel/mpparse.c8
-rw-r--r--arch/i386/kernel/setup.c4
-rw-r--r--arch/i386/kernel/smpboot.c10
-rw-r--r--arch/i386/kernel/tsc.c2
-rw-r--r--arch/i386/mach-generic/bigsmp.c2
-rw-r--r--arch/i386/mach-generic/default.c2
-rw-r--r--arch/i386/mach-generic/es7000.c2
-rw-r--r--arch/i386/mach-generic/summit.c2
-rw-r--r--arch/i386/mm/init.c4
-rw-r--r--arch/ia64/mm/init.c5
-rw-r--r--arch/m32r/kernel/smpboot.c2
-rw-r--r--arch/mips/au1000/common/pci.c8
-rw-r--r--arch/mips/kernel/linux32.c16
-rw-r--r--arch/mips/kernel/scall64-n32.S4
-rw-r--r--arch/mips/kernel/smp.c2
-rw-r--r--arch/mips/philips/pnx8550/common/time.c1
-rw-r--r--arch/parisc/kernel/smp.c2
-rw-r--r--arch/powerpc/kernel/smp.c2
-rw-r--r--arch/s390/mm/vmem.c3
-rw-r--r--arch/sparc64/kernel/smp.c2
-rw-r--r--arch/x86_64/defconfig16
-rw-r--r--arch/x86_64/ia32/ia32_aout.c4
-rw-r--r--arch/x86_64/kernel/pci-calgary.c11
-rw-r--r--arch/x86_64/kernel/time.c25
27 files changed, 104 insertions, 53 deletions
diff --git a/arch/cris/arch-v32/kernel/smp.c b/arch/cris/arch-v32/kernel/smp.c
index 2d0023f2d49b..77e655f26560 100644
--- a/arch/cris/arch-v32/kernel/smp.c
+++ b/arch/cris/arch-v32/kernel/smp.c
@@ -195,7 +195,7 @@ int setup_profiling_timer(unsigned int multiplier)
195 */ 195 */
196unsigned long cache_decay_ticks = 1; 196unsigned long cache_decay_ticks = 1;
197 197
198int __devinit __cpu_up(unsigned int cpu) 198int __cpuinit __cpu_up(unsigned int cpu)
199{ 199{
200 smp_boot_one_cpu(cpu); 200 smp_boot_one_cpu(cpu);
201 return cpu_online(cpu) ? 0 : -ENOSYS; 201 return cpu_online(cpu) ? 0 : -ENOSYS;
diff --git a/arch/i386/defconfig b/arch/i386/defconfig
index 88b7c1cf65a2..5d80edfc61b7 100644
--- a/arch/i386/defconfig
+++ b/arch/i386/defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.19-git14 3# Linux kernel version: 2.6.20-rc3
4# Sat Dec 9 21:23:14 2006 4# Fri Jan 5 11:54:46 2007
5# 5#
6CONFIG_X86_32=y 6CONFIG_X86_32=y
7CONFIG_GENERIC_TIME=y 7CONFIG_GENERIC_TIME=y
@@ -1287,6 +1287,11 @@ CONFIG_USB_MON=y
1287# 1287#
1288 1288
1289# 1289#
1290# Virtualization
1291#
1292# CONFIG_KVM is not set
1293
1294#
1290# File systems 1295# File systems
1291# 1296#
1292CONFIG_EXT2_FS=y 1297CONFIG_EXT2_FS=y
@@ -1471,6 +1476,8 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1471# CONFIG_ENABLE_MUST_CHECK is not set 1476# CONFIG_ENABLE_MUST_CHECK is not set
1472CONFIG_MAGIC_SYSRQ=y 1477CONFIG_MAGIC_SYSRQ=y
1473CONFIG_UNUSED_SYMBOLS=y 1478CONFIG_UNUSED_SYMBOLS=y
1479# CONFIG_DEBUG_FS is not set
1480# CONFIG_HEADERS_CHECK is not set
1474CONFIG_DEBUG_KERNEL=y 1481CONFIG_DEBUG_KERNEL=y
1475CONFIG_LOG_BUF_SHIFT=18 1482CONFIG_LOG_BUF_SHIFT=18
1476CONFIG_DETECT_SOFTLOCKUP=y 1483CONFIG_DETECT_SOFTLOCKUP=y
@@ -1489,12 +1496,10 @@ CONFIG_DETECT_SOFTLOCKUP=y
1489# CONFIG_DEBUG_HIGHMEM is not set 1496# CONFIG_DEBUG_HIGHMEM is not set
1490CONFIG_DEBUG_BUGVERBOSE=y 1497CONFIG_DEBUG_BUGVERBOSE=y
1491# CONFIG_DEBUG_INFO is not set 1498# CONFIG_DEBUG_INFO is not set
1492# CONFIG_DEBUG_FS is not set
1493# CONFIG_DEBUG_VM is not set 1499# CONFIG_DEBUG_VM is not set
1494# CONFIG_DEBUG_LIST is not set 1500# CONFIG_DEBUG_LIST is not set
1495# CONFIG_FRAME_POINTER is not set 1501# CONFIG_FRAME_POINTER is not set
1496# CONFIG_FORCED_INLINING is not set 1502# CONFIG_FORCED_INLINING is not set
1497# CONFIG_HEADERS_CHECK is not set
1498# CONFIG_RCU_TORTURE_TEST is not set 1503# CONFIG_RCU_TORTURE_TEST is not set
1499# CONFIG_LKDTM is not set 1504# CONFIG_LKDTM is not set
1500CONFIG_EARLY_PRINTK=y 1505CONFIG_EARLY_PRINTK=y
@@ -1527,6 +1532,7 @@ CONFIG_CRC32=y
1527# CONFIG_LIBCRC32C is not set 1532# CONFIG_LIBCRC32C is not set
1528CONFIG_ZLIB_INFLATE=y 1533CONFIG_ZLIB_INFLATE=y
1529CONFIG_PLIST=y 1534CONFIG_PLIST=y
1535CONFIG_IOMAP_COPY=y
1530CONFIG_GENERIC_HARDIRQS=y 1536CONFIG_GENERIC_HARDIRQS=y
1531CONFIG_GENERIC_IRQ_PROBE=y 1537CONFIG_GENERIC_IRQ_PROBE=y
1532CONFIG_GENERIC_PENDING_IRQ=y 1538CONFIG_GENERIC_PENDING_IRQ=y
diff --git a/arch/i386/kernel/cpu/cyrix.c b/arch/i386/kernel/cpu/cyrix.c
index c0c3b59de32c..abcff92f994c 100644
--- a/arch/i386/kernel/cpu/cyrix.c
+++ b/arch/i386/kernel/cpu/cyrix.c
@@ -173,7 +173,7 @@ static void __cpuinit geode_configure(void)
173 ccr4 = getCx86(CX86_CCR4); 173 ccr4 = getCx86(CX86_CCR4);
174 ccr4 |= 0x38; /* FPU fast, DTE cache, Mem bypass */ 174 ccr4 |= 0x38; /* FPU fast, DTE cache, Mem bypass */
175 175
176 setCx86(CX86_CCR3, ccr3); 176 setCx86(CX86_CCR4, ccr4);
177 177
178 set_cx86_memwb(); 178 set_cx86_memwb();
179 set_cx86_reorder(); 179 set_cx86_reorder();
diff --git a/arch/i386/kernel/mpparse.c b/arch/i386/kernel/mpparse.c
index 2ce67228dff8..49bff3596bff 100644
--- a/arch/i386/kernel/mpparse.c
+++ b/arch/i386/kernel/mpparse.c
@@ -36,7 +36,7 @@
36 36
37/* Have we found an MP table */ 37/* Have we found an MP table */
38int smp_found_config; 38int smp_found_config;
39unsigned int __initdata maxcpus = NR_CPUS; 39unsigned int __cpuinitdata maxcpus = NR_CPUS;
40 40
41/* 41/*
42 * Various Linux-internal data structures created from the 42 * Various Linux-internal data structures created from the
@@ -102,9 +102,9 @@ static int __init mpf_checksum(unsigned char *mp, int len)
102 */ 102 */
103 103
104static int mpc_record; 104static int mpc_record;
105static struct mpc_config_translation *translation_table[MAX_MPC_ENTRY] __initdata; 105static struct mpc_config_translation *translation_table[MAX_MPC_ENTRY] __cpuinitdata;
106 106
107static void __devinit MP_processor_info (struct mpc_config_processor *m) 107static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
108{ 108{
109 int ver, apicid; 109 int ver, apicid;
110 physid_mask_t phys_cpu; 110 physid_mask_t phys_cpu;
@@ -822,7 +822,7 @@ void __init mp_register_lapic_address(u64 address)
822 Dprintk("Boot CPU = %d\n", boot_cpu_physical_apicid); 822 Dprintk("Boot CPU = %d\n", boot_cpu_physical_apicid);
823} 823}
824 824
825void __devinit mp_register_lapic (u8 id, u8 enabled) 825void __cpuinit mp_register_lapic (u8 id, u8 enabled)
826{ 826{
827 struct mpc_config_processor processor; 827 struct mpc_config_processor processor;
828 int boot_cpu = 0; 828 int boot_cpu = 0;
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
index 6f6cb7b31d18..4b31ad70c1ac 100644
--- a/arch/i386/kernel/setup.c
+++ b/arch/i386/kernel/setup.c
@@ -77,7 +77,7 @@ extern struct resource code_resource;
77extern struct resource data_resource; 77extern struct resource data_resource;
78 78
79/* cpu data as detected by the assembly code in head.S */ 79/* cpu data as detected by the assembly code in head.S */
80struct cpuinfo_x86 new_cpu_data __initdata = { 0, 0, 0, 0, -1, 1, 0, 0, -1 }; 80struct cpuinfo_x86 new_cpu_data __cpuinitdata = { 0, 0, 0, 0, -1, 1, 0, 0, -1 };
81/* common cpu data for all cpus */ 81/* common cpu data for all cpus */
82struct cpuinfo_x86 boot_cpu_data __read_mostly = { 0, 0, 0, 0, -1, 1, 0, 0, -1 }; 82struct cpuinfo_x86 boot_cpu_data __read_mostly = { 0, 0, 0, 0, -1, 1, 0, 0, -1 };
83EXPORT_SYMBOL(boot_cpu_data); 83EXPORT_SYMBOL(boot_cpu_data);
@@ -495,7 +495,7 @@ static void set_mca_bus(int x) { }
495#endif 495#endif
496 496
497/* Overridden in paravirt.c if CONFIG_PARAVIRT */ 497/* Overridden in paravirt.c if CONFIG_PARAVIRT */
498char * __attribute__((weak)) memory_setup(void) 498char * __init __attribute__((weak)) memory_setup(void)
499{ 499{
500 return machine_specific_memory_setup(); 500 return machine_specific_memory_setup();
501} 501}
diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c
index 300d9b38d02e..dea7ef9d3e82 100644
--- a/arch/i386/kernel/smpboot.c
+++ b/arch/i386/kernel/smpboot.c
@@ -159,7 +159,7 @@ void __init smp_alloc_memory(void)
159 * a given CPU 159 * a given CPU
160 */ 160 */
161 161
162static void __devinit smp_store_cpu_info(int id) 162static void __cpuinit smp_store_cpu_info(int id)
163{ 163{
164 struct cpuinfo_x86 *c = cpu_data + id; 164 struct cpuinfo_x86 *c = cpu_data + id;
165 165
@@ -364,7 +364,7 @@ extern void calibrate_delay(void);
364 364
365static atomic_t init_deasserted; 365static atomic_t init_deasserted;
366 366
367static void __devinit smp_callin(void) 367static void __cpuinit smp_callin(void)
368{ 368{
369 int cpuid, phys_id; 369 int cpuid, phys_id;
370 unsigned long timeout; 370 unsigned long timeout;
@@ -538,7 +538,7 @@ set_cpu_sibling_map(int cpu)
538/* 538/*
539 * Activate a secondary processor. 539 * Activate a secondary processor.
540 */ 540 */
541static void __devinit start_secondary(void *unused) 541static void __cpuinit start_secondary(void *unused)
542{ 542{
543 /* 543 /*
544 * Don't put *anything* before secondary_cpu_init(), SMP 544 * Don't put *anything* before secondary_cpu_init(), SMP
@@ -931,7 +931,7 @@ static inline struct task_struct * alloc_idle_task(int cpu)
931#define alloc_idle_task(cpu) fork_idle(cpu) 931#define alloc_idle_task(cpu) fork_idle(cpu)
932#endif 932#endif
933 933
934static int __devinit do_boot_cpu(int apicid, int cpu) 934static int __cpuinit do_boot_cpu(int apicid, int cpu)
935/* 935/*
936 * NOTE - on most systems this is a PHYSICAL apic ID, but on multiquad 936 * NOTE - on most systems this is a PHYSICAL apic ID, but on multiquad
937 * (ie clustered apic addressing mode), this is a LOGICAL apic ID. 937 * (ie clustered apic addressing mode), this is a LOGICAL apic ID.
@@ -1432,7 +1432,7 @@ void __cpu_die(unsigned int cpu)
1432} 1432}
1433#endif /* CONFIG_HOTPLUG_CPU */ 1433#endif /* CONFIG_HOTPLUG_CPU */
1434 1434
1435int __devinit __cpu_up(unsigned int cpu) 1435int __cpuinit __cpu_up(unsigned int cpu)
1436{ 1436{
1437#ifdef CONFIG_HOTPLUG_CPU 1437#ifdef CONFIG_HOTPLUG_CPU
1438 int ret=0; 1438 int ret=0;
diff --git a/arch/i386/kernel/tsc.c b/arch/i386/kernel/tsc.c
index 1bbe45dca7a0..2cfc7b09b925 100644
--- a/arch/i386/kernel/tsc.c
+++ b/arch/i386/kernel/tsc.c
@@ -24,7 +24,7 @@
24 */ 24 */
25unsigned int tsc_khz; 25unsigned int tsc_khz;
26 26
27int tsc_disable __cpuinitdata = 0; 27int tsc_disable;
28 28
29#ifdef CONFIG_X86_TSC 29#ifdef CONFIG_X86_TSC
30static int __init tsc_setup(char *str) 30static int __init tsc_setup(char *str)
diff --git a/arch/i386/mach-generic/bigsmp.c b/arch/i386/mach-generic/bigsmp.c
index 33d9f93557ba..8a210fa915b5 100644
--- a/arch/i386/mach-generic/bigsmp.c
+++ b/arch/i386/mach-generic/bigsmp.c
@@ -45,7 +45,7 @@ static struct dmi_system_id __initdata bigsmp_dmi_table[] = {
45}; 45};
46 46
47 47
48static __init int probe_bigsmp(void) 48static int probe_bigsmp(void)
49{ 49{
50 if (def_to_bigsmp) 50 if (def_to_bigsmp)
51 dmi_bigsmp = 1; 51 dmi_bigsmp = 1;
diff --git a/arch/i386/mach-generic/default.c b/arch/i386/mach-generic/default.c
index 96c19821e47d..8685208d8512 100644
--- a/arch/i386/mach-generic/default.c
+++ b/arch/i386/mach-generic/default.c
@@ -18,7 +18,7 @@
18#include <asm/mach-default/mach_mpparse.h> 18#include <asm/mach-default/mach_mpparse.h>
19 19
20/* should be called last. */ 20/* should be called last. */
21static __init int probe_default(void) 21static int probe_default(void)
22{ 22{
23 return 1; 23 return 1;
24} 24}
diff --git a/arch/i386/mach-generic/es7000.c b/arch/i386/mach-generic/es7000.c
index aa144d82334d..b8963a5a3b25 100644
--- a/arch/i386/mach-generic/es7000.c
+++ b/arch/i386/mach-generic/es7000.c
@@ -19,7 +19,7 @@
19#include <asm/mach-es7000/mach_mpparse.h> 19#include <asm/mach-es7000/mach_mpparse.h>
20#include <asm/mach-es7000/mach_wakecpu.h> 20#include <asm/mach-es7000/mach_wakecpu.h>
21 21
22static __init int probe_es7000(void) 22static int probe_es7000(void)
23{ 23{
24 /* probed later in mptable/ACPI hooks */ 24 /* probed later in mptable/ACPI hooks */
25 return 0; 25 return 0;
diff --git a/arch/i386/mach-generic/summit.c b/arch/i386/mach-generic/summit.c
index f7e5d66648dc..74883ccb8f73 100644
--- a/arch/i386/mach-generic/summit.c
+++ b/arch/i386/mach-generic/summit.c
@@ -18,7 +18,7 @@
18#include <asm/mach-summit/mach_ipi.h> 18#include <asm/mach-summit/mach_ipi.h>
19#include <asm/mach-summit/mach_mpparse.h> 19#include <asm/mach-summit/mach_mpparse.h>
20 20
21static __init int probe_summit(void) 21static int probe_summit(void)
22{ 22{
23 /* probed later in mptable/ACPI hooks */ 23 /* probed later in mptable/ACPI hooks */
24 return 0; 24 return 0;
diff --git a/arch/i386/mm/init.c b/arch/i386/mm/init.c
index 60a7e57af197..c5c5ea700cc7 100644
--- a/arch/i386/mm/init.c
+++ b/arch/i386/mm/init.c
@@ -283,7 +283,7 @@ void __init add_one_highpage_init(struct page *page, int pfn, int bad_ppro)
283 SetPageReserved(page); 283 SetPageReserved(page);
284} 284}
285 285
286static int add_one_highpage_hotplug(struct page *page, unsigned long pfn) 286static int __meminit add_one_highpage_hotplug(struct page *page, unsigned long pfn)
287{ 287{
288 free_new_highpage(page); 288 free_new_highpage(page);
289 totalram_pages++; 289 totalram_pages++;
@@ -300,7 +300,7 @@ static int add_one_highpage_hotplug(struct page *page, unsigned long pfn)
300 * has been added dynamically that would be 300 * has been added dynamically that would be
301 * onlined here is in HIGHMEM 301 * onlined here is in HIGHMEM
302 */ 302 */
303void online_page(struct page *page) 303void __meminit online_page(struct page *page)
304{ 304{
305 ClearPageReserved(page); 305 ClearPageReserved(page);
306 add_one_highpage_hotplug(page, page_to_pfn(page)); 306 add_one_highpage_hotplug(page, page_to_pfn(page));
diff --git a/arch/ia64/mm/init.c b/arch/ia64/mm/init.c
index 1a3d8a2feb94..1373fae7657f 100644
--- a/arch/ia64/mm/init.c
+++ b/arch/ia64/mm/init.c
@@ -543,7 +543,8 @@ virtual_memmap_init (u64 start, u64 end, void *arg)
543 543
544 if (map_start < map_end) 544 if (map_start < map_end)
545 memmap_init_zone((unsigned long)(map_end - map_start), 545 memmap_init_zone((unsigned long)(map_end - map_start),
546 args->nid, args->zone, page_to_pfn(map_start)); 546 args->nid, args->zone, page_to_pfn(map_start),
547 MEMMAP_EARLY);
547 return 0; 548 return 0;
548} 549}
549 550
@@ -552,7 +553,7 @@ memmap_init (unsigned long size, int nid, unsigned long zone,
552 unsigned long start_pfn) 553 unsigned long start_pfn)
553{ 554{
554 if (!vmem_map) 555 if (!vmem_map)
555 memmap_init_zone(size, nid, zone, start_pfn); 556 memmap_init_zone(size, nid, zone, start_pfn, MEMMAP_EARLY);
556 else { 557 else {
557 struct page *start; 558 struct page *start;
558 struct memmap_init_callback_data args; 559 struct memmap_init_callback_data args;
diff --git a/arch/m32r/kernel/smpboot.c b/arch/m32r/kernel/smpboot.c
index fa7865609495..48d376f47e1a 100644
--- a/arch/m32r/kernel/smpboot.c
+++ b/arch/m32r/kernel/smpboot.c
@@ -351,7 +351,7 @@ static void __init do_boot_cpu(int phys_id)
351 } 351 }
352} 352}
353 353
354int __devinit __cpu_up(unsigned int cpu_id) 354int __cpuinit __cpu_up(unsigned int cpu_id)
355{ 355{
356 int timeout; 356 int timeout;
357 357
diff --git a/arch/mips/au1000/common/pci.c b/arch/mips/au1000/common/pci.c
index da591f674893..9f8ce08e173b 100644
--- a/arch/mips/au1000/common/pci.c
+++ b/arch/mips/au1000/common/pci.c
@@ -39,15 +39,15 @@
39 39
40/* TBD */ 40/* TBD */
41static struct resource pci_io_resource = { 41static struct resource pci_io_resource = {
42 .start = PCI_IO_START, 42 .start = (resource_size_t)PCI_IO_START,
43 .end = PCI_IO_END, 43 .end = (resource_size_t)PCI_IO_END,
44 .name = "PCI IO space", 44 .name = "PCI IO space",
45 .flags = IORESOURCE_IO 45 .flags = IORESOURCE_IO
46}; 46};
47 47
48static struct resource pci_mem_resource = { 48static struct resource pci_mem_resource = {
49 .start = PCI_MEM_START, 49 .start = (resource_size_t)PCI_MEM_START,
50 .end = PCI_MEM_END, 50 .end = (resource_size_t)PCI_MEM_END,
51 .name = "PCI memory space", 51 .name = "PCI memory space",
52 .flags = IORESOURCE_MEM 52 .flags = IORESOURCE_MEM
53}; 53};
diff --git a/arch/mips/kernel/linux32.c b/arch/mips/kernel/linux32.c
index b061c9aa6302..de3fae260ff8 100644
--- a/arch/mips/kernel/linux32.c
+++ b/arch/mips/kernel/linux32.c
@@ -440,14 +440,26 @@ sys32_ipc (u32 call, int first, int second, int third, u32 ptr, u32 fifth)
440} 440}
441 441
442#ifdef CONFIG_MIPS32_N32 442#ifdef CONFIG_MIPS32_N32
443asmlinkage long sysn32_semctl(int semid, int semnum, int cmd, union semun arg) 443asmlinkage long sysn32_semctl(int semid, int semnum, int cmd, u32 arg)
444{ 444{
445 /* compat_sys_semctl expects a pointer to union semun */ 445 /* compat_sys_semctl expects a pointer to union semun */
446 u32 __user *uptr = compat_alloc_user_space(sizeof(u32)); 446 u32 __user *uptr = compat_alloc_user_space(sizeof(u32));
447 if (put_user(ptr_to_compat(arg.__pad), uptr)) 447 if (put_user(arg, uptr))
448 return -EFAULT; 448 return -EFAULT;
449 return compat_sys_semctl(semid, semnum, cmd, uptr); 449 return compat_sys_semctl(semid, semnum, cmd, uptr);
450} 450}
451
452asmlinkage long sysn32_msgsnd(int msqid, u32 msgp, unsigned msgsz, int msgflg)
453{
454 return compat_sys_msgsnd(msqid, msgsz, msgflg, compat_ptr(msgp));
455}
456
457asmlinkage long sysn32_msgrcv(int msqid, u32 msgp, size_t msgsz, int msgtyp,
458 int msgflg)
459{
460 return compat_sys_msgrcv(msqid, msgsz, msgtyp, msgflg, IPC_64,
461 compat_ptr(msgp));
462}
451#endif 463#endif
452 464
453struct sysctl_args32 465struct sysctl_args32
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S
index 34567d81f940..a7bff2a54723 100644
--- a/arch/mips/kernel/scall64-n32.S
+++ b/arch/mips/kernel/scall64-n32.S
@@ -187,8 +187,8 @@ EXPORT(sysn32_call_table)
187 PTR sysn32_semctl 187 PTR sysn32_semctl
188 PTR sys_shmdt /* 6065 */ 188 PTR sys_shmdt /* 6065 */
189 PTR sys_msgget 189 PTR sys_msgget
190 PTR compat_sys_msgsnd 190 PTR sysn32_msgsnd
191 PTR compat_sys_msgrcv 191 PTR sysn32_msgrcv
192 PTR compat_sys_msgctl 192 PTR compat_sys_msgctl
193 PTR compat_sys_fcntl /* 6070 */ 193 PTR compat_sys_fcntl /* 6070 */
194 PTR sys_flock 194 PTR sys_flock
diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c
index f2a8701e414d..0555fc554f65 100644
--- a/arch/mips/kernel/smp.c
+++ b/arch/mips/kernel/smp.c
@@ -271,7 +271,7 @@ void __devinit smp_prepare_boot_cpu(void)
271 * and keep control until "cpu_online(cpu)" is set. Note: cpu is 271 * and keep control until "cpu_online(cpu)" is set. Note: cpu is
272 * physical, not logical. 272 * physical, not logical.
273 */ 273 */
274int __devinit __cpu_up(unsigned int cpu) 274int __cpuinit __cpu_up(unsigned int cpu)
275{ 275{
276 struct task_struct *idle; 276 struct task_struct *idle;
277 277
diff --git a/arch/mips/philips/pnx8550/common/time.c b/arch/mips/philips/pnx8550/common/time.c
index f80acae07cee..68def3880a1c 100644
--- a/arch/mips/philips/pnx8550/common/time.c
+++ b/arch/mips/philips/pnx8550/common/time.c
@@ -79,6 +79,7 @@ void pnx8550_time_init(void)
79 */ 79 */
80 mips_hpt_frequency = 27UL * ((1000000UL * n)/(m * pow2p)); 80 mips_hpt_frequency = 27UL * ((1000000UL * n)/(m * pow2p));
81 cpj = (mips_hpt_frequency + HZ / 2) / HZ; 81 cpj = (mips_hpt_frequency + HZ / 2) / HZ;
82 write_c0_count(0);
82 timer_ack(); 83 timer_ack();
83 84
84 /* Setup Timer 2 */ 85 /* Setup Timer 2 */
diff --git a/arch/parisc/kernel/smp.c b/arch/parisc/kernel/smp.c
index 4a23a97b06cd..12cc019307ad 100644
--- a/arch/parisc/kernel/smp.c
+++ b/arch/parisc/kernel/smp.c
@@ -608,7 +608,7 @@ void smp_cpus_done(unsigned int cpu_max)
608} 608}
609 609
610 610
611int __devinit __cpu_up(unsigned int cpu) 611int __cpuinit __cpu_up(unsigned int cpu)
612{ 612{
613 if (cpu != 0 && cpu < parisc_max_cpus) 613 if (cpu != 0 && cpu < parisc_max_cpus)
614 smp_boot_one_cpu(cpu); 614 smp_boot_one_cpu(cpu);
diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
index 9b28c238b6c0..0e8beca460af 100644
--- a/arch/powerpc/kernel/smp.c
+++ b/arch/powerpc/kernel/smp.c
@@ -468,7 +468,7 @@ static int __devinit cpu_enable(unsigned int cpu)
468 return -ENOSYS; 468 return -ENOSYS;
469} 469}
470 470
471int __devinit __cpu_up(unsigned int cpu) 471int __cpuinit __cpu_up(unsigned int cpu)
472{ 472{
473 int c; 473 int c;
474 474
diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c
index 7f2944d3ec2a..cd3d93e8c211 100644
--- a/arch/s390/mm/vmem.c
+++ b/arch/s390/mm/vmem.c
@@ -61,7 +61,8 @@ void memmap_init(unsigned long size, int nid, unsigned long zone,
61 61
62 if (map_start < map_end) 62 if (map_start < map_end)
63 memmap_init_zone((unsigned long)(map_end - map_start), 63 memmap_init_zone((unsigned long)(map_end - map_start),
64 nid, zone, page_to_pfn(map_start)); 64 nid, zone, page_to_pfn(map_start),
65 MEMMAP_EARLY);
65 } 66 }
66} 67}
67 68
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c
index 0a4958536bcd..fc99f7b8012f 100644
--- a/arch/sparc64/kernel/smp.c
+++ b/arch/sparc64/kernel/smp.c
@@ -1388,7 +1388,7 @@ void __devinit smp_prepare_boot_cpu(void)
1388{ 1388{
1389} 1389}
1390 1390
1391int __devinit __cpu_up(unsigned int cpu) 1391int __cpuinit __cpu_up(unsigned int cpu)
1392{ 1392{
1393 int ret = smp_boot_one_cpu(cpu); 1393 int ret = smp_boot_one_cpu(cpu);
1394 1394
diff --git a/arch/x86_64/defconfig b/arch/x86_64/defconfig
index 9cc7c21547a2..69584c295305 100644
--- a/arch/x86_64/defconfig
+++ b/arch/x86_64/defconfig
@@ -1,7 +1,7 @@
1# 1#
2# Automatically generated make config: don't edit 2# Automatically generated make config: don't edit
3# Linux kernel version: 2.6.19-git14 3# Linux kernel version: 2.6.20-rc3
4# Sat Dec 9 21:23:09 2006 4# Fri Jan 5 11:54:41 2007
5# 5#
6CONFIG_X86_64=y 6CONFIG_X86_64=y
7CONFIG_64BIT=y 7CONFIG_64BIT=y
@@ -1056,6 +1056,7 @@ CONFIG_HWMON=y
1056# CONFIG_SENSORS_LM92 is not set 1056# CONFIG_SENSORS_LM92 is not set
1057# CONFIG_SENSORS_MAX1619 is not set 1057# CONFIG_SENSORS_MAX1619 is not set
1058# CONFIG_SENSORS_PC87360 is not set 1058# CONFIG_SENSORS_PC87360 is not set
1059# CONFIG_SENSORS_PC87427 is not set
1059# CONFIG_SENSORS_SIS5595 is not set 1060# CONFIG_SENSORS_SIS5595 is not set
1060# CONFIG_SENSORS_SMSC47M1 is not set 1061# CONFIG_SENSORS_SMSC47M1 is not set
1061# CONFIG_SENSORS_SMSC47M192 is not set 1062# CONFIG_SENSORS_SMSC47M192 is not set
@@ -1066,6 +1067,7 @@ CONFIG_SENSORS_SMSC47B397=m
1066# CONFIG_SENSORS_W83781D is not set 1067# CONFIG_SENSORS_W83781D is not set
1067# CONFIG_SENSORS_W83791D is not set 1068# CONFIG_SENSORS_W83791D is not set
1068# CONFIG_SENSORS_W83792D is not set 1069# CONFIG_SENSORS_W83792D is not set
1070# CONFIG_SENSORS_W83793 is not set
1069# CONFIG_SENSORS_W83L785TS is not set 1071# CONFIG_SENSORS_W83L785TS is not set
1070# CONFIG_SENSORS_W83627HF is not set 1072# CONFIG_SENSORS_W83627HF is not set
1071# CONFIG_SENSORS_W83627EHF is not set 1073# CONFIG_SENSORS_W83627EHF is not set
@@ -1311,6 +1313,11 @@ CONFIG_USB_MON=y
1311# 1313#
1312 1314
1313# 1315#
1316# Virtualization
1317#
1318# CONFIG_KVM is not set
1319
1320#
1314# Firmware Drivers 1321# Firmware Drivers
1315# 1322#
1316# CONFIG_EDD is not set 1323# CONFIG_EDD is not set
@@ -1502,6 +1509,8 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
1502# CONFIG_ENABLE_MUST_CHECK is not set 1509# CONFIG_ENABLE_MUST_CHECK is not set
1503CONFIG_MAGIC_SYSRQ=y 1510CONFIG_MAGIC_SYSRQ=y
1504CONFIG_UNUSED_SYMBOLS=y 1511CONFIG_UNUSED_SYMBOLS=y
1512CONFIG_DEBUG_FS=y
1513# CONFIG_HEADERS_CHECK is not set
1505CONFIG_DEBUG_KERNEL=y 1514CONFIG_DEBUG_KERNEL=y
1506CONFIG_LOG_BUF_SHIFT=18 1515CONFIG_LOG_BUF_SHIFT=18
1507CONFIG_DETECT_SOFTLOCKUP=y 1516CONFIG_DETECT_SOFTLOCKUP=y
@@ -1519,12 +1528,10 @@ CONFIG_DETECT_SOFTLOCKUP=y
1519# CONFIG_DEBUG_KOBJECT is not set 1528# CONFIG_DEBUG_KOBJECT is not set
1520CONFIG_DEBUG_BUGVERBOSE=y 1529CONFIG_DEBUG_BUGVERBOSE=y
1521# CONFIG_DEBUG_INFO is not set 1530# CONFIG_DEBUG_INFO is not set
1522CONFIG_DEBUG_FS=y
1523# CONFIG_DEBUG_VM is not set 1531# CONFIG_DEBUG_VM is not set
1524# CONFIG_DEBUG_LIST is not set 1532# CONFIG_DEBUG_LIST is not set
1525# CONFIG_FRAME_POINTER is not set 1533# CONFIG_FRAME_POINTER is not set
1526# CONFIG_FORCED_INLINING is not set 1534# CONFIG_FORCED_INLINING is not set
1527# CONFIG_HEADERS_CHECK is not set
1528# CONFIG_RCU_TORTURE_TEST is not set 1535# CONFIG_RCU_TORTURE_TEST is not set
1529# CONFIG_LKDTM is not set 1536# CONFIG_LKDTM is not set
1530# CONFIG_DEBUG_RODATA is not set 1537# CONFIG_DEBUG_RODATA is not set
@@ -1553,3 +1560,4 @@ CONFIG_CRC32=y
1553# CONFIG_LIBCRC32C is not set 1560# CONFIG_LIBCRC32C is not set
1554CONFIG_ZLIB_INFLATE=y 1561CONFIG_ZLIB_INFLATE=y
1555CONFIG_PLIST=y 1562CONFIG_PLIST=y
1563CONFIG_IOMAP_COPY=y
diff --git a/arch/x86_64/ia32/ia32_aout.c b/arch/x86_64/ia32/ia32_aout.c
index be87df506f39..fe83edb93c10 100644
--- a/arch/x86_64/ia32/ia32_aout.c
+++ b/arch/x86_64/ia32/ia32_aout.c
@@ -241,7 +241,7 @@ static u32 __user *create_aout_tables(char __user *p, struct linux_binprm *bprm)
241 get_user(c,p++); 241 get_user(c,p++);
242 } while (c); 242 } while (c);
243 } 243 }
244 put_user(NULL,argv); 244 put_user(0, argv);
245 current->mm->arg_end = current->mm->env_start = (unsigned long) p; 245 current->mm->arg_end = current->mm->env_start = (unsigned long) p;
246 while (envc-->0) { 246 while (envc-->0) {
247 char c; 247 char c;
@@ -250,7 +250,7 @@ static u32 __user *create_aout_tables(char __user *p, struct linux_binprm *bprm)
250 get_user(c,p++); 250 get_user(c,p++);
251 } while (c); 251 } while (c);
252 } 252 }
253 put_user(NULL,envp); 253 put_user(0, envp);
254 current->mm->env_end = (unsigned long) p; 254 current->mm->env_end = (unsigned long) p;
255 return sp; 255 return sp;
256} 256}
diff --git a/arch/x86_64/kernel/pci-calgary.c b/arch/x86_64/kernel/pci-calgary.c
index 87d90cb68a74..3d65b1d4c2b3 100644
--- a/arch/x86_64/kernel/pci-calgary.c
+++ b/arch/x86_64/kernel/pci-calgary.c
@@ -1068,6 +1068,8 @@ void __init detect_calgary(void)
1068 if (!early_pci_allowed()) 1068 if (!early_pci_allowed())
1069 return; 1069 return;
1070 1070
1071 printk(KERN_DEBUG "Calgary: detecting Calgary via BIOS EBDA area\n");
1072
1071 ptr = (unsigned long)phys_to_virt(get_bios_ebda()); 1073 ptr = (unsigned long)phys_to_virt(get_bios_ebda());
1072 1074
1073 rio_table_hdr = NULL; 1075 rio_table_hdr = NULL;
@@ -1088,14 +1090,14 @@ void __init detect_calgary(void)
1088 offset = *((unsigned short *)(ptr + offset)); 1090 offset = *((unsigned short *)(ptr + offset));
1089 } 1091 }
1090 if (!rio_table_hdr) { 1092 if (!rio_table_hdr) {
1091 printk(KERN_ERR "Calgary: Unable to locate " 1093 printk(KERN_DEBUG "Calgary: Unable to locate Rio Grande table "
1092 "Rio Grande Table in EBDA - bailing!\n"); 1094 "in EBDA - bailing!\n");
1093 return; 1095 return;
1094 } 1096 }
1095 1097
1096 ret = build_detail_arrays(); 1098 ret = build_detail_arrays();
1097 if (ret) { 1099 if (ret) {
1098 printk(KERN_ERR "Calgary: build_detail_arrays ret %d\n", ret); 1100 printk(KERN_DEBUG "Calgary: build_detail_arrays ret %d\n", ret);
1099 return; 1101 return;
1100 } 1102 }
1101 1103
@@ -1128,6 +1130,9 @@ void __init detect_calgary(void)
1128 } 1130 }
1129 } 1131 }
1130 1132
1133 printk(KERN_DEBUG "Calgary: finished detection, Calgary %s\n",
1134 calgary_found ? "found" : "not found");
1135
1131 if (calgary_found) { 1136 if (calgary_found) {
1132 iommu_detected = 1; 1137 iommu_detected = 1;
1133 calgary_detected = 1; 1138 calgary_detected = 1;
diff --git a/arch/x86_64/kernel/time.c b/arch/x86_64/kernel/time.c
index 9f05bc9b2dad..5cc76d0d331f 100644
--- a/arch/x86_64/kernel/time.c
+++ b/arch/x86_64/kernel/time.c
@@ -656,6 +656,25 @@ core_initcall(cpufreq_tsc);
656 */ 656 */
657 657
658#define TICK_COUNT 100000000 658#define TICK_COUNT 100000000
659#define TICK_MIN 5000
660
661/*
662 * Some platforms take periodic SMI interrupts with 5ms duration. Make sure none
663 * occurs between the reads of the hpet & TSC.
664 */
665static void __init read_hpet_tsc(int *hpet, int *tsc)
666{
667 int tsc1, tsc2, hpet1;
668
669 do {
670 tsc1 = get_cycles_sync();
671 hpet1 = hpet_readl(HPET_COUNTER);
672 tsc2 = get_cycles_sync();
673 } while (tsc2 - tsc1 > TICK_MIN);
674 *hpet = hpet1;
675 *tsc = tsc2;
676}
677
659 678
660static unsigned int __init hpet_calibrate_tsc(void) 679static unsigned int __init hpet_calibrate_tsc(void)
661{ 680{
@@ -666,13 +685,11 @@ static unsigned int __init hpet_calibrate_tsc(void)
666 local_irq_save(flags); 685 local_irq_save(flags);
667 local_irq_disable(); 686 local_irq_disable();
668 687
669 hpet_start = hpet_readl(HPET_COUNTER); 688 read_hpet_tsc(&hpet_start, &tsc_start);
670 rdtscl(tsc_start);
671 689
672 do { 690 do {
673 local_irq_disable(); 691 local_irq_disable();
674 hpet_now = hpet_readl(HPET_COUNTER); 692 read_hpet_tsc(&hpet_now, &tsc_now);
675 tsc_now = get_cycles_sync();
676 local_irq_restore(flags); 693 local_irq_restore(flags);
677 } while ((tsc_now - tsc_start) < TICK_COUNT && 694 } while ((tsc_now - tsc_start) < TICK_COUNT &&
678 (hpet_now - hpet_start) < TICK_COUNT); 695 (hpet_now - hpet_start) < TICK_COUNT);