Skip to content

Commit 5ab06e1

Browse files
rppttorvalds
authored andcommitted
m68k: remove support for DISCONTIGMEM
DISCONTIGMEM was replaced by FLATMEM with freeing of the unused memory map in v5.11. Remove the support for DISCONTIGMEM entirely. Link: https://lkml.kernel.org/r/[email protected] Signed-off-by: Mike Rapoport <[email protected]> Reviewed-by: Geert Uytterhoeven <[email protected]> Acked-by: Geert Uytterhoeven <[email protected]> Acked-by: Arnd Bergmann <[email protected]> Cc: Ivan Kokshaysky <[email protected]> Cc: Jonathan Corbet <[email protected]> Cc: Matt Turner <[email protected]> Cc: Richard Henderson <[email protected]> Cc: Vineet Gupta <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent 8b793b4 commit 5ab06e1

File tree

5 files changed

+1
-76
lines changed

5 files changed

+1
-76
lines changed

arch/m68k/Kconfig.cpu

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -408,10 +408,6 @@ config SINGLE_MEMORY_CHUNK
408408
order" to save memory that could be wasted for unused memory map.
409409
Say N if not sure.
410410

411-
config ARCH_DISCONTIGMEM_ENABLE
412-
depends on BROKEN
413-
def_bool MMU && !SINGLE_MEMORY_CHUNK
414-
415411
config FORCE_MAX_ZONEORDER
416412
int "Maximum zone order" if ADVANCED
417413
depends on !SINGLE_MEMORY_CHUNK
@@ -451,11 +447,6 @@ config M68K_L2_CACHE
451447
depends on MAC
452448
default y
453449

454-
config NODES_SHIFT
455-
int
456-
default "3"
457-
depends on DISCONTIGMEM
458-
459450
config CPU_HAS_NO_BITFIELDS
460451
bool
461452

@@ -553,4 +544,3 @@ config CACHE_COPYBACK
553544
The ColdFire CPU cache is set into Copy-back mode.
554545
endchoice
555546
endif
556-

arch/m68k/include/asm/mmzone.h

Lines changed: 0 additions & 10 deletions
This file was deleted.

arch/m68k/include/asm/page.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ extern unsigned long _ramend;
6262
#include <asm/page_no.h>
6363
#endif
6464

65-
#if !defined(CONFIG_MMU) || defined(CONFIG_DISCONTIGMEM)
65+
#ifndef CONFIG_MMU
6666
#define __phys_to_pfn(paddr) ((unsigned long)((paddr) >> PAGE_SHIFT))
6767
#define __pfn_to_phys(pfn) PFN_PHYS(pfn)
6868
#endif

arch/m68k/include/asm/page_mm.h

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -126,50 +126,15 @@ static inline void *__va(unsigned long x)
126126

127127
extern int m68k_virt_to_node_shift;
128128

129-
#ifndef CONFIG_DISCONTIGMEM
130-
#define __virt_to_node(addr) (&pg_data_map[0])
131-
#else
132-
extern struct pglist_data *pg_data_table[];
133-
134-
static inline __attribute_const__ int __virt_to_node_shift(void)
135-
{
136-
int shift;
137-
138-
asm (
139-
"1: moveq #0,%0\n"
140-
m68k_fixup(%c1, 1b)
141-
: "=d" (shift)
142-
: "i" (m68k_fixup_vnode_shift));
143-
return shift;
144-
}
145-
146-
#define __virt_to_node(addr) (pg_data_table[(unsigned long)(addr) >> __virt_to_node_shift()])
147-
#endif
148-
149129
#define virt_to_page(addr) ({ \
150130
pfn_to_page(virt_to_pfn(addr)); \
151131
})
152132
#define page_to_virt(page) ({ \
153133
pfn_to_virt(page_to_pfn(page)); \
154134
})
155135

156-
#ifdef CONFIG_DISCONTIGMEM
157-
#define pfn_to_page(pfn) ({ \
158-
unsigned long __pfn = (pfn); \
159-
struct pglist_data *pgdat; \
160-
pgdat = __virt_to_node((unsigned long)pfn_to_virt(__pfn)); \
161-
pgdat->node_mem_map + (__pfn - pgdat->node_start_pfn); \
162-
})
163-
#define page_to_pfn(_page) ({ \
164-
const struct page *__p = (_page); \
165-
struct pglist_data *pgdat; \
166-
pgdat = &pg_data_map[page_to_nid(__p)]; \
167-
((__p) - pgdat->node_mem_map) + pgdat->node_start_pfn; \
168-
})
169-
#else
170136
#define ARCH_PFN_OFFSET (m68k_memory[0].addr >> PAGE_SHIFT)
171137
#include <asm-generic/memory_model.h>
172-
#endif
173138

174139
#define virt_addr_valid(kaddr) ((unsigned long)(kaddr) >= PAGE_OFFSET && (unsigned long)(kaddr) < (unsigned long)high_memory)
175140
#define pfn_valid(pfn) virt_addr_valid(pfn_to_virt(pfn))

arch/m68k/mm/init.c

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -44,28 +44,8 @@ EXPORT_SYMBOL(empty_zero_page);
4444

4545
int m68k_virt_to_node_shift;
4646

47-
#ifdef CONFIG_DISCONTIGMEM
48-
pg_data_t pg_data_map[MAX_NUMNODES];
49-
EXPORT_SYMBOL(pg_data_map);
50-
51-
pg_data_t *pg_data_table[65];
52-
EXPORT_SYMBOL(pg_data_table);
53-
#endif
54-
5547
void __init m68k_setup_node(int node)
5648
{
57-
#ifdef CONFIG_DISCONTIGMEM
58-
struct m68k_mem_info *info = m68k_memory + node;
59-
int i, end;
60-
61-
i = (unsigned long)phys_to_virt(info->addr) >> __virt_to_node_shift();
62-
end = (unsigned long)phys_to_virt(info->addr + info->size - 1) >> __virt_to_node_shift();
63-
for (; i <= end; i++) {
64-
if (pg_data_table[i])
65-
pr_warn("overlap at %u for chunk %u\n", i, node);
66-
pg_data_table[i] = pg_data_map + node;
67-
}
68-
#endif
6949
node_set_online(node);
7050
}
7151

0 commit comments

Comments
 (0)