diff options
Diffstat (limited to 'arch/alpha')
-rw-r--r-- | arch/alpha/Kconfig | 5 | ||||
-rw-r--r-- | arch/alpha/Makefile | 11 | ||||
-rw-r--r-- | arch/alpha/kernel/alpha_ksyms.c | 9 | ||||
-rw-r--r-- | arch/alpha/kernel/entry.S | 2 | ||||
-rw-r--r-- | arch/alpha/kernel/head.S | 2 | ||||
-rw-r--r-- | arch/alpha/kernel/module.c | 8 | ||||
-rw-r--r-- | arch/alpha/kernel/osf_sys.c | 7 | ||||
-rw-r--r-- | arch/alpha/kernel/signal.c | 11 | ||||
-rw-r--r-- | arch/alpha/kernel/smp.c | 172 | ||||
-rw-r--r-- | arch/alpha/kernel/sys_marvel.c | 5 | ||||
-rw-r--r-- | arch/alpha/kernel/time.c | 7 | ||||
-rw-r--r-- | arch/alpha/lib/dbg_stackcheck.S | 2 | ||||
-rw-r--r-- | arch/alpha/lib/dbg_stackkill.S | 2 | ||||
-rw-r--r-- | arch/alpha/oprofile/common.c | 6 |
14 files changed, 28 insertions, 221 deletions
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig index 083c5df42d35..786491f9ceb2 100644 --- a/arch/alpha/Kconfig +++ b/arch/alpha/Kconfig | |||
@@ -479,6 +479,9 @@ config EISA | |||
479 | depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE | 479 | depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE |
480 | default y | 480 | default y |
481 | 481 | ||
482 | config ARCH_MAY_HAVE_PC_FDC | ||
483 | def_bool y | ||
484 | |||
482 | config SMP | 485 | config SMP |
483 | bool "Symmetric multi-processing support" | 486 | bool "Symmetric multi-processing support" |
484 | depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL | 487 | depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL |
@@ -522,7 +525,7 @@ source "mm/Kconfig" | |||
522 | 525 | ||
523 | config NUMA | 526 | config NUMA |
524 | bool "NUMA Support (EXPERIMENTAL)" | 527 | bool "NUMA Support (EXPERIMENTAL)" |
525 | depends on DISCONTIGMEM | 528 | depends on DISCONTIGMEM && BROKEN |
526 | help | 529 | help |
527 | Say Y to compile the kernel to support NUMA (Non-Uniform Memory | 530 | Say Y to compile the kernel to support NUMA (Non-Uniform Memory |
528 | Access). This option is for configuring high-end multiprocessor | 531 | Access). This option is for configuring high-end multiprocessor |
diff --git a/arch/alpha/Makefile b/arch/alpha/Makefile index 22ebfb2be0e4..1b704ee54bf3 100644 --- a/arch/alpha/Makefile +++ b/arch/alpha/Makefile | |||
@@ -108,20 +108,9 @@ $(boot)/vmlinux.gz: vmlinux | |||
108 | bootimage bootpfile bootpzfile: vmlinux | 108 | bootimage bootpfile bootpzfile: vmlinux |
109 | $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ | 109 | $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ |
110 | 110 | ||
111 | |||
112 | prepare: include/asm-$(ARCH)/asm_offsets.h | ||
113 | |||
114 | arch/$(ARCH)/kernel/asm-offsets.s: include/asm include/linux/version.h \ | ||
115 | include/config/MARKER | ||
116 | |||
117 | include/asm-$(ARCH)/asm_offsets.h: arch/$(ARCH)/kernel/asm-offsets.s | ||
118 | $(call filechk,gen-asm-offsets) | ||
119 | |||
120 | archclean: | 111 | archclean: |
121 | $(Q)$(MAKE) $(clean)=$(boot) | 112 | $(Q)$(MAKE) $(clean)=$(boot) |
122 | 113 | ||
123 | CLEAN_FILES += include/asm-$(ARCH)/asm_offsets.h | ||
124 | |||
125 | define archhelp | 114 | define archhelp |
126 | echo '* boot - Compressed kernel image (arch/alpha/boot/vmlinux.gz)' | 115 | echo '* boot - Compressed kernel image (arch/alpha/boot/vmlinux.gz)' |
127 | echo ' bootimage - SRM bootable image (arch/alpha/boot/bootimage)' | 116 | echo ' bootimage - SRM bootable image (arch/alpha/boot/bootimage)' |
diff --git a/arch/alpha/kernel/alpha_ksyms.c b/arch/alpha/kernel/alpha_ksyms.c index fc5ef90c4fc9..24ae9a366073 100644 --- a/arch/alpha/kernel/alpha_ksyms.c +++ b/arch/alpha/kernel/alpha_ksyms.c | |||
@@ -185,15 +185,6 @@ EXPORT_SYMBOL(smp_num_cpus); | |||
185 | EXPORT_SYMBOL(smp_call_function); | 185 | EXPORT_SYMBOL(smp_call_function); |
186 | EXPORT_SYMBOL(smp_call_function_on_cpu); | 186 | EXPORT_SYMBOL(smp_call_function_on_cpu); |
187 | EXPORT_SYMBOL(_atomic_dec_and_lock); | 187 | EXPORT_SYMBOL(_atomic_dec_and_lock); |
188 | #ifdef CONFIG_DEBUG_SPINLOCK | ||
189 | EXPORT_SYMBOL(_raw_spin_unlock); | ||
190 | EXPORT_SYMBOL(debug_spin_lock); | ||
191 | EXPORT_SYMBOL(debug_spin_trylock); | ||
192 | #endif | ||
193 | #ifdef CONFIG_DEBUG_RWLOCK | ||
194 | EXPORT_SYMBOL(_raw_write_lock); | ||
195 | EXPORT_SYMBOL(_raw_read_lock); | ||
196 | #endif | ||
197 | EXPORT_SYMBOL(cpu_present_mask); | 188 | EXPORT_SYMBOL(cpu_present_mask); |
198 | #endif /* CONFIG_SMP */ | 189 | #endif /* CONFIG_SMP */ |
199 | 190 | ||
diff --git a/arch/alpha/kernel/entry.S b/arch/alpha/kernel/entry.S index f0927ee53f29..76cc0cb5fc2e 100644 --- a/arch/alpha/kernel/entry.S +++ b/arch/alpha/kernel/entry.S | |||
@@ -5,7 +5,7 @@ | |||
5 | */ | 5 | */ |
6 | 6 | ||
7 | #include <linux/config.h> | 7 | #include <linux/config.h> |
8 | #include <asm/asm_offsets.h> | 8 | #include <asm/asm-offsets.h> |
9 | #include <asm/thread_info.h> | 9 | #include <asm/thread_info.h> |
10 | #include <asm/pal.h> | 10 | #include <asm/pal.h> |
11 | #include <asm/errno.h> | 11 | #include <asm/errno.h> |
diff --git a/arch/alpha/kernel/head.S b/arch/alpha/kernel/head.S index 4ca2e404708a..0905721fcbca 100644 --- a/arch/alpha/kernel/head.S +++ b/arch/alpha/kernel/head.S | |||
@@ -9,7 +9,7 @@ | |||
9 | 9 | ||
10 | #include <linux/config.h> | 10 | #include <linux/config.h> |
11 | #include <asm/system.h> | 11 | #include <asm/system.h> |
12 | #include <asm/asm_offsets.h> | 12 | #include <asm/asm-offsets.h> |
13 | 13 | ||
14 | .globl swapper_pg_dir | 14 | .globl swapper_pg_dir |
15 | .globl _stext | 15 | .globl _stext |
diff --git a/arch/alpha/kernel/module.c b/arch/alpha/kernel/module.c index fc271e316a38..aac6d4b22f7a 100644 --- a/arch/alpha/kernel/module.c +++ b/arch/alpha/kernel/module.c | |||
@@ -47,7 +47,7 @@ module_free(struct module *mod, void *module_region) | |||
47 | 47 | ||
48 | struct got_entry { | 48 | struct got_entry { |
49 | struct got_entry *next; | 49 | struct got_entry *next; |
50 | Elf64_Addr r_offset; | 50 | Elf64_Sxword r_addend; |
51 | int got_offset; | 51 | int got_offset; |
52 | }; | 52 | }; |
53 | 53 | ||
@@ -57,14 +57,14 @@ process_reloc_for_got(Elf64_Rela *rela, | |||
57 | { | 57 | { |
58 | unsigned long r_sym = ELF64_R_SYM (rela->r_info); | 58 | unsigned long r_sym = ELF64_R_SYM (rela->r_info); |
59 | unsigned long r_type = ELF64_R_TYPE (rela->r_info); | 59 | unsigned long r_type = ELF64_R_TYPE (rela->r_info); |
60 | Elf64_Addr r_offset = rela->r_offset; | 60 | Elf64_Sxword r_addend = rela->r_addend; |
61 | struct got_entry *g; | 61 | struct got_entry *g; |
62 | 62 | ||
63 | if (r_type != R_ALPHA_LITERAL) | 63 | if (r_type != R_ALPHA_LITERAL) |
64 | return; | 64 | return; |
65 | 65 | ||
66 | for (g = chains + r_sym; g ; g = g->next) | 66 | for (g = chains + r_sym; g ; g = g->next) |
67 | if (g->r_offset == r_offset) { | 67 | if (g->r_addend == r_addend) { |
68 | if (g->got_offset == 0) { | 68 | if (g->got_offset == 0) { |
69 | g->got_offset = *poffset; | 69 | g->got_offset = *poffset; |
70 | *poffset += 8; | 70 | *poffset += 8; |
@@ -74,7 +74,7 @@ process_reloc_for_got(Elf64_Rela *rela, | |||
74 | 74 | ||
75 | g = kmalloc (sizeof (*g), GFP_KERNEL); | 75 | g = kmalloc (sizeof (*g), GFP_KERNEL); |
76 | g->next = chains[r_sym].next; | 76 | g->next = chains[r_sym].next; |
77 | g->r_offset = r_offset; | 77 | g->r_addend = r_addend; |
78 | g->got_offset = *poffset; | 78 | g->got_offset = *poffset; |
79 | *poffset += 8; | 79 | *poffset += 8; |
80 | chains[r_sym].next = g; | 80 | chains[r_sym].next = g; |
diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c index 167fd89f8707..0636116210d2 100644 --- a/arch/alpha/kernel/osf_sys.c +++ b/arch/alpha/kernel/osf_sys.c | |||
@@ -974,6 +974,7 @@ osf_select(int n, fd_set __user *inp, fd_set __user *outp, fd_set __user *exp, | |||
974 | size_t size; | 974 | size_t size; |
975 | long timeout; | 975 | long timeout; |
976 | int ret = -EINVAL; | 976 | int ret = -EINVAL; |
977 | struct fdtable *fdt; | ||
977 | 978 | ||
978 | timeout = MAX_SCHEDULE_TIMEOUT; | 979 | timeout = MAX_SCHEDULE_TIMEOUT; |
979 | if (tvp) { | 980 | if (tvp) { |
@@ -995,7 +996,8 @@ osf_select(int n, fd_set __user *inp, fd_set __user *outp, fd_set __user *exp, | |||
995 | } | 996 | } |
996 | } | 997 | } |
997 | 998 | ||
998 | if (n < 0 || n > current->files->max_fdset) | 999 | fdt = files_fdtable(current->files); |
1000 | if (n < 0 || n > fdt->max_fdset) | ||
999 | goto out_nofds; | 1001 | goto out_nofds; |
1000 | 1002 | ||
1001 | /* | 1003 | /* |
@@ -1152,8 +1154,7 @@ osf_usleep_thread(struct timeval32 __user *sleep, struct timeval32 __user *remai | |||
1152 | 1154 | ||
1153 | ticks = timeval_to_jiffies(&tmp); | 1155 | ticks = timeval_to_jiffies(&tmp); |
1154 | 1156 | ||
1155 | current->state = TASK_INTERRUPTIBLE; | 1157 | ticks = schedule_timeout_interruptible(ticks); |
1156 | ticks = schedule_timeout(ticks); | ||
1157 | 1158 | ||
1158 | if (remain) { | 1159 | if (remain) { |
1159 | jiffies_to_timeval(ticks, &tmp); | 1160 | jiffies_to_timeval(ticks, &tmp); |
diff --git a/arch/alpha/kernel/signal.c b/arch/alpha/kernel/signal.c index 08fe8071a7f8..2e45e8604e32 100644 --- a/arch/alpha/kernel/signal.c +++ b/arch/alpha/kernel/signal.c | |||
@@ -566,13 +566,12 @@ handle_signal(int sig, struct k_sigaction *ka, siginfo_t *info, | |||
566 | if (ka->sa.sa_flags & SA_RESETHAND) | 566 | if (ka->sa.sa_flags & SA_RESETHAND) |
567 | ka->sa.sa_handler = SIG_DFL; | 567 | ka->sa.sa_handler = SIG_DFL; |
568 | 568 | ||
569 | if (!(ka->sa.sa_flags & SA_NODEFER)) { | 569 | spin_lock_irq(¤t->sighand->siglock); |
570 | spin_lock_irq(¤t->sighand->siglock); | 570 | sigorsets(¤t->blocked,¤t->blocked,&ka->sa.sa_mask); |
571 | sigorsets(¤t->blocked,¤t->blocked,&ka->sa.sa_mask); | 571 | if (!(ka->sa.sa_flags & SA_NODEFER)) |
572 | sigaddset(¤t->blocked,sig); | 572 | sigaddset(¤t->blocked,sig); |
573 | recalc_sigpending(); | 573 | recalc_sigpending(); |
574 | spin_unlock_irq(¤t->sighand->siglock); | 574 | spin_unlock_irq(¤t->sighand->siglock); |
575 | } | ||
576 | } | 575 | } |
577 | 576 | ||
578 | static inline void | 577 | static inline void |
diff --git a/arch/alpha/kernel/smp.c b/arch/alpha/kernel/smp.c index 8f1e78551b1e..da0be3465791 100644 --- a/arch/alpha/kernel/smp.c +++ b/arch/alpha/kernel/smp.c | |||
@@ -989,175 +989,3 @@ flush_icache_user_range(struct vm_area_struct *vma, struct page *page, | |||
989 | 989 | ||
990 | preempt_enable(); | 990 | preempt_enable(); |
991 | } | 991 | } |
992 | |||
993 | #ifdef CONFIG_DEBUG_SPINLOCK | ||
994 | void | ||
995 | _raw_spin_unlock(spinlock_t * lock) | ||
996 | { | ||
997 | mb(); | ||
998 | lock->lock = 0; | ||
999 | |||
1000 | lock->on_cpu = -1; | ||
1001 | lock->previous = NULL; | ||
1002 | lock->task = NULL; | ||
1003 | lock->base_file = "none"; | ||
1004 | lock->line_no = 0; | ||
1005 | } | ||
1006 | |||
1007 | void | ||
1008 | debug_spin_lock(spinlock_t * lock, const char *base_file, int line_no) | ||
1009 | { | ||
1010 | long tmp; | ||
1011 | long stuck; | ||
1012 | void *inline_pc = __builtin_return_address(0); | ||
1013 | unsigned long started = jiffies; | ||
1014 | int printed = 0; | ||
1015 | int cpu = smp_processor_id(); | ||
1016 | |||
1017 | stuck = 1L << 30; | ||
1018 | try_again: | ||
1019 | |||
1020 | /* Use sub-sections to put the actual loop at the end | ||
1021 | of this object file's text section so as to perfect | ||
1022 | branch prediction. */ | ||
1023 | __asm__ __volatile__( | ||
1024 | "1: ldl_l %0,%1\n" | ||
1025 | " subq %2,1,%2\n" | ||
1026 | " blbs %0,2f\n" | ||
1027 | " or %0,1,%0\n" | ||
1028 | " stl_c %0,%1\n" | ||
1029 | " beq %0,3f\n" | ||
1030 | "4: mb\n" | ||
1031 | ".subsection 2\n" | ||
1032 | "2: ldl %0,%1\n" | ||
1033 | " subq %2,1,%2\n" | ||
1034 | "3: blt %2,4b\n" | ||
1035 | " blbs %0,2b\n" | ||
1036 | " br 1b\n" | ||
1037 | ".previous" | ||
1038 | : "=r" (tmp), "=m" (lock->lock), "=r" (stuck) | ||
1039 | : "1" (lock->lock), "2" (stuck) : "memory"); | ||
1040 | |||
1041 | if (stuck < 0) { | ||
1042 | printk(KERN_WARNING | ||
1043 | "%s:%d spinlock stuck in %s at %p(%d)" | ||
1044 | " owner %s at %p(%d) %s:%d\n", | ||
1045 | base_file, line_no, | ||
1046 | current->comm, inline_pc, cpu, | ||
1047 | lock->task->comm, lock->previous, | ||
1048 | lock->on_cpu, lock->base_file, lock->line_no); | ||
1049 | stuck = 1L << 36; | ||
1050 | printed = 1; | ||
1051 | goto try_again; | ||
1052 | } | ||
1053 | |||
1054 | /* Exiting. Got the lock. */ | ||
1055 | lock->on_cpu = cpu; | ||
1056 | lock->previous = inline_pc; | ||
1057 | lock->task = current; | ||
1058 | lock->base_file = base_file; | ||
1059 | lock->line_no = line_no; | ||
1060 | |||
1061 | if (printed) { | ||
1062 | printk(KERN_WARNING | ||
1063 | "%s:%d spinlock grabbed in %s at %p(%d) %ld ticks\n", | ||
1064 | base_file, line_no, current->comm, inline_pc, | ||
1065 | cpu, jiffies - started); | ||
1066 | } | ||
1067 | } | ||
1068 | |||
1069 | int | ||
1070 | debug_spin_trylock(spinlock_t * lock, const char *base_file, int line_no) | ||
1071 | { | ||
1072 | int ret; | ||
1073 | if ((ret = !test_and_set_bit(0, lock))) { | ||
1074 | lock->on_cpu = smp_processor_id(); | ||
1075 | lock->previous = __builtin_return_address(0); | ||
1076 | lock->task = current; | ||
1077 | } else { | ||
1078 | lock->base_file = base_file; | ||
1079 | lock->line_no = line_no; | ||
1080 | } | ||
1081 | return ret; | ||
1082 | } | ||
1083 | #endif /* CONFIG_DEBUG_SPINLOCK */ | ||
1084 | |||
1085 | #ifdef CONFIG_DEBUG_RWLOCK | ||
1086 | void _raw_write_lock(rwlock_t * lock) | ||
1087 | { | ||
1088 | long regx, regy; | ||
1089 | int stuck_lock, stuck_reader; | ||
1090 | void *inline_pc = __builtin_return_address(0); | ||
1091 | |||
1092 | try_again: | ||
1093 | |||
1094 | stuck_lock = 1<<30; | ||
1095 | stuck_reader = 1<<30; | ||
1096 | |||
1097 | __asm__ __volatile__( | ||
1098 | "1: ldl_l %1,%0\n" | ||
1099 | " blbs %1,6f\n" | ||
1100 | " blt %1,8f\n" | ||
1101 | " mov 1,%1\n" | ||
1102 | " stl_c %1,%0\n" | ||
1103 | " beq %1,6f\n" | ||
1104 | "4: mb\n" | ||
1105 | ".subsection 2\n" | ||
1106 | "6: blt %3,4b # debug\n" | ||
1107 | " subl %3,1,%3 # debug\n" | ||
1108 | " ldl %1,%0\n" | ||
1109 | " blbs %1,6b\n" | ||
1110 | "8: blt %4,4b # debug\n" | ||
1111 | " subl %4,1,%4 # debug\n" | ||
1112 | " ldl %1,%0\n" | ||
1113 | " blt %1,8b\n" | ||
1114 | " br 1b\n" | ||
1115 | ".previous" | ||
1116 | : "=m" (*(volatile int *)lock), "=&r" (regx), "=&r" (regy), | ||
1117 | "=&r" (stuck_lock), "=&r" (stuck_reader) | ||
1118 | : "0" (*(volatile int *)lock), "3" (stuck_lock), "4" (stuck_reader) : "memory"); | ||
1119 | |||
1120 | if (stuck_lock < 0) { | ||
1121 | printk(KERN_WARNING "write_lock stuck at %p\n", inline_pc); | ||
1122 | goto try_again; | ||
1123 | } | ||
1124 | if (stuck_reader < 0) { | ||
1125 | printk(KERN_WARNING "write_lock stuck on readers at %p\n", | ||
1126 | inline_pc); | ||
1127 | goto try_again; | ||
1128 | } | ||
1129 | } | ||
1130 | |||
1131 | void _raw_read_lock(rwlock_t * lock) | ||
1132 | { | ||
1133 | long regx; | ||
1134 | int stuck_lock; | ||
1135 | void *inline_pc = __builtin_return_address(0); | ||
1136 | |||
1137 | try_again: | ||
1138 | |||
1139 | stuck_lock = 1<<30; | ||
1140 | |||
1141 | __asm__ __volatile__( | ||
1142 | "1: ldl_l %1,%0;" | ||
1143 | " blbs %1,6f;" | ||
1144 | " subl %1,2,%1;" | ||
1145 | " stl_c %1,%0;" | ||
1146 | " beq %1,6f;" | ||
1147 | "4: mb\n" | ||
1148 | ".subsection 2\n" | ||
1149 | "6: ldl %1,%0;" | ||
1150 | " blt %2,4b # debug\n" | ||
1151 | " subl %2,1,%2 # debug\n" | ||
1152 | " blbs %1,6b;" | ||
1153 | " br 1b\n" | ||
1154 | ".previous" | ||
1155 | : "=m" (*(volatile int *)lock), "=&r" (regx), "=&r" (stuck_lock) | ||
1156 | : "0" (*(volatile int *)lock), "2" (stuck_lock) : "memory"); | ||
1157 | |||
1158 | if (stuck_lock < 0) { | ||
1159 | printk(KERN_WARNING "read_lock stuck at %p\n", inline_pc); | ||
1160 | goto try_again; | ||
1161 | } | ||
1162 | } | ||
1163 | #endif /* CONFIG_DEBUG_RWLOCK */ | ||
diff --git a/arch/alpha/kernel/sys_marvel.c b/arch/alpha/kernel/sys_marvel.c index 804727853d25..e32fee505220 100644 --- a/arch/alpha/kernel/sys_marvel.c +++ b/arch/alpha/kernel/sys_marvel.c | |||
@@ -373,12 +373,11 @@ marvel_map_irq(struct pci_dev *dev, u8 slot, u8 pin) | |||
373 | irq += 0x80; /* offset for lsi */ | 373 | irq += 0x80; /* offset for lsi */ |
374 | 374 | ||
375 | #if 1 | 375 | #if 1 |
376 | printk("PCI:%d:%d:%d (hose %d) [%s] is using MSI\n", | 376 | printk("PCI:%d:%d:%d (hose %d) is using MSI\n", |
377 | dev->bus->number, | 377 | dev->bus->number, |
378 | PCI_SLOT(dev->devfn), | 378 | PCI_SLOT(dev->devfn), |
379 | PCI_FUNC(dev->devfn), | 379 | PCI_FUNC(dev->devfn), |
380 | hose->index, | 380 | hose->index); |
381 | pci_pretty_name (dev)); | ||
382 | printk(" %d message(s) from 0x%04x\n", | 381 | printk(" %d message(s) from 0x%04x\n", |
383 | 1 << ((msg_ctl & PCI_MSI_FLAGS_QSIZE) >> 4), | 382 | 1 << ((msg_ctl & PCI_MSI_FLAGS_QSIZE) >> 4), |
384 | msg_dat); | 383 | msg_dat); |
diff --git a/arch/alpha/kernel/time.c b/arch/alpha/kernel/time.c index 8226c5cd788c..67be50b7d80a 100644 --- a/arch/alpha/kernel/time.c +++ b/arch/alpha/kernel/time.c | |||
@@ -149,7 +149,7 @@ irqreturn_t timer_interrupt(int irq, void *dev, struct pt_regs * regs) | |||
149 | * CMOS clock accordingly every ~11 minutes. Set_rtc_mmss() has to be | 149 | * CMOS clock accordingly every ~11 minutes. Set_rtc_mmss() has to be |
150 | * called as close as possible to 500 ms before the new second starts. | 150 | * called as close as possible to 500 ms before the new second starts. |
151 | */ | 151 | */ |
152 | if ((time_status & STA_UNSYNC) == 0 | 152 | if (ntp_synced() |
153 | && xtime.tv_sec > state.last_rtc_update + 660 | 153 | && xtime.tv_sec > state.last_rtc_update + 660 |
154 | && xtime.tv_nsec >= 500000 - ((unsigned) TICK_SIZE) / 2 | 154 | && xtime.tv_nsec >= 500000 - ((unsigned) TICK_SIZE) / 2 |
155 | && xtime.tv_nsec <= 500000 + ((unsigned) TICK_SIZE) / 2) { | 155 | && xtime.tv_nsec <= 500000 + ((unsigned) TICK_SIZE) / 2) { |
@@ -502,10 +502,7 @@ do_settimeofday(struct timespec *tv) | |||
502 | set_normalized_timespec(&xtime, sec, nsec); | 502 | set_normalized_timespec(&xtime, sec, nsec); |
503 | set_normalized_timespec(&wall_to_monotonic, wtm_sec, wtm_nsec); | 503 | set_normalized_timespec(&wall_to_monotonic, wtm_sec, wtm_nsec); |
504 | 504 | ||
505 | time_adjust = 0; /* stop active adjtime() */ | 505 | ntp_clear(); |
506 | time_status |= STA_UNSYNC; | ||
507 | time_maxerror = NTP_PHASE_LIMIT; | ||
508 | time_esterror = NTP_PHASE_LIMIT; | ||
509 | 506 | ||
510 | write_sequnlock_irq(&xtime_lock); | 507 | write_sequnlock_irq(&xtime_lock); |
511 | clock_was_set(); | 508 | clock_was_set(); |
diff --git a/arch/alpha/lib/dbg_stackcheck.S b/arch/alpha/lib/dbg_stackcheck.S index cc5ce3a5fcad..3c1f3e6522e5 100644 --- a/arch/alpha/lib/dbg_stackcheck.S +++ b/arch/alpha/lib/dbg_stackcheck.S | |||
@@ -5,7 +5,7 @@ | |||
5 | * Verify that we have not overflowed the stack. Oops if we have. | 5 | * Verify that we have not overflowed the stack. Oops if we have. |
6 | */ | 6 | */ |
7 | 7 | ||
8 | #include <asm/asm_offsets.h> | 8 | #include <asm/asm-offsets.h> |
9 | 9 | ||
10 | .text | 10 | .text |
11 | .set noat | 11 | .set noat |
diff --git a/arch/alpha/lib/dbg_stackkill.S b/arch/alpha/lib/dbg_stackkill.S index e09f2ae1e09e..e9f6a9dcf2b7 100644 --- a/arch/alpha/lib/dbg_stackkill.S +++ b/arch/alpha/lib/dbg_stackkill.S | |||
@@ -6,7 +6,7 @@ | |||
6 | * uninitialized local variables in the act. | 6 | * uninitialized local variables in the act. |
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <asm/asm_offsets.h> | 9 | #include <asm/asm-offsets.h> |
10 | 10 | ||
11 | .text | 11 | .text |
12 | .set noat | 12 | .set noat |
diff --git a/arch/alpha/oprofile/common.c b/arch/alpha/oprofile/common.c index 908eb4af8dec..ba788cfdc3c6 100644 --- a/arch/alpha/oprofile/common.c +++ b/arch/alpha/oprofile/common.c | |||
@@ -65,7 +65,7 @@ op_axp_setup(void) | |||
65 | model->reg_setup(®, ctr, &sys); | 65 | model->reg_setup(®, ctr, &sys); |
66 | 66 | ||
67 | /* Configure the registers on all cpus. */ | 67 | /* Configure the registers on all cpus. */ |
68 | smp_call_function(model->cpu_setup, ®, 0, 1); | 68 | (void)smp_call_function(model->cpu_setup, ®, 0, 1); |
69 | model->cpu_setup(®); | 69 | model->cpu_setup(®); |
70 | return 0; | 70 | return 0; |
71 | } | 71 | } |
@@ -86,7 +86,7 @@ op_axp_cpu_start(void *dummy) | |||
86 | static int | 86 | static int |
87 | op_axp_start(void) | 87 | op_axp_start(void) |
88 | { | 88 | { |
89 | smp_call_function(op_axp_cpu_start, NULL, 0, 1); | 89 | (void)smp_call_function(op_axp_cpu_start, NULL, 0, 1); |
90 | op_axp_cpu_start(NULL); | 90 | op_axp_cpu_start(NULL); |
91 | return 0; | 91 | return 0; |
92 | } | 92 | } |
@@ -101,7 +101,7 @@ op_axp_cpu_stop(void *dummy) | |||
101 | static void | 101 | static void |
102 | op_axp_stop(void) | 102 | op_axp_stop(void) |
103 | { | 103 | { |
104 | smp_call_function(op_axp_cpu_stop, NULL, 0, 1); | 104 | (void)smp_call_function(op_axp_cpu_stop, NULL, 0, 1); |
105 | op_axp_cpu_stop(NULL); | 105 | op_axp_cpu_stop(NULL); |
106 | } | 106 | } |
107 | 107 | ||