[PATCH 5/6] i386 virtualization - Make generic set wrprotect a macro

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 15, 2005 at 04:00:39PM -0700, zach@xxxxxxxxxx wrote:

> Make the generic version of ptep_set_wrprotect a macro.  This is good for
> code uniformity, and fixes the build for architectures which include pgtable.h
> through headers into assembly code, but do not define a ptep_set_wrprotect
> function.


This against the kernel coding style.
In fact, we are usually doing exactly the opposite. 

What exactly is the technical problem this patch is trying to solve, IOW 
which architectures are breaking for you?


> Signed-off-by: Zachary Amsden <zach@xxxxxxxxxx>
> Index: linux-2.6.13/include/asm-generic/pgtable.h
> ===================================================================
> --- linux-2.6.13.orig/include/asm-generic/pgtable.h	2005-08-12 12:12:55.000000000 -0700
> +++ linux-2.6.13/include/asm-generic/pgtable.h	2005-08-15 13:54:42.000000000 -0700
> @@ -313,11 +313,12 @@
>  #endif
>  
>  #ifndef __HAVE_ARCH_PTEP_SET_WRPROTECT
> -static inline void ptep_set_wrprotect(struct mm_struct *mm, unsigned long address, pte_t *ptep)
> -{
> -	pte_t old_pte = *ptep;
> -	set_pte_at(mm, address, ptep, pte_wrprotect(old_pte));
> -}
> +#define ptep_set_wrprotect(__mm, __address, __ptep)			\
> +({									\
> +	pte_t __old_pte = *(__ptep);					\
> +	set_pte_at((__mm), (__address), (__ptep),			\
> +			pte_wrprotect(__old_pte));			\
> +})
>  #endif
>  
>  #ifndef __HAVE_ARCH_PTE_SAME


cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux