diff options
Diffstat (limited to 'arch/powerpc/include/asm/fixmap.h')
| -rw-r--r-- | arch/powerpc/include/asm/fixmap.h | 6 | 
1 files changed, 4 insertions, 2 deletions
| diff --git a/arch/powerpc/include/asm/fixmap.h b/arch/powerpc/include/asm/fixmap.h index 947b5b9c4424..a832aeafe560 100644 --- a/arch/powerpc/include/asm/fixmap.h +++ b/arch/powerpc/include/asm/fixmap.h @@ -111,8 +111,10 @@ static inline void __set_fixmap(enum fixed_addresses idx,  		BUILD_BUG_ON(idx >= __end_of_fixed_addresses);  	else if (WARN_ON(idx >= __end_of_fixed_addresses))  		return; - -	map_kernel_page(__fix_to_virt(idx), phys, flags); +	if (pgprot_val(flags)) +		map_kernel_page(__fix_to_virt(idx), phys, flags); +	else +		unmap_kernel_page(__fix_to_virt(idx));  }  #define __early_set_fixmap	__set_fixmap |