From: venkatesh.pallipadi@intel.com
To: mingo@elte.hu, tglx@linutronix.de, hpa@zytor.com,
akpm@linux-foundation.org, npiggin@suse.de, hugh@veritas.com
Cc: arjan@infradead.org, jbarnes@virtuousgeek.org, rdreier@cisco.com,
jeremy@goop.org, linux-kernel@vger.kernel.org,
Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>,
Suresh Siddha <suresh.b.siddha@intel.com>
Subject: [patch 6/7] x86 PAT: add pgprot_writecombine() interface for drivers - v3
Date: Thu, 18 Dec 2008 11:41:32 -0800 [thread overview]
Message-ID: <20081218194617.828992000@intel.com> (raw)
In-Reply-To: 20081218194126.963894000@intel.com
[-- Attachment #1: add_pgprot_writecombine.patch --]
[-- Type: text/plain, Size: 2188 bytes --]
Add pgprot_writecombine. pgprot_writecombine will be aliased to
pgprot_noncached when not supported by the architecture.
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
---
arch/x86/include/asm/pgtable.h | 3 +++
arch/x86/mm/pat.c | 8 ++++++++
include/asm-generic/pgtable.h | 4 ++++
3 files changed, 15 insertions(+)
Index: linux-2.6/include/asm-generic/pgtable.h
===================================================================
--- linux-2.6.orig/include/asm-generic/pgtable.h 2008-12-17 15:01:51.000000000 -0800
+++ linux-2.6/include/asm-generic/pgtable.h 2008-12-17 17:23:11.000000000 -0800
@@ -129,6 +129,10 @@ static inline void ptep_set_wrprotect(st
#define move_pte(pte, prot, old_addr, new_addr) (pte)
#endif
+#ifndef pgprot_writecombine
+#define pgprot_writecombine pgprot_noncached
+#endif
+
/*
* When walking page tables, get the address of the next boundary,
* or the end address of the range if that comes earlier. Although no
Index: linux-2.6/arch/x86/include/asm/pgtable.h
===================================================================
--- linux-2.6.orig/arch/x86/include/asm/pgtable.h 2008-12-17 17:23:07.000000000 -0800
+++ linux-2.6/arch/x86/include/asm/pgtable.h 2008-12-17 17:23:11.000000000 -0800
@@ -168,6 +168,9 @@
#ifndef __ASSEMBLY__
+#define pgprot_writecombine pgprot_writecombine
+extern pgprot_t pgprot_writecombine(pgprot_t prot);
+
/*
* ZERO_PAGE is a global shared page that is always zero: used
* for zero-mapped memory areas etc..
Index: linux-2.6/arch/x86/mm/pat.c
===================================================================
--- linux-2.6.orig/arch/x86/mm/pat.c 2008-12-17 17:22:59.000000000 -0800
+++ linux-2.6/arch/x86/mm/pat.c 2008-12-17 17:23:11.000000000 -0800
@@ -832,6 +832,14 @@ void untrack_pfn_vma(struct vm_area_stru
}
}
+pgprot_t pgprot_writecombine(pgprot_t prot)
+{
+ if (pat_enabled)
+ return __pgprot(pgprot_val(prot) | _PAGE_CACHE_WC);
+ else
+ return pgprot_noncached(prot);
+}
+
#if defined(CONFIG_DEBUG_FS) && defined(CONFIG_X86_PAT)
/* get Nth element of the linked list */
--
next prev parent reply other threads:[~2008-12-18 20:03 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-18 19:41 [patch 0/7] x86 PAT: track pfnmap mappings with remap_pfn_range vm_insert_pfn - v3 venkatesh.pallipadi
2008-12-18 19:41 ` [patch 1/7] x86 PAT: store vm_pgoff for all linear_over_vma_region mappings " venkatesh.pallipadi
2008-12-18 21:27 ` Nick Piggin
2008-12-18 22:10 ` Pallipadi, Venkatesh
2008-12-18 22:33 ` Nick Piggin
2008-12-18 19:41 ` [patch 2/7] x86 PAT: Add follow_pfnmp_pte routine to help tracking pfnmap pages " venkatesh.pallipadi
2008-12-18 21:31 ` Nick Piggin
2008-12-18 22:15 ` Pallipadi, Venkatesh
2008-12-18 19:41 ` [patch 3/7] x86 PAT: hooks in generic vm code to help archs to track pfnmap regions " venkatesh.pallipadi
2008-12-18 21:35 ` Nick Piggin
2008-12-18 22:23 ` Pallipadi, Venkatesh
2008-12-18 19:41 ` [patch 4/7] x86 PAT: Implement track/untrack of pfnmap regions for x86 " venkatesh.pallipadi
2008-12-18 21:38 ` Nick Piggin
2008-12-18 21:40 ` H. Peter Anvin
2008-12-18 21:46 ` Ingo Molnar
2008-12-18 21:53 ` Pallipadi, Venkatesh
2008-12-18 19:41 ` [patch 5/7] x86 PAT: change pgprot_noncached to uc_minus instead of strong uc " venkatesh.pallipadi
2008-12-18 19:41 ` venkatesh.pallipadi [this message]
2008-12-18 19:41 ` [patch 7/7] x86 PAT: update documentation to cover pgprot and remap_pfn related changes " venkatesh.pallipadi
2008-12-18 21:13 ` Randy Dunlap
2008-12-18 21:49 ` Pallipadi, Venkatesh
2008-12-18 21:53 ` Randy Dunlap
2008-12-18 22:03 ` Pallipadi, Venkatesh
2008-12-18 21:17 ` [patch 0/7] x86 PAT: track pfnmap mappings with remap_pfn_range vm_insert_pfn " H. Peter Anvin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20081218194617.828992000@intel.com \
--to=venkatesh.pallipadi@intel.com \
--cc=akpm@linux-foundation.org \
--cc=arjan@infradead.org \
--cc=hpa@zytor.com \
--cc=hugh@veritas.com \
--cc=jbarnes@virtuousgeek.org \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=npiggin@suse.de \
--cc=rdreier@cisco.com \
--cc=suresh.b.siddha@intel.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.