diff options
Diffstat (limited to 'arch/m32r')
-rw-r--r-- | arch/m32r/kernel/entry.S | 2 | ||||
-rw-r--r-- | arch/m32r/kernel/io_m32700ut.c | 6 | ||||
-rw-r--r-- | arch/m32r/kernel/io_mappi.c | 2 | ||||
-rw-r--r-- | arch/m32r/kernel/io_mappi2.c | 11 | ||||
-rw-r--r-- | arch/m32r/kernel/io_mappi3.c | 7 | ||||
-rw-r--r-- | arch/m32r/kernel/io_oaks32r.c | 2 | ||||
-rw-r--r-- | arch/m32r/kernel/io_opsput.c | 8 | ||||
-rw-r--r-- | arch/m32r/kernel/io_usrv.c | 2 | ||||
-rw-r--r-- | arch/m32r/kernel/ptrace.c | 2 | ||||
-rw-r--r-- | arch/m32r/kernel/setup.c | 24 | ||||
-rw-r--r-- | arch/m32r/kernel/time.c | 4 | ||||
-rw-r--r-- | arch/m32r/lib/csum_partial_copy.c | 2 | ||||
-rw-r--r-- | arch/m32r/mm/init.c | 9 | ||||
-rw-r--r-- | arch/m32r/mm/ioremap.c | 4 |
14 files changed, 41 insertions, 44 deletions
diff --git a/arch/m32r/kernel/entry.S b/arch/m32r/kernel/entry.S index 85920fb8d08c..396c94218cc2 100644 --- a/arch/m32r/kernel/entry.S +++ b/arch/m32r/kernel/entry.S | |||
@@ -653,8 +653,6 @@ ENTRY(rie_handler) | |||
653 | SAVE_ALL | 653 | SAVE_ALL |
654 | mvfc r0, bpc | 654 | mvfc r0, bpc |
655 | ld r1, @r0 | 655 | ld r1, @r0 |
656 | seth r0, #0xa0f0 | ||
657 | st r1, @r0 | ||
658 | ldi r1, #0x20 ; error_code | 656 | ldi r1, #0x20 ; error_code |
659 | mv r0, sp ; pt_regs | 657 | mv r0, sp ; pt_regs |
660 | bl do_rie_handler | 658 | bl do_rie_handler |
diff --git a/arch/m32r/kernel/io_m32700ut.c b/arch/m32r/kernel/io_m32700ut.c index e545b065f7e9..eda9f963c1eb 100644 --- a/arch/m32r/kernel/io_m32700ut.c +++ b/arch/m32r/kernel/io_m32700ut.c | |||
@@ -64,11 +64,11 @@ static inline void *__port2addr_ata(unsigned long port) | |||
64 | * from 0x10000000 to 0x13ffffff on physical address. | 64 | * from 0x10000000 to 0x13ffffff on physical address. |
65 | * The base address of LAN controller(LAN91C111) is 0x300. | 65 | * The base address of LAN controller(LAN91C111) is 0x300. |
66 | */ | 66 | */ |
67 | #define LAN_IOSTART 0x300 | 67 | #define LAN_IOSTART 0xa0000300 |
68 | #define LAN_IOEND 0x320 | 68 | #define LAN_IOEND 0xa0000320 |
69 | static inline void *_port2addr_ne(unsigned long port) | 69 | static inline void *_port2addr_ne(unsigned long port) |
70 | { | 70 | { |
71 | return (void *)(port + NONCACHE_OFFSET + 0x10000000); | 71 | return (void *)(port + 0x10000000); |
72 | } | 72 | } |
73 | static inline void *_port2addr_usb(unsigned long port) | 73 | static inline void *_port2addr_usb(unsigned long port) |
74 | { | 74 | { |
diff --git a/arch/m32r/kernel/io_mappi.c b/arch/m32r/kernel/io_mappi.c index 78033165fb5c..3c3da042fbd1 100644 --- a/arch/m32r/kernel/io_mappi.c +++ b/arch/m32r/kernel/io_mappi.c | |||
@@ -31,7 +31,7 @@ extern void pcc_iowrite(int, unsigned long, void *, size_t, size_t, int); | |||
31 | 31 | ||
32 | static inline void *_port2addr(unsigned long port) | 32 | static inline void *_port2addr(unsigned long port) |
33 | { | 33 | { |
34 | return (void *)(port + NONCACHE_OFFSET); | 34 | return (void *)(port | (NONCACHE_OFFSET)); |
35 | } | 35 | } |
36 | 36 | ||
37 | static inline void *_port2addr_ne(unsigned long port) | 37 | static inline void *_port2addr_ne(unsigned long port) |
diff --git a/arch/m32r/kernel/io_mappi2.c b/arch/m32r/kernel/io_mappi2.c index 5c03504bf653..df3c729cb3e0 100644 --- a/arch/m32r/kernel/io_mappi2.c +++ b/arch/m32r/kernel/io_mappi2.c | |||
@@ -33,12 +33,9 @@ extern void pcc_iowrite_word(int, unsigned long, void *, size_t, size_t, int); | |||
33 | 33 | ||
34 | static inline void *_port2addr(unsigned long port) | 34 | static inline void *_port2addr(unsigned long port) |
35 | { | 35 | { |
36 | return (void *)(port + NONCACHE_OFFSET); | 36 | return (void *)(port | (NONCACHE_OFFSET)); |
37 | } | 37 | } |
38 | 38 | ||
39 | #define LAN_IOSTART 0x300 | ||
40 | #define LAN_IOEND 0x320 | ||
41 | |||
42 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 39 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) |
43 | static inline void *__port2addr_ata(unsigned long port) | 40 | static inline void *__port2addr_ata(unsigned long port) |
44 | { | 41 | { |
@@ -59,15 +56,17 @@ static inline void *__port2addr_ata(unsigned long port) | |||
59 | } | 56 | } |
60 | #endif | 57 | #endif |
61 | 58 | ||
59 | #define LAN_IOSTART 0xa0000300 | ||
60 | #define LAN_IOEND 0xa0000320 | ||
62 | #ifdef CONFIG_CHIP_OPSP | 61 | #ifdef CONFIG_CHIP_OPSP |
63 | static inline void *_port2addr_ne(unsigned long port) | 62 | static inline void *_port2addr_ne(unsigned long port) |
64 | { | 63 | { |
65 | return (void *)(port + NONCACHE_OFFSET + 0x10000000); | 64 | return (void *)(port + 0x10000000); |
66 | } | 65 | } |
67 | #else | 66 | #else |
68 | static inline void *_port2addr_ne(unsigned long port) | 67 | static inline void *_port2addr_ne(unsigned long port) |
69 | { | 68 | { |
70 | return (void *)(port + NONCACHE_OFFSET + 0x04000000); | 69 | return (void *)(port + 0x04000000); |
71 | } | 70 | } |
72 | #endif | 71 | #endif |
73 | static inline void *_port2addr_usb(unsigned long port) | 72 | static inline void *_port2addr_usb(unsigned long port) |
diff --git a/arch/m32r/kernel/io_mappi3.c b/arch/m32r/kernel/io_mappi3.c index c80bde657854..6716ffea769a 100644 --- a/arch/m32r/kernel/io_mappi3.c +++ b/arch/m32r/kernel/io_mappi3.c | |||
@@ -36,9 +36,6 @@ static inline void *_port2addr(unsigned long port) | |||
36 | return (void *)(port + NONCACHE_OFFSET); | 36 | return (void *)(port + NONCACHE_OFFSET); |
37 | } | 37 | } |
38 | 38 | ||
39 | #define LAN_IOSTART 0x300 | ||
40 | #define LAN_IOEND 0x320 | ||
41 | |||
42 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) | 39 | #if defined(CONFIG_IDE) && !defined(CONFIG_M32R_CFC) |
43 | static inline void *__port2addr_ata(unsigned long port) | 40 | static inline void *__port2addr_ata(unsigned long port) |
44 | { | 41 | { |
@@ -59,9 +56,11 @@ static inline void *__port2addr_ata(unsigned long port) | |||
59 | } | 56 | } |
60 | #endif | 57 | #endif |
61 | 58 | ||
59 | #define LAN_IOSTART 0xa0000300 | ||
60 | #define LAN_IOEND 0xa0000320 | ||
62 | static inline void *_port2addr_ne(unsigned long port) | 61 | static inline void *_port2addr_ne(unsigned long port) |
63 | { | 62 | { |
64 | return (void *)(port + NONCACHE_OFFSET + 0x10000000); | 63 | return (void *)(port + 0x10000000); |
65 | } | 64 | } |
66 | 65 | ||
67 | static inline void *_port2addr_usb(unsigned long port) | 66 | static inline void *_port2addr_usb(unsigned long port) |
diff --git a/arch/m32r/kernel/io_oaks32r.c b/arch/m32r/kernel/io_oaks32r.c index 9997dddd24d7..8be323931e4a 100644 --- a/arch/m32r/kernel/io_oaks32r.c +++ b/arch/m32r/kernel/io_oaks32r.c | |||
@@ -16,7 +16,7 @@ | |||
16 | 16 | ||
17 | static inline void *_port2addr(unsigned long port) | 17 | static inline void *_port2addr(unsigned long port) |
18 | { | 18 | { |
19 | return (void *)(port + NONCACHE_OFFSET); | 19 | return (void *)(port | (NONCACHE_OFFSET)); |
20 | } | 20 | } |
21 | 21 | ||
22 | static inline void *_port2addr_ne(unsigned long port) | 22 | static inline void *_port2addr_ne(unsigned long port) |
diff --git a/arch/m32r/kernel/io_opsput.c b/arch/m32r/kernel/io_opsput.c index e34951e8156f..4793bd18e115 100644 --- a/arch/m32r/kernel/io_opsput.c +++ b/arch/m32r/kernel/io_opsput.c | |||
@@ -36,7 +36,7 @@ extern void pcc_iowrite_word(int, unsigned long, void *, size_t, size_t, int); | |||
36 | 36 | ||
37 | static inline void *_port2addr(unsigned long port) | 37 | static inline void *_port2addr(unsigned long port) |
38 | { | 38 | { |
39 | return (void *)(port + NONCACHE_OFFSET); | 39 | return (void *)(port | (NONCACHE_OFFSET)); |
40 | } | 40 | } |
41 | 41 | ||
42 | /* | 42 | /* |
@@ -44,11 +44,11 @@ static inline void *_port2addr(unsigned long port) | |||
44 | * from 0x10000000 to 0x13ffffff on physical address. | 44 | * from 0x10000000 to 0x13ffffff on physical address. |
45 | * The base address of LAN controller(LAN91C111) is 0x300. | 45 | * The base address of LAN controller(LAN91C111) is 0x300. |
46 | */ | 46 | */ |
47 | #define LAN_IOSTART 0x300 | 47 | #define LAN_IOSTART 0xa0000300 |
48 | #define LAN_IOEND 0x320 | 48 | #define LAN_IOEND 0xa0000320 |
49 | static inline void *_port2addr_ne(unsigned long port) | 49 | static inline void *_port2addr_ne(unsigned long port) |
50 | { | 50 | { |
51 | return (void *)(port + NONCACHE_OFFSET + 0x10000000); | 51 | return (void *)(port + 0x10000000); |
52 | } | 52 | } |
53 | static inline void *_port2addr_usb(unsigned long port) | 53 | static inline void *_port2addr_usb(unsigned long port) |
54 | { | 54 | { |
diff --git a/arch/m32r/kernel/io_usrv.c b/arch/m32r/kernel/io_usrv.c index 9eb161dcc104..39a379af40bc 100644 --- a/arch/m32r/kernel/io_usrv.c +++ b/arch/m32r/kernel/io_usrv.c | |||
@@ -47,7 +47,7 @@ static inline void *_port2addr(unsigned long port) | |||
47 | else if (port >= UART1_IOSTART && port <= UART1_IOEND) | 47 | else if (port >= UART1_IOSTART && port <= UART1_IOEND) |
48 | port = ((port - UART1_IOSTART) << 1) + UART1_REGSTART; | 48 | port = ((port - UART1_IOSTART) << 1) + UART1_REGSTART; |
49 | #endif /* CONFIG_SERIAL_8250 || CONFIG_SERIAL_8250_MODULE */ | 49 | #endif /* CONFIG_SERIAL_8250 || CONFIG_SERIAL_8250_MODULE */ |
50 | return (void *)(port + NONCACHE_OFFSET); | 50 | return (void *)(port | (NONCACHE_OFFSET)); |
51 | } | 51 | } |
52 | 52 | ||
53 | static inline void delay(void) | 53 | static inline void delay(void) |
diff --git a/arch/m32r/kernel/ptrace.c b/arch/m32r/kernel/ptrace.c index 124f7c1b775e..078d2a0e71c2 100644 --- a/arch/m32r/kernel/ptrace.c +++ b/arch/m32r/kernel/ptrace.c | |||
@@ -756,7 +756,7 @@ do_ptrace(long request, struct task_struct *child, long addr, long data) | |||
756 | return ret; | 756 | return ret; |
757 | } | 757 | } |
758 | 758 | ||
759 | asmlinkage int sys_ptrace(long request, long pid, long addr, long data) | 759 | asmlinkage long sys_ptrace(long request, long pid, long addr, long data) |
760 | { | 760 | { |
761 | struct task_struct *child; | 761 | struct task_struct *child; |
762 | int ret; | 762 | int ret; |
diff --git a/arch/m32r/kernel/setup.c b/arch/m32r/kernel/setup.c index ec5674727e7f..f722ec8eb021 100644 --- a/arch/m32r/kernel/setup.c +++ b/arch/m32r/kernel/setup.c | |||
@@ -305,19 +305,19 @@ static int show_cpuinfo(struct seq_file *m, void *v) | |||
305 | 305 | ||
306 | seq_printf(m, "processor\t: %ld\n", cpu); | 306 | seq_printf(m, "processor\t: %ld\n", cpu); |
307 | 307 | ||
308 | #ifdef CONFIG_CHIP_VDEC2 | 308 | #if defined(CONFIG_CHIP_VDEC2) |
309 | seq_printf(m, "cpu family\t: VDEC2\n" | 309 | seq_printf(m, "cpu family\t: VDEC2\n" |
310 | "cache size\t: Unknown\n"); | 310 | "cache size\t: Unknown\n"); |
311 | #elif CONFIG_CHIP_M32700 | 311 | #elif defined(CONFIG_CHIP_M32700) |
312 | seq_printf(m,"cpu family\t: M32700\n" | 312 | seq_printf(m,"cpu family\t: M32700\n" |
313 | "cache size\t: I-8KB/D-8KB\n"); | 313 | "cache size\t: I-8KB/D-8KB\n"); |
314 | #elif CONFIG_CHIP_M32102 | 314 | #elif defined(CONFIG_CHIP_M32102) |
315 | seq_printf(m,"cpu family\t: M32102\n" | 315 | seq_printf(m,"cpu family\t: M32102\n" |
316 | "cache size\t: I-8KB\n"); | 316 | "cache size\t: I-8KB\n"); |
317 | #elif CONFIG_CHIP_OPSP | 317 | #elif defined(CONFIG_CHIP_OPSP) |
318 | seq_printf(m,"cpu family\t: OPSP\n" | 318 | seq_printf(m,"cpu family\t: OPSP\n" |
319 | "cache size\t: I-8KB/D-8KB\n"); | 319 | "cache size\t: I-8KB/D-8KB\n"); |
320 | #elif CONFIG_CHIP_MP | 320 | #elif defined(CONFIG_CHIP_MP) |
321 | seq_printf(m, "cpu family\t: M32R-MP\n" | 321 | seq_printf(m, "cpu family\t: M32R-MP\n" |
322 | "cache size\t: I-xxKB/D-xxKB\n"); | 322 | "cache size\t: I-xxKB/D-xxKB\n"); |
323 | #else | 323 | #else |
@@ -326,19 +326,19 @@ static int show_cpuinfo(struct seq_file *m, void *v) | |||
326 | seq_printf(m, "bogomips\t: %lu.%02lu\n", | 326 | seq_printf(m, "bogomips\t: %lu.%02lu\n", |
327 | c->loops_per_jiffy/(500000/HZ), | 327 | c->loops_per_jiffy/(500000/HZ), |
328 | (c->loops_per_jiffy/(5000/HZ)) % 100); | 328 | (c->loops_per_jiffy/(5000/HZ)) % 100); |
329 | #ifdef CONFIG_PLAT_MAPPI | 329 | #if defined(CONFIG_PLAT_MAPPI) |
330 | seq_printf(m, "Machine\t\t: Mappi Evaluation board\n"); | 330 | seq_printf(m, "Machine\t\t: Mappi Evaluation board\n"); |
331 | #elif CONFIG_PLAT_MAPPI2 | 331 | #elif defined(CONFIG_PLAT_MAPPI2) |
332 | seq_printf(m, "Machine\t\t: Mappi-II Evaluation board\n"); | 332 | seq_printf(m, "Machine\t\t: Mappi-II Evaluation board\n"); |
333 | #elif CONFIG_PLAT_MAPPI3 | 333 | #elif defined(CONFIG_PLAT_MAPPI3) |
334 | seq_printf(m, "Machine\t\t: Mappi-III Evaluation board\n"); | 334 | seq_printf(m, "Machine\t\t: Mappi-III Evaluation board\n"); |
335 | #elif CONFIG_PLAT_M32700UT | 335 | #elif defined(CONFIG_PLAT_M32700UT) |
336 | seq_printf(m, "Machine\t\t: M32700UT Evaluation board\n"); | 336 | seq_printf(m, "Machine\t\t: M32700UT Evaluation board\n"); |
337 | #elif CONFIG_PLAT_OPSPUT | 337 | #elif defined(CONFIG_PLAT_OPSPUT) |
338 | seq_printf(m, "Machine\t\t: OPSPUT Evaluation board\n"); | 338 | seq_printf(m, "Machine\t\t: OPSPUT Evaluation board\n"); |
339 | #elif CONFIG_PLAT_USRV | 339 | #elif defined(CONFIG_PLAT_USRV) |
340 | seq_printf(m, "Machine\t\t: uServer\n"); | 340 | seq_printf(m, "Machine\t\t: uServer\n"); |
341 | #elif CONFIG_PLAT_OAKS32R | 341 | #elif defined(CONFIG_PLAT_OAKS32R) |
342 | seq_printf(m, "Machine\t\t: OAKS32R\n"); | 342 | seq_printf(m, "Machine\t\t: OAKS32R\n"); |
343 | #else | 343 | #else |
344 | seq_printf(m, "Machine\t\t: Unknown\n"); | 344 | seq_printf(m, "Machine\t\t: Unknown\n"); |
diff --git a/arch/m32r/kernel/time.c b/arch/m32r/kernel/time.c index 539c562cd54d..2ebce2063fea 100644 --- a/arch/m32r/kernel/time.c +++ b/arch/m32r/kernel/time.c | |||
@@ -39,10 +39,6 @@ extern void send_IPI_allbutself(int, int); | |||
39 | extern void smp_local_timer_interrupt(struct pt_regs *); | 39 | extern void smp_local_timer_interrupt(struct pt_regs *); |
40 | #endif | 40 | #endif |
41 | 41 | ||
42 | u64 jiffies_64 = INITIAL_JIFFIES; | ||
43 | |||
44 | EXPORT_SYMBOL(jiffies_64); | ||
45 | |||
46 | extern unsigned long wall_jiffies; | 42 | extern unsigned long wall_jiffies; |
47 | #define TICK_SIZE (tick_nsec / 1000) | 43 | #define TICK_SIZE (tick_nsec / 1000) |
48 | 44 | ||
diff --git a/arch/m32r/lib/csum_partial_copy.c b/arch/m32r/lib/csum_partial_copy.c index ddb16a83a8ce..3d5f06145854 100644 --- a/arch/m32r/lib/csum_partial_copy.c +++ b/arch/m32r/lib/csum_partial_copy.c | |||
@@ -18,10 +18,10 @@ | |||
18 | 18 | ||
19 | #include <linux/module.h> | 19 | #include <linux/module.h> |
20 | #include <linux/types.h> | 20 | #include <linux/types.h> |
21 | #include <linux/string.h> | ||
21 | 22 | ||
22 | #include <net/checksum.h> | 23 | #include <net/checksum.h> |
23 | #include <asm/byteorder.h> | 24 | #include <asm/byteorder.h> |
24 | #include <asm/string.h> | ||
25 | #include <asm/uaccess.h> | 25 | #include <asm/uaccess.h> |
26 | 26 | ||
27 | /* | 27 | /* |
diff --git a/arch/m32r/mm/init.c b/arch/m32r/mm/init.c index d9a40b1fe8ba..6facf15b04f3 100644 --- a/arch/m32r/mm/init.c +++ b/arch/m32r/mm/init.c | |||
@@ -48,6 +48,8 @@ void show_mem(void) | |||
48 | show_free_areas(); | 48 | show_free_areas(); |
49 | printk("Free swap: %6ldkB\n",nr_swap_pages<<(PAGE_SHIFT-10)); | 49 | printk("Free swap: %6ldkB\n",nr_swap_pages<<(PAGE_SHIFT-10)); |
50 | for_each_pgdat(pgdat) { | 50 | for_each_pgdat(pgdat) { |
51 | unsigned long flags; | ||
52 | pgdat_resize_lock(pgdat, &flags); | ||
51 | for (i = 0; i < pgdat->node_spanned_pages; ++i) { | 53 | for (i = 0; i < pgdat->node_spanned_pages; ++i) { |
52 | page = pgdat_page_nr(pgdat, i); | 54 | page = pgdat_page_nr(pgdat, i); |
53 | total++; | 55 | total++; |
@@ -60,6 +62,7 @@ void show_mem(void) | |||
60 | else if (page_count(page)) | 62 | else if (page_count(page)) |
61 | shared += page_count(page) - 1; | 63 | shared += page_count(page) - 1; |
62 | } | 64 | } |
65 | pgdat_resize_unlock(pgdat, &flags); | ||
63 | } | 66 | } |
64 | printk("%d pages of RAM\n", total); | 67 | printk("%d pages of RAM\n", total); |
65 | printk("%d pages of HIGHMEM\n",highmem); | 68 | printk("%d pages of HIGHMEM\n",highmem); |
@@ -150,10 +153,14 @@ int __init reservedpages_count(void) | |||
150 | int reservedpages, nid, i; | 153 | int reservedpages, nid, i; |
151 | 154 | ||
152 | reservedpages = 0; | 155 | reservedpages = 0; |
153 | for_each_online_node(nid) | 156 | for_each_online_node(nid) { |
157 | unsigned long flags; | ||
158 | pgdat_resize_lock(NODE_DATA(nid), &flags); | ||
154 | for (i = 0 ; i < MAX_LOW_PFN(nid) - START_PFN(nid) ; i++) | 159 | for (i = 0 ; i < MAX_LOW_PFN(nid) - START_PFN(nid) ; i++) |
155 | if (PageReserved(nid_page_nr(nid, i))) | 160 | if (PageReserved(nid_page_nr(nid, i))) |
156 | reservedpages++; | 161 | reservedpages++; |
162 | pgdat_resize_unlock(NODE_DATA(nid), &flags); | ||
163 | } | ||
157 | 164 | ||
158 | return reservedpages; | 165 | return reservedpages; |
159 | } | 166 | } |
diff --git a/arch/m32r/mm/ioremap.c b/arch/m32r/mm/ioremap.c index 70c59055c19c..a151849a605e 100644 --- a/arch/m32r/mm/ioremap.c +++ b/arch/m32r/mm/ioremap.c | |||
@@ -67,7 +67,7 @@ remap_area_pmd(pmd_t * pmd, unsigned long address, unsigned long size, | |||
67 | if (address >= end) | 67 | if (address >= end) |
68 | BUG(); | 68 | BUG(); |
69 | do { | 69 | do { |
70 | pte_t * pte = pte_alloc_kernel(&init_mm, pmd, address); | 70 | pte_t * pte = pte_alloc_kernel(pmd, address); |
71 | if (!pte) | 71 | if (!pte) |
72 | return -ENOMEM; | 72 | return -ENOMEM; |
73 | remap_area_pte(pte, address, end - address, address + phys_addr, flags); | 73 | remap_area_pte(pte, address, end - address, address + phys_addr, flags); |
@@ -90,7 +90,6 @@ remap_area_pages(unsigned long address, unsigned long phys_addr, | |||
90 | flush_cache_all(); | 90 | flush_cache_all(); |
91 | if (address >= end) | 91 | if (address >= end) |
92 | BUG(); | 92 | BUG(); |
93 | spin_lock(&init_mm.page_table_lock); | ||
94 | do { | 93 | do { |
95 | pmd_t *pmd; | 94 | pmd_t *pmd; |
96 | pmd = pmd_alloc(&init_mm, dir, address); | 95 | pmd = pmd_alloc(&init_mm, dir, address); |
@@ -104,7 +103,6 @@ remap_area_pages(unsigned long address, unsigned long phys_addr, | |||
104 | address = (address + PGDIR_SIZE) & PGDIR_MASK; | 103 | address = (address + PGDIR_SIZE) & PGDIR_MASK; |
105 | dir++; | 104 | dir++; |
106 | } while (address && (address < end)); | 105 | } while (address && (address < end)); |
107 | spin_unlock(&init_mm.page_table_lock); | ||
108 | flush_tlb_all(); | 106 | flush_tlb_all(); |
109 | return error; | 107 | return error; |
110 | } | 108 | } |