diff options
author | Christoph Hellwig <hch@lst.de> | 2019-07-11 23:57:14 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-07-12 14:05:44 -0400 |
commit | 67a929e097b774c69253c8b61ef9eb8a42b463a3 (patch) | |
tree | 33b72a242790fe48f2deafcce0b3e41870503ab9 | |
parent | 7b9afb86b6328f10dc2cad9223d7def12d60e505 (diff) |
mm: rename CONFIG_HAVE_GENERIC_GUP to CONFIG_HAVE_FAST_GUP
We only support the generic GUP now, so rename the config option to
be more clear, and always use the mm/Kconfig definition of the
symbol and select it from the arch Kconfigs.
Link: http://lkml.kernel.org/r/20190625143715.1689-11-hch@lst.de
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Khalid Aziz <khalid.aziz@oracle.com>
Reviewed-by: Jason Gunthorpe <jgg@mellanox.com>
Cc: Andrey Konovalov <andreyknvl@google.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: David Miller <davem@davemloft.net>
Cc: James Hogan <jhogan@kernel.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Paul Burton <paul.burton@mips.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Rich Felker <dalias@libc.org>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | arch/arm/Kconfig | 5 | ||||
-rw-r--r-- | arch/arm64/Kconfig | 4 | ||||
-rw-r--r-- | arch/mips/Kconfig | 2 | ||||
-rw-r--r-- | arch/powerpc/Kconfig | 2 | ||||
-rw-r--r-- | arch/s390/Kconfig | 2 | ||||
-rw-r--r-- | arch/sh/Kconfig | 2 | ||||
-rw-r--r-- | arch/sparc/Kconfig | 2 | ||||
-rw-r--r-- | arch/x86/Kconfig | 4 | ||||
-rw-r--r-- | mm/Kconfig | 2 | ||||
-rw-r--r-- | mm/gup.c | 4 |
10 files changed, 11 insertions, 18 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 0c55aa199c67..2bf1ce39a96d 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
@@ -75,6 +75,7 @@ config ARM | |||
75 | select HAVE_DYNAMIC_FTRACE_WITH_REGS if HAVE_DYNAMIC_FTRACE | 75 | select HAVE_DYNAMIC_FTRACE_WITH_REGS if HAVE_DYNAMIC_FTRACE |
76 | select HAVE_EFFICIENT_UNALIGNED_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && MMU | 76 | select HAVE_EFFICIENT_UNALIGNED_ACCESS if (CPU_V6 || CPU_V6K || CPU_V7) && MMU |
77 | select HAVE_EXIT_THREAD | 77 | select HAVE_EXIT_THREAD |
78 | select HAVE_FAST_GUP if ARM_LPAE | ||
78 | select HAVE_FTRACE_MCOUNT_RECORD if !XIP_KERNEL | 79 | select HAVE_FTRACE_MCOUNT_RECORD if !XIP_KERNEL |
79 | select HAVE_FUNCTION_GRAPH_TRACER if !THUMB2_KERNEL && !CC_IS_CLANG | 80 | select HAVE_FUNCTION_GRAPH_TRACER if !THUMB2_KERNEL && !CC_IS_CLANG |
80 | select HAVE_FUNCTION_TRACER if !XIP_KERNEL | 81 | select HAVE_FUNCTION_TRACER if !XIP_KERNEL |
@@ -1625,10 +1626,6 @@ config ARCH_SPARSEMEM_DEFAULT | |||
1625 | config HAVE_ARCH_PFN_VALID | 1626 | config HAVE_ARCH_PFN_VALID |
1626 | def_bool ARCH_HAS_HOLES_MEMORYMODEL || !SPARSEMEM | 1627 | def_bool ARCH_HAS_HOLES_MEMORYMODEL || !SPARSEMEM |
1627 | 1628 | ||
1628 | config HAVE_GENERIC_GUP | ||
1629 | def_bool y | ||
1630 | depends on ARM_LPAE | ||
1631 | |||
1632 | config HIGHMEM | 1629 | config HIGHMEM |
1633 | bool "High Memory Support" | 1630 | bool "High Memory Support" |
1634 | depends on MMU | 1631 | depends on MMU |
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index c085aec9459b..a36ff61321ce 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig | |||
@@ -143,6 +143,7 @@ config ARM64 | |||
143 | select HAVE_DMA_CONTIGUOUS | 143 | select HAVE_DMA_CONTIGUOUS |
144 | select HAVE_DYNAMIC_FTRACE | 144 | select HAVE_DYNAMIC_FTRACE |
145 | select HAVE_EFFICIENT_UNALIGNED_ACCESS | 145 | select HAVE_EFFICIENT_UNALIGNED_ACCESS |
146 | select HAVE_FAST_GUP | ||
146 | select HAVE_FTRACE_MCOUNT_RECORD | 147 | select HAVE_FTRACE_MCOUNT_RECORD |
147 | select HAVE_FUNCTION_TRACER | 148 | select HAVE_FUNCTION_TRACER |
148 | select HAVE_FUNCTION_GRAPH_TRACER | 149 | select HAVE_FUNCTION_GRAPH_TRACER |
@@ -267,9 +268,6 @@ config ZONE_DMA32 | |||
267 | bool "Support DMA32 zone" if EXPERT | 268 | bool "Support DMA32 zone" if EXPERT |
268 | default y | 269 | default y |
269 | 270 | ||
270 | config HAVE_GENERIC_GUP | ||
271 | def_bool y | ||
272 | |||
273 | config ARCH_ENABLE_MEMORY_HOTPLUG | 271 | config ARCH_ENABLE_MEMORY_HOTPLUG |
274 | def_bool y | 272 | def_bool y |
275 | 273 | ||
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 51c05f669d57..7957d3457156 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
@@ -53,10 +53,10 @@ config MIPS | |||
53 | select HAVE_DMA_CONTIGUOUS | 53 | select HAVE_DMA_CONTIGUOUS |
54 | select HAVE_DYNAMIC_FTRACE | 54 | select HAVE_DYNAMIC_FTRACE |
55 | select HAVE_EXIT_THREAD | 55 | select HAVE_EXIT_THREAD |
56 | select HAVE_FAST_GUP | ||
56 | select HAVE_FTRACE_MCOUNT_RECORD | 57 | select HAVE_FTRACE_MCOUNT_RECORD |
57 | select HAVE_FUNCTION_GRAPH_TRACER | 58 | select HAVE_FUNCTION_GRAPH_TRACER |
58 | select HAVE_FUNCTION_TRACER | 59 | select HAVE_FUNCTION_TRACER |
59 | select HAVE_GENERIC_GUP | ||
60 | select HAVE_IDE | 60 | select HAVE_IDE |
61 | select HAVE_IOREMAP_PROT | 61 | select HAVE_IOREMAP_PROT |
62 | select HAVE_IRQ_EXIT_ON_IRQ_STACK | 62 | select HAVE_IRQ_EXIT_ON_IRQ_STACK |
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 3b795a0cab62..959866c156de 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig | |||
@@ -185,12 +185,12 @@ config PPC | |||
185 | select HAVE_DYNAMIC_FTRACE_WITH_REGS if MPROFILE_KERNEL | 185 | select HAVE_DYNAMIC_FTRACE_WITH_REGS if MPROFILE_KERNEL |
186 | select HAVE_EBPF_JIT if PPC64 | 186 | select HAVE_EBPF_JIT if PPC64 |
187 | select HAVE_EFFICIENT_UNALIGNED_ACCESS if !(CPU_LITTLE_ENDIAN && POWER7_CPU) | 187 | select HAVE_EFFICIENT_UNALIGNED_ACCESS if !(CPU_LITTLE_ENDIAN && POWER7_CPU) |
188 | select HAVE_FAST_GUP | ||
188 | select HAVE_FTRACE_MCOUNT_RECORD | 189 | select HAVE_FTRACE_MCOUNT_RECORD |
189 | select HAVE_FUNCTION_ERROR_INJECTION | 190 | select HAVE_FUNCTION_ERROR_INJECTION |
190 | select HAVE_FUNCTION_GRAPH_TRACER | 191 | select HAVE_FUNCTION_GRAPH_TRACER |
191 | select HAVE_FUNCTION_TRACER | 192 | select HAVE_FUNCTION_TRACER |
192 | select HAVE_GCC_PLUGINS if GCC_VERSION >= 50200 # plugin support on gcc <= 5.1 is buggy on PPC | 193 | select HAVE_GCC_PLUGINS if GCC_VERSION >= 50200 # plugin support on gcc <= 5.1 is buggy on PPC |
193 | select HAVE_GENERIC_GUP | ||
194 | select HAVE_HW_BREAKPOINT if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx) | 194 | select HAVE_HW_BREAKPOINT if PERF_EVENTS && (PPC_BOOK3S || PPC_8xx) |
195 | select HAVE_IDE | 195 | select HAVE_IDE |
196 | select HAVE_IOREMAP_PROT | 196 | select HAVE_IOREMAP_PROT |
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index f089ae375f6b..5d8570ed6cab 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig | |||
@@ -139,6 +139,7 @@ config S390 | |||
139 | select HAVE_DMA_CONTIGUOUS | 139 | select HAVE_DMA_CONTIGUOUS |
140 | select HAVE_DYNAMIC_FTRACE | 140 | select HAVE_DYNAMIC_FTRACE |
141 | select HAVE_DYNAMIC_FTRACE_WITH_REGS | 141 | select HAVE_DYNAMIC_FTRACE_WITH_REGS |
142 | select HAVE_FAST_GUP | ||
142 | select HAVE_EFFICIENT_UNALIGNED_ACCESS | 143 | select HAVE_EFFICIENT_UNALIGNED_ACCESS |
143 | select HAVE_FENTRY | 144 | select HAVE_FENTRY |
144 | select HAVE_FTRACE_MCOUNT_RECORD | 145 | select HAVE_FTRACE_MCOUNT_RECORD |
@@ -146,7 +147,6 @@ config S390 | |||
146 | select HAVE_FUNCTION_TRACER | 147 | select HAVE_FUNCTION_TRACER |
147 | select HAVE_FUTEX_CMPXCHG if FUTEX | 148 | select HAVE_FUTEX_CMPXCHG if FUTEX |
148 | select HAVE_GCC_PLUGINS | 149 | select HAVE_GCC_PLUGINS |
149 | select HAVE_GENERIC_GUP | ||
150 | select HAVE_KERNEL_BZIP2 | 150 | select HAVE_KERNEL_BZIP2 |
151 | select HAVE_KERNEL_GZIP | 151 | select HAVE_KERNEL_GZIP |
152 | select HAVE_KERNEL_LZ4 | 152 | select HAVE_KERNEL_LZ4 |
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 02ae8132ebfe..31a7d12db705 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig | |||
@@ -15,7 +15,7 @@ config SUPERH | |||
15 | select HAVE_ARCH_TRACEHOOK | 15 | select HAVE_ARCH_TRACEHOOK |
16 | select HAVE_PERF_EVENTS | 16 | select HAVE_PERF_EVENTS |
17 | select HAVE_DEBUG_BUGVERBOSE | 17 | select HAVE_DEBUG_BUGVERBOSE |
18 | select HAVE_GENERIC_GUP | 18 | select HAVE_FAST_GUP if MMU |
19 | select ARCH_HAVE_CUSTOM_GPIO_H | 19 | select ARCH_HAVE_CUSTOM_GPIO_H |
20 | select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A) | 20 | select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A) |
21 | select ARCH_HAS_GCOV_PROFILE_ALL | 21 | select ARCH_HAS_GCOV_PROFILE_ALL |
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index c59464755764..e9f5d62e9817 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig | |||
@@ -28,7 +28,7 @@ config SPARC | |||
28 | select RTC_DRV_M48T59 | 28 | select RTC_DRV_M48T59 |
29 | select RTC_SYSTOHC | 29 | select RTC_SYSTOHC |
30 | select HAVE_ARCH_JUMP_LABEL if SPARC64 | 30 | select HAVE_ARCH_JUMP_LABEL if SPARC64 |
31 | select HAVE_GENERIC_GUP if SPARC64 | 31 | select HAVE_FAST_GUP if SPARC64 |
32 | select GENERIC_IRQ_SHOW | 32 | select GENERIC_IRQ_SHOW |
33 | select ARCH_WANT_IPC_PARSE_VERSION | 33 | select ARCH_WANT_IPC_PARSE_VERSION |
34 | select GENERIC_PCI_IOMAP | 34 | select GENERIC_PCI_IOMAP |
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 71c1f7864434..9df2d1cb7a9e 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -159,6 +159,7 @@ config X86 | |||
159 | select HAVE_EFFICIENT_UNALIGNED_ACCESS | 159 | select HAVE_EFFICIENT_UNALIGNED_ACCESS |
160 | select HAVE_EISA | 160 | select HAVE_EISA |
161 | select HAVE_EXIT_THREAD | 161 | select HAVE_EXIT_THREAD |
162 | select HAVE_FAST_GUP | ||
162 | select HAVE_FENTRY if X86_64 || DYNAMIC_FTRACE | 163 | select HAVE_FENTRY if X86_64 || DYNAMIC_FTRACE |
163 | select HAVE_FTRACE_MCOUNT_RECORD | 164 | select HAVE_FTRACE_MCOUNT_RECORD |
164 | select HAVE_FUNCTION_GRAPH_TRACER | 165 | select HAVE_FUNCTION_GRAPH_TRACER |
@@ -2907,9 +2908,6 @@ config HAVE_ATOMIC_IOMAP | |||
2907 | config X86_DEV_DMA_OPS | 2908 | config X86_DEV_DMA_OPS |
2908 | bool | 2909 | bool |
2909 | 2910 | ||
2910 | config HAVE_GENERIC_GUP | ||
2911 | def_bool y | ||
2912 | |||
2913 | source "drivers/firmware/Kconfig" | 2911 | source "drivers/firmware/Kconfig" |
2914 | 2912 | ||
2915 | source "arch/x86/kvm/Kconfig" | 2913 | source "arch/x86/kvm/Kconfig" |
diff --git a/mm/Kconfig b/mm/Kconfig index 53e2ca54b385..b5a258d62465 100644 --- a/mm/Kconfig +++ b/mm/Kconfig | |||
@@ -132,7 +132,7 @@ config HAVE_MEMBLOCK_NODE_MAP | |||
132 | config HAVE_MEMBLOCK_PHYS_MAP | 132 | config HAVE_MEMBLOCK_PHYS_MAP |
133 | bool | 133 | bool |
134 | 134 | ||
135 | config HAVE_GENERIC_GUP | 135 | config HAVE_FAST_GUP |
136 | bool | 136 | bool |
137 | 137 | ||
138 | config ARCH_KEEP_MEMBLOCK | 138 | config ARCH_KEEP_MEMBLOCK |
@@ -1651,7 +1651,7 @@ struct page *get_dump_page(unsigned long addr) | |||
1651 | #endif /* CONFIG_ELF_CORE */ | 1651 | #endif /* CONFIG_ELF_CORE */ |
1652 | 1652 | ||
1653 | /* | 1653 | /* |
1654 | * Generic Fast GUP | 1654 | * Fast GUP |
1655 | * | 1655 | * |
1656 | * get_user_pages_fast attempts to pin user pages by walking the page | 1656 | * get_user_pages_fast attempts to pin user pages by walking the page |
1657 | * tables directly and avoids taking locks. Thus the walker needs to be | 1657 | * tables directly and avoids taking locks. Thus the walker needs to be |
@@ -1683,7 +1683,7 @@ struct page *get_dump_page(unsigned long addr) | |||
1683 | * | 1683 | * |
1684 | * This code is based heavily on the PowerPC implementation by Nick Piggin. | 1684 | * This code is based heavily on the PowerPC implementation by Nick Piggin. |
1685 | */ | 1685 | */ |
1686 | #ifdef CONFIG_HAVE_GENERIC_GUP | 1686 | #ifdef CONFIG_HAVE_FAST_GUP |
1687 | #ifdef CONFIG_GUP_GET_PTE_LOW_HIGH | 1687 | #ifdef CONFIG_GUP_GET_PTE_LOW_HIGH |
1688 | /* | 1688 | /* |
1689 | * WARNING: only to be used in the get_user_pages_fast() implementation. | 1689 | * WARNING: only to be used in the get_user_pages_fast() implementation. |