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

Greg KH gregkh at suse.de
Fri Feb 11 10:29:49 PST 2011


On Fri, Feb 11, 2011 at 09:59:00AM -0800, K. Y. Srinivasan wrote:
> --- 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
> +	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?

thanks,

greg k-h


More information about the devel mailing list