x86/mm/pat: Add pgprot_writethrough()
Add pgprot_writethrough() for setting page protection flags to Write-Through mode. Signed-off-by: Toshi Kani <toshi.kani@hp.com> Signed-off-by: Borislav Petkov <bp@suse.de> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Elliott@hp.com Cc: H. Peter Anvin <hpa@zytor.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Luis R. Rodriguez <mcgrof@suse.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: arnd@arndb.de Cc: hch@lst.de Cc: hmh@hmh.eng.br Cc: jgross@suse.com Cc: konrad.wilk@oracle.com Cc: linux-mm <linux-mm@kvack.org> Cc: linux-nvdimm@lists.01.org Cc: stefan.bader@canonical.com Cc: yigal@plexistor.com Link: http://lkml.kernel.org/r/1433436928-31903-11-git-send-email-bp@alien8.de Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
c7c95f19f3
commit
d1b4bfbfac
3 changed files with 14 additions and 0 deletions
|
@ -367,6 +367,9 @@ extern int nx_enabled;
|
||||||
#define pgprot_writecombine pgprot_writecombine
|
#define pgprot_writecombine pgprot_writecombine
|
||||||
extern pgprot_t pgprot_writecombine(pgprot_t prot);
|
extern pgprot_t pgprot_writecombine(pgprot_t prot);
|
||||||
|
|
||||||
|
#define pgprot_writethrough pgprot_writethrough
|
||||||
|
extern pgprot_t pgprot_writethrough(pgprot_t prot);
|
||||||
|
|
||||||
/* Indicate that x86 has its own track and untrack pfn vma functions */
|
/* Indicate that x86 has its own track and untrack pfn vma functions */
|
||||||
#define __HAVE_PFNMAP_TRACKING
|
#define __HAVE_PFNMAP_TRACKING
|
||||||
|
|
||||||
|
|
|
@ -1000,6 +1000,13 @@ pgprot_t pgprot_writecombine(pgprot_t prot)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(pgprot_writecombine);
|
EXPORT_SYMBOL_GPL(pgprot_writecombine);
|
||||||
|
|
||||||
|
pgprot_t pgprot_writethrough(pgprot_t prot)
|
||||||
|
{
|
||||||
|
return __pgprot(pgprot_val(prot) |
|
||||||
|
cachemode2protval(_PAGE_CACHE_MODE_WT));
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(pgprot_writethrough);
|
||||||
|
|
||||||
#if defined(CONFIG_DEBUG_FS) && defined(CONFIG_X86_PAT)
|
#if defined(CONFIG_DEBUG_FS) && defined(CONFIG_X86_PAT)
|
||||||
|
|
||||||
static struct memtype *memtype_get_idx(loff_t pos)
|
static struct memtype *memtype_get_idx(loff_t pos)
|
||||||
|
|
|
@ -262,6 +262,10 @@ static inline int pmd_same(pmd_t pmd_a, pmd_t pmd_b)
|
||||||
#define pgprot_writecombine pgprot_noncached
|
#define pgprot_writecombine pgprot_noncached
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef pgprot_writethrough
|
||||||
|
#define pgprot_writethrough pgprot_noncached
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef pgprot_device
|
#ifndef pgprot_device
|
||||||
#define pgprot_device pgprot_noncached
|
#define pgprot_device pgprot_noncached
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue