diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-09-05 12:41:38 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-09-05 12:41:38 -0400 |
commit | 6caffe21ddeaae4a9d18d46eed2445a8d269a1fe (patch) | |
tree | a92a9584e2a19e1ae8da316e0a9d6f3a7ceed530 /arch/alpha | |
parent | f32c9e059eb6c12a4296003489b167f8eef9d201 (diff) | |
parent | d9e3cb2f9ed91020b780ee662bdec692a3f276c9 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha
Pull alpha updates from Matt Turner:
"This contains some small clean up patches I've neglected, and some
build improvements from Ben Hutchings"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:
alpha: math-emu: Fix modular build
alpha: Restore symbol versions for symbols exported from assembly
alpha: defconfig: Cleanup from old Kconfig options
alpha: use kobj_to_dev()
alpha: squash lines for immediate return
alpha: kernel: Use vma_pages()
alpha: silence a buffer overflow warning
alpha: marvel: make use of raw_spinlock variants
alpha: cleanup: remove __NR_sys_epoll_*, leave __NR_epoll_*
alpha: use generic fb.h
Diffstat (limited to 'arch/alpha')
-rw-r--r-- | arch/alpha/defconfig | 2 | ||||
-rw-r--r-- | arch/alpha/include/asm/Kbuild | 1 | ||||
-rw-r--r-- | arch/alpha/include/asm/asm-prototypes.h | 18 | ||||
-rw-r--r-- | arch/alpha/include/asm/core_marvel.h | 2 | ||||
-rw-r--r-- | arch/alpha/include/asm/fb.h | 13 | ||||
-rw-r--r-- | arch/alpha/include/uapi/asm/unistd.h | 5 | ||||
-rw-r--r-- | arch/alpha/kernel/core_marvel.c | 2 | ||||
-rw-r--r-- | arch/alpha/kernel/pci-noop.c | 6 | ||||
-rw-r--r-- | arch/alpha/kernel/pci-sysfs.c | 7 | ||||
-rw-r--r-- | arch/alpha/kernel/pci.c | 6 | ||||
-rw-r--r-- | arch/alpha/kernel/setup.c | 5 | ||||
-rw-r--r-- | arch/alpha/kernel/smc37c669.c | 7 | ||||
-rw-r--r-- | arch/alpha/kernel/sys_marvel.c | 12 | ||||
-rw-r--r-- | arch/alpha/kernel/traps.c | 2 | ||||
-rw-r--r-- | arch/alpha/math-emu/math.c | 1 |
15 files changed, 40 insertions, 49 deletions
diff --git a/arch/alpha/defconfig b/arch/alpha/defconfig index 539e8b5a6cbd..f4ec420d7f2d 100644 --- a/arch/alpha/defconfig +++ b/arch/alpha/defconfig | |||
@@ -19,7 +19,6 @@ CONFIG_INET_AH=m | |||
19 | CONFIG_INET_ESP=m | 19 | CONFIG_INET_ESP=m |
20 | # CONFIG_IPV6 is not set | 20 | # CONFIG_IPV6 is not set |
21 | CONFIG_NETFILTER=y | 21 | CONFIG_NETFILTER=y |
22 | CONFIG_IP_NF_QUEUE=m | ||
23 | CONFIG_IP_NF_IPTABLES=m | 22 | CONFIG_IP_NF_IPTABLES=m |
24 | CONFIG_IP_NF_FILTER=m | 23 | CONFIG_IP_NF_FILTER=m |
25 | CONFIG_VLAN_8021Q=m | 24 | CONFIG_VLAN_8021Q=m |
@@ -57,7 +56,6 @@ CONFIG_SERIAL_8250_CONSOLE=y | |||
57 | CONFIG_RTC=y | 56 | CONFIG_RTC=y |
58 | CONFIG_EXT2_FS=y | 57 | CONFIG_EXT2_FS=y |
59 | CONFIG_REISERFS_FS=m | 58 | CONFIG_REISERFS_FS=m |
60 | CONFIG_AUTOFS_FS=m | ||
61 | CONFIG_ISO9660_FS=y | 59 | CONFIG_ISO9660_FS=y |
62 | CONFIG_MSDOS_FS=y | 60 | CONFIG_MSDOS_FS=y |
63 | CONFIG_VFAT_FS=y | 61 | CONFIG_VFAT_FS=y |
diff --git a/arch/alpha/include/asm/Kbuild b/arch/alpha/include/asm/Kbuild index d103db5af5ff..5b974ab8425c 100644 --- a/arch/alpha/include/asm/Kbuild +++ b/arch/alpha/include/asm/Kbuild | |||
@@ -3,6 +3,7 @@ | |||
3 | generic-y += clkdev.h | 3 | generic-y += clkdev.h |
4 | generic-y += exec.h | 4 | generic-y += exec.h |
5 | generic-y += export.h | 5 | generic-y += export.h |
6 | generic-y += fb.h | ||
6 | generic-y += irq_work.h | 7 | generic-y += irq_work.h |
7 | generic-y += mcs_spinlock.h | 8 | generic-y += mcs_spinlock.h |
8 | generic-y += mm-arch-hooks.h | 9 | generic-y += mm-arch-hooks.h |
diff --git a/arch/alpha/include/asm/asm-prototypes.h b/arch/alpha/include/asm/asm-prototypes.h new file mode 100644 index 000000000000..d12c68ea340b --- /dev/null +++ b/arch/alpha/include/asm/asm-prototypes.h | |||
@@ -0,0 +1,18 @@ | |||
1 | #include <linux/spinlock.h> | ||
2 | |||
3 | #include <asm/checksum.h> | ||
4 | #include <asm/console.h> | ||
5 | #include <asm/page.h> | ||
6 | #include <asm/string.h> | ||
7 | #include <asm/uaccess.h> | ||
8 | |||
9 | #include <asm-generic/asm-prototypes.h> | ||
10 | |||
11 | extern void __divl(void); | ||
12 | extern void __reml(void); | ||
13 | extern void __divq(void); | ||
14 | extern void __remq(void); | ||
15 | extern void __divlu(void); | ||
16 | extern void __remlu(void); | ||
17 | extern void __divqu(void); | ||
18 | extern void __remqu(void); | ||
diff --git a/arch/alpha/include/asm/core_marvel.h b/arch/alpha/include/asm/core_marvel.h index dad300fa14ce..8dcf9dbda618 100644 --- a/arch/alpha/include/asm/core_marvel.h +++ b/arch/alpha/include/asm/core_marvel.h | |||
@@ -312,7 +312,7 @@ struct io7 { | |||
312 | io7_port7_csrs *csrs; | 312 | io7_port7_csrs *csrs; |
313 | struct io7_port ports[IO7_NUM_PORTS]; | 313 | struct io7_port ports[IO7_NUM_PORTS]; |
314 | 314 | ||
315 | spinlock_t irq_lock; | 315 | raw_spinlock_t irq_lock; |
316 | }; | 316 | }; |
317 | 317 | ||
318 | #ifndef __EXTERN_INLINE | 318 | #ifndef __EXTERN_INLINE |
diff --git a/arch/alpha/include/asm/fb.h b/arch/alpha/include/asm/fb.h deleted file mode 100644 index fa9bbb96b2b3..000000000000 --- a/arch/alpha/include/asm/fb.h +++ /dev/null | |||
@@ -1,13 +0,0 @@ | |||
1 | #ifndef _ASM_FB_H_ | ||
2 | #define _ASM_FB_H_ | ||
3 | #include <linux/device.h> | ||
4 | |||
5 | /* Caching is off in the I/O space quadrant by design. */ | ||
6 | #define fb_pgprotect(...) do {} while (0) | ||
7 | |||
8 | static inline int fb_is_primary_device(struct fb_info *info) | ||
9 | { | ||
10 | return 0; | ||
11 | } | ||
12 | |||
13 | #endif /* _ASM_FB_H_ */ | ||
diff --git a/arch/alpha/include/uapi/asm/unistd.h b/arch/alpha/include/uapi/asm/unistd.h index a2945fea6c86..53de540e39a7 100644 --- a/arch/alpha/include/uapi/asm/unistd.h +++ b/arch/alpha/include/uapi/asm/unistd.h | |||
@@ -366,11 +366,6 @@ | |||
366 | #define __NR_epoll_create 407 | 366 | #define __NR_epoll_create 407 |
367 | #define __NR_epoll_ctl 408 | 367 | #define __NR_epoll_ctl 408 |
368 | #define __NR_epoll_wait 409 | 368 | #define __NR_epoll_wait 409 |
369 | /* Feb 2007: These three sys_epoll defines shouldn't be here but culling | ||
370 | * them would break userspace apps ... we'll kill them off in 2010 :) */ | ||
371 | #define __NR_sys_epoll_create __NR_epoll_create | ||
372 | #define __NR_sys_epoll_ctl __NR_epoll_ctl | ||
373 | #define __NR_sys_epoll_wait __NR_epoll_wait | ||
374 | #define __NR_remap_file_pages 410 | 369 | #define __NR_remap_file_pages 410 |
375 | #define __NR_set_tid_address 411 | 370 | #define __NR_set_tid_address 411 |
376 | #define __NR_restart_syscall 412 | 371 | #define __NR_restart_syscall 412 |
diff --git a/arch/alpha/kernel/core_marvel.c b/arch/alpha/kernel/core_marvel.c index 03ff832b1cb4..b10c316475dd 100644 --- a/arch/alpha/kernel/core_marvel.c +++ b/arch/alpha/kernel/core_marvel.c | |||
@@ -118,7 +118,7 @@ alloc_io7(unsigned int pe) | |||
118 | 118 | ||
119 | io7 = alloc_bootmem(sizeof(*io7)); | 119 | io7 = alloc_bootmem(sizeof(*io7)); |
120 | io7->pe = pe; | 120 | io7->pe = pe; |
121 | spin_lock_init(&io7->irq_lock); | 121 | raw_spin_lock_init(&io7->irq_lock); |
122 | 122 | ||
123 | for (h = 0; h < 4; h++) { | 123 | for (h = 0; h < 4; h++) { |
124 | io7->ports[h].io7 = io7; | 124 | io7->ports[h].io7 = io7; |
diff --git a/arch/alpha/kernel/pci-noop.c b/arch/alpha/kernel/pci-noop.c index ffbdb3fb672f..676bab6e3123 100644 --- a/arch/alpha/kernel/pci-noop.c +++ b/arch/alpha/kernel/pci-noop.c | |||
@@ -42,11 +42,7 @@ alloc_pci_controller(void) | |||
42 | struct resource * __init | 42 | struct resource * __init |
43 | alloc_resource(void) | 43 | alloc_resource(void) |
44 | { | 44 | { |
45 | struct resource *res; | 45 | return alloc_bootmem(sizeof(struct resource)); |
46 | |||
47 | res = alloc_bootmem(sizeof(*res)); | ||
48 | |||
49 | return res; | ||
50 | } | 46 | } |
51 | 47 | ||
52 | asmlinkage long | 48 | asmlinkage long |
diff --git a/arch/alpha/kernel/pci-sysfs.c b/arch/alpha/kernel/pci-sysfs.c index 92c0d460815b..cbecd527c696 100644 --- a/arch/alpha/kernel/pci-sysfs.c +++ b/arch/alpha/kernel/pci-sysfs.c | |||
@@ -38,7 +38,7 @@ static int __pci_mmap_fits(struct pci_dev *pdev, int num, | |||
38 | unsigned long nr, start, size; | 38 | unsigned long nr, start, size; |
39 | int shift = sparse ? 5 : 0; | 39 | int shift = sparse ? 5 : 0; |
40 | 40 | ||
41 | nr = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; | 41 | nr = vma_pages(vma); |
42 | start = vma->vm_pgoff; | 42 | start = vma->vm_pgoff; |
43 | size = ((pci_resource_len(pdev, num) - 1) >> (PAGE_SHIFT - shift)) + 1; | 43 | size = ((pci_resource_len(pdev, num) - 1) >> (PAGE_SHIFT - shift)) + 1; |
44 | 44 | ||
@@ -64,8 +64,7 @@ static int pci_mmap_resource(struct kobject *kobj, | |||
64 | struct bin_attribute *attr, | 64 | struct bin_attribute *attr, |
65 | struct vm_area_struct *vma, int sparse) | 65 | struct vm_area_struct *vma, int sparse) |
66 | { | 66 | { |
67 | struct pci_dev *pdev = to_pci_dev(container_of(kobj, | 67 | struct pci_dev *pdev = to_pci_dev(kobj_to_dev(kobj)); |
68 | struct device, kobj)); | ||
69 | struct resource *res = attr->private; | 68 | struct resource *res = attr->private; |
70 | enum pci_mmap_state mmap_type; | 69 | enum pci_mmap_state mmap_type; |
71 | struct pci_bus_region bar; | 70 | struct pci_bus_region bar; |
@@ -255,7 +254,7 @@ static int __legacy_mmap_fits(struct pci_controller *hose, | |||
255 | { | 254 | { |
256 | unsigned long nr, start, size; | 255 | unsigned long nr, start, size; |
257 | 256 | ||
258 | nr = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; | 257 | nr = vma_pages(vma); |
259 | start = vma->vm_pgoff; | 258 | start = vma->vm_pgoff; |
260 | size = ((res_size - 1) >> PAGE_SHIFT) + 1; | 259 | size = ((res_size - 1) >> PAGE_SHIFT) + 1; |
261 | 260 | ||
diff --git a/arch/alpha/kernel/pci.c b/arch/alpha/kernel/pci.c index 5f387ee5b5c5..8322df174bbf 100644 --- a/arch/alpha/kernel/pci.c +++ b/arch/alpha/kernel/pci.c | |||
@@ -379,11 +379,7 @@ alloc_pci_controller(void) | |||
379 | struct resource * __init | 379 | struct resource * __init |
380 | alloc_resource(void) | 380 | alloc_resource(void) |
381 | { | 381 | { |
382 | struct resource *res; | 382 | return alloc_bootmem(sizeof(struct resource)); |
383 | |||
384 | res = alloc_bootmem(sizeof(*res)); | ||
385 | |||
386 | return res; | ||
387 | } | 383 | } |
388 | 384 | ||
389 | 385 | ||
diff --git a/arch/alpha/kernel/setup.c b/arch/alpha/kernel/setup.c index 491e6a604e82..249229ab4942 100644 --- a/arch/alpha/kernel/setup.c +++ b/arch/alpha/kernel/setup.c | |||
@@ -1094,8 +1094,9 @@ get_sysnames(unsigned long type, unsigned long variation, unsigned long cpu, | |||
1094 | default: /* default to variation "0" for now */ | 1094 | default: /* default to variation "0" for now */ |
1095 | break; | 1095 | break; |
1096 | case ST_DEC_EB164: | 1096 | case ST_DEC_EB164: |
1097 | if (member < ARRAY_SIZE(eb164_indices)) | 1097 | if (member >= ARRAY_SIZE(eb164_indices)) |
1098 | *variation_name = eb164_names[eb164_indices[member]]; | 1098 | break; |
1099 | *variation_name = eb164_names[eb164_indices[member]]; | ||
1099 | /* PC164 may show as EB164 variation, but with EV56 CPU, | 1100 | /* PC164 may show as EB164 variation, but with EV56 CPU, |
1100 | so, since no true EB164 had anything but EV5... */ | 1101 | so, since no true EB164 had anything but EV5... */ |
1101 | if (eb164_indices[member] == 0 && cpu == EV56_CPU) | 1102 | if (eb164_indices[member] == 0 && cpu == EV56_CPU) |
diff --git a/arch/alpha/kernel/smc37c669.c b/arch/alpha/kernel/smc37c669.c index c803fc76ae4f..4dbd4e415041 100644 --- a/arch/alpha/kernel/smc37c669.c +++ b/arch/alpha/kernel/smc37c669.c | |||
@@ -2007,11 +2007,8 @@ static void __init SMC37c669_config_mode( | |||
2007 | static unsigned char __init SMC37c669_read_config( | 2007 | static unsigned char __init SMC37c669_read_config( |
2008 | unsigned char index ) | 2008 | unsigned char index ) |
2009 | { | 2009 | { |
2010 | unsigned char data; | 2010 | wb(&SMC37c669->index_port, index); |
2011 | 2011 | return rb(&SMC37c669->data_port); | |
2012 | wb( &SMC37c669->index_port, index ); | ||
2013 | data = rb( &SMC37c669->data_port ); | ||
2014 | return data; | ||
2015 | } | 2012 | } |
2016 | 2013 | ||
2017 | /* | 2014 | /* |
diff --git a/arch/alpha/kernel/sys_marvel.c b/arch/alpha/kernel/sys_marvel.c index 24e41bd7d3c9..3e533920371f 100644 --- a/arch/alpha/kernel/sys_marvel.c +++ b/arch/alpha/kernel/sys_marvel.c | |||
@@ -115,11 +115,11 @@ io7_enable_irq(struct irq_data *d) | |||
115 | return; | 115 | return; |
116 | } | 116 | } |
117 | 117 | ||
118 | spin_lock(&io7->irq_lock); | 118 | raw_spin_lock(&io7->irq_lock); |
119 | *ctl |= 1UL << 24; | 119 | *ctl |= 1UL << 24; |
120 | mb(); | 120 | mb(); |
121 | *ctl; | 121 | *ctl; |
122 | spin_unlock(&io7->irq_lock); | 122 | raw_spin_unlock(&io7->irq_lock); |
123 | } | 123 | } |
124 | 124 | ||
125 | static void | 125 | static void |
@@ -136,11 +136,11 @@ io7_disable_irq(struct irq_data *d) | |||
136 | return; | 136 | return; |
137 | } | 137 | } |
138 | 138 | ||
139 | spin_lock(&io7->irq_lock); | 139 | raw_spin_lock(&io7->irq_lock); |
140 | *ctl &= ~(1UL << 24); | 140 | *ctl &= ~(1UL << 24); |
141 | mb(); | 141 | mb(); |
142 | *ctl; | 142 | *ctl; |
143 | spin_unlock(&io7->irq_lock); | 143 | raw_spin_unlock(&io7->irq_lock); |
144 | } | 144 | } |
145 | 145 | ||
146 | static void | 146 | static void |
@@ -263,7 +263,7 @@ init_io7_irqs(struct io7 *io7, | |||
263 | */ | 263 | */ |
264 | printk(" Interrupts reported to CPU at PE %u\n", boot_cpuid); | 264 | printk(" Interrupts reported to CPU at PE %u\n", boot_cpuid); |
265 | 265 | ||
266 | spin_lock(&io7->irq_lock); | 266 | raw_spin_lock(&io7->irq_lock); |
267 | 267 | ||
268 | /* set up the error irqs */ | 268 | /* set up the error irqs */ |
269 | io7_redirect_irq(io7, &io7->csrs->HLT_CTL.csr, boot_cpuid); | 269 | io7_redirect_irq(io7, &io7->csrs->HLT_CTL.csr, boot_cpuid); |
@@ -295,7 +295,7 @@ init_io7_irqs(struct io7 *io7, | |||
295 | for (i = 0; i < 16; ++i) | 295 | for (i = 0; i < 16; ++i) |
296 | init_one_io7_msi(io7, i, boot_cpuid); | 296 | init_one_io7_msi(io7, i, boot_cpuid); |
297 | 297 | ||
298 | spin_unlock(&io7->irq_lock); | 298 | raw_spin_unlock(&io7->irq_lock); |
299 | } | 299 | } |
300 | 300 | ||
301 | static void __init | 301 | static void __init |
diff --git a/arch/alpha/kernel/traps.c b/arch/alpha/kernel/traps.c index 65bb102d985b..ddb89a18cf26 100644 --- a/arch/alpha/kernel/traps.c +++ b/arch/alpha/kernel/traps.c | |||
@@ -193,8 +193,10 @@ die_if_kernel(char * str, struct pt_regs *regs, long err, unsigned long *r9_15) | |||
193 | static long dummy_emul(void) { return 0; } | 193 | static long dummy_emul(void) { return 0; } |
194 | long (*alpha_fp_emul_imprecise)(struct pt_regs *regs, unsigned long writemask) | 194 | long (*alpha_fp_emul_imprecise)(struct pt_regs *regs, unsigned long writemask) |
195 | = (void *)dummy_emul; | 195 | = (void *)dummy_emul; |
196 | EXPORT_SYMBOL_GPL(alpha_fp_emul_imprecise); | ||
196 | long (*alpha_fp_emul) (unsigned long pc) | 197 | long (*alpha_fp_emul) (unsigned long pc) |
197 | = (void *)dummy_emul; | 198 | = (void *)dummy_emul; |
199 | EXPORT_SYMBOL_GPL(alpha_fp_emul); | ||
198 | #else | 200 | #else |
199 | long alpha_fp_emul_imprecise(struct pt_regs *regs, unsigned long writemask); | 201 | long alpha_fp_emul_imprecise(struct pt_regs *regs, unsigned long writemask); |
200 | long alpha_fp_emul (unsigned long pc); | 202 | long alpha_fp_emul (unsigned long pc); |
diff --git a/arch/alpha/math-emu/math.c b/arch/alpha/math-emu/math.c index d17d705f6545..1c2d456da7f2 100644 --- a/arch/alpha/math-emu/math.c +++ b/arch/alpha/math-emu/math.c | |||
@@ -53,6 +53,7 @@ extern void alpha_write_fp_reg_s (unsigned long reg, unsigned long val); | |||
53 | #ifdef MODULE | 53 | #ifdef MODULE |
54 | 54 | ||
55 | MODULE_DESCRIPTION("FP Software completion module"); | 55 | MODULE_DESCRIPTION("FP Software completion module"); |
56 | MODULE_LICENSE("GPL v2"); | ||
56 | 57 | ||
57 | extern long (*alpha_fp_emul_imprecise)(struct pt_regs *, unsigned long); | 58 | extern long (*alpha_fp_emul_imprecise)(struct pt_regs *, unsigned long); |
58 | extern long (*alpha_fp_emul) (unsigned long pc); | 59 | extern long (*alpha_fp_emul) (unsigned long pc); |