Thread (7 messages) 7 messages, 3 authors, 2011-02-11

Re: [PATCH 1/3]: Staging: hv: Use native page allocation/free functions

flat view

From: Greg KH <gregkh@suse.de>
Date: 2011-02-11 21:26:07
Also in: lkml

On Fri, Feb 11, 2011 at 08:55:56PM +0000, KY Srinivasan wrote:
quoted
-----Original Message-----
From: Greg KH [mailto:gregkh@suse.de]
Sent: Friday, February 11, 2011 1:30 PM
To: KY Srinivasan
Cc: linux-kernel@vger.kernel.org; devel@linuxdriverproject.org;
virtualization@lists.osdl.org; Hank Janssen
Subject: Re: [PATCH 1/3]: Staging: hv: Use native page allocation/free functions

On Fri, Feb 11, 2011 at 09:59:00AM -0800, K. Y. Srinivasan wrote:
quoted
--- a/drivers/staging/hv/hv.c
+++ b/drivers/staging/hv/hv.c
@@ -230,7 +230,12 @@ int hv_init(void)
 	* Allocate the hypercall page memory
 	* virtaddr = osd_page_alloc(1);
 	*/
-	virtaddr = osd_virtual_alloc_exec(PAGE_SIZE);
+#ifdef __x86_64__
+	virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL, PAGE_KERNEL_EXEC);
#else
quoted
+	virtaddr =  __vmalloc(PAGE_SIZE, GFP_KERNEL,
+			__pgprot(__PAGE_KERNEL & (~_PAGE_NX))); #endif
I'm not saying this patch is wrong at all, but I still don't understand why this is
different depending on the architecture of the machine.  Why is this necessary, it
should be ok to do the same type of allocation no matter what the processor is,
right?
You are right Greg; I don't think there is a need to specify different page
protection bits based on the architecture - PAGE_KERNEL_EXEC should be enough.
I thought so, but for some reason Hank said there this was needed.
Hank, is it still true?
However, this is the code that is currently in the tree - refer to osd.c.
Oh, I remember, it's not a critique of this patch, it just reminded me
of this question I always had for this code.
If it is ok with you, I could submit an additional patch to clean this up.  
If Hank says it is ok, and you all test it to verify nothing breaks,
please send it on.

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help