All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arch/unicore32/kernel/module.c: use __vmalloc_node_range() instead of __vmalloc_area()
@ 2014-03-14  0:49 Chen Gang
  2014-03-22  7:18 ` 回复: " 管雪涛
  0 siblings, 1 reply; 2+ messages in thread
From: Chen Gang @ 2014-03-14  0:49 UTC (permalink / raw)
  To: gxt; +Cc: linux-kernel

__vmalloc_area() has already been removed from upstream kernel, need
use __vmalloc_node_range() instead of.

The related commit: "d0a2126 mm: unify module_alloc code for vmalloc".

The related error (allmodconfig for unicore32):

    CC      arch/unicore32/kernel/module.o
  arch/unicore32/kernel/module.c: In function ‘module_alloc’:
  arch/unicore32/kernel/module.c:34: error: implicit declaration of function ‘__vmalloc_area’
  arch/unicore32/kernel/module.c:34: warning: return makes pointer from integer without a cast
  make[1]: *** [arch/unicore32/kernel/module.o] Error 1
  make: *** [arch/unicore32/kernel] Error 2


Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
---
 arch/unicore32/kernel/module.c |   11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/arch/unicore32/kernel/module.c b/arch/unicore32/kernel/module.c
index 16bd149..dc41f6d 100644
--- a/arch/unicore32/kernel/module.c
+++ b/arch/unicore32/kernel/module.c
@@ -24,14 +24,9 @@
 
 void *module_alloc(unsigned long size)
 {
-	struct vm_struct *area;
-
-	size = PAGE_ALIGN(size);
-	area = __get_vm_area(size, VM_ALLOC, MODULES_VADDR, MODULES_END);
-	if (!area)
-		return NULL;
-
-	return __vmalloc_area(area, GFP_KERNEL, PAGE_KERNEL_EXEC);
+	return __vmalloc_node_range(size, 1, MODULES_VADDR, MODULES_END,
+				GFP_KERNEL, PAGE_KERNEL_EXEC, NUMA_NO_NODE,
+				__builtin_return_address(0));
 }
 
 int
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* 回复: [PATCH] arch/unicore32/kernel/module.c: use __vmalloc_node_range() instead of __vmalloc_area()
  2014-03-14  0:49 [PATCH] arch/unicore32/kernel/module.c: use __vmalloc_node_range() instead of __vmalloc_area() Chen Gang
@ 2014-03-22  7:18 ` 管雪涛
  0 siblings, 0 replies; 2+ messages in thread
From: 管雪涛 @ 2014-03-22  7:18 UTC (permalink / raw)
  To: Chen Gang; +Cc: gxt, linux-kernel

Thanks Chen.

Cc: Zhichuang Sun <sunzhichuang@mprc.pku.edu.cn>
Tested-by: Zhichuang Sun <sunzhichuang@mprc.pku.edu.cn>
Acked-by: Xuetao Guan <gxt@pku.edu.cn>


----- Chen Gang <gang.chen.5i5j@gmail.com> 写道:
> __vmalloc_area() has already been removed from upstream kernel, need
> use __vmalloc_node_range() instead of.
> 
> The related commit: "d0a2126 mm: unify module_alloc code for vmalloc".
> 
> The related error (allmodconfig for unicore32):
> 
>     CC      arch/unicore32/kernel/module.o
>   arch/unicore32/kernel/module.c: In function ‘module_alloc’:
>   arch/unicore32/kernel/module.c:34: error: implicit declaration of function ‘__vmalloc_area’
>   arch/unicore32/kernel/module.c:34: warning: return makes pointer from integer without a cast
>   make[1]: *** [arch/unicore32/kernel/module.o] Error 1
>   make: *** [arch/unicore32/kernel] Error 2
> 
> 
> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
> ---
>  arch/unicore32/kernel/module.c |   11 +++--------
>  1 file changed, 3 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/unicore32/kernel/module.c b/arch/unicore32/kernel/module.c
> index 16bd149..dc41f6d 100644
> --- a/arch/unicore32/kernel/module.c
> +++ b/arch/unicore32/kernel/module.c
> @@ -24,14 +24,9 @@
>  
>  void *module_alloc(unsigned long size)
>  {
> -	struct vm_struct *area;
> -
> -	size = PAGE_ALIGN(size);
> -	area = __get_vm_area(size, VM_ALLOC, MODULES_VADDR, MODULES_END);
> -	if (!area)
> -		return NULL;
> -
> -	return __vmalloc_area(area, GFP_KERNEL, PAGE_KERNEL_EXEC);
> +	return __vmalloc_node_range(size, 1, MODULES_VADDR, MODULES_END,
> +				GFP_KERNEL, PAGE_KERNEL_EXEC, NUMA_NO_NODE,
> +				__builtin_return_address(0));
>  }
>  
>  int
> -- 
> 1.7.9.5


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-03-22  7:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-14  0:49 [PATCH] arch/unicore32/kernel/module.c: use __vmalloc_node_range() instead of __vmalloc_area() Chen Gang
2014-03-22  7:18 ` 回复: " 管雪涛

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.