From owner-svn-src-projects@FreeBSD.ORG  Sat Aug  7 02:08:33 2010
Return-Path: <owner-svn-src-projects@FreeBSD.ORG>
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 5818D106566B;
	Sat,  7 Aug 2010 02:08:33 +0000 (UTC)
	(envelope-from jeff@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
	by mx1.freebsd.org (Postfix) with ESMTP id 4742B8FC12;
	Sat,  7 Aug 2010 02:08:33 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
	by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o7728Xuc099252;
	Sat, 7 Aug 2010 02:08:33 GMT (envelope-from jeff@svn.freebsd.org)
Received: (from jeff@localhost)
	by svn.freebsd.org (8.14.3/8.14.3/Submit) id o7728XCn099249;
	Sat, 7 Aug 2010 02:08:33 GMT (envelope-from jeff@svn.freebsd.org)
Message-Id: <201008070208.o7728XCn099249@svn.freebsd.org>
From: Jeff Roberson <jeff@FreeBSD.org>
Date: Sat, 7 Aug 2010 02:08:33 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc: 
Subject: svn commit: r210988 - projects/ofed/head/sys/ofed/include/linux
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src &quot; projects&quot;
	tree" <svn-src-projects.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>, 
	<mailto:svn-src-projects-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-projects>
List-Post: <mailto:svn-src-projects@freebsd.org>
List-Help: <mailto:svn-src-projects-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>, 
	<mailto:svn-src-projects-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 07 Aug 2010 02:08:33 -0000

Author: jeff
Date: Sat Aug  7 02:08:33 2010
New Revision: 210988
URL: http://svn.freebsd.org/changeset/base/210988

Log:
   - Implement enough of vm_area_struct to support mmap.
   - Define a few page protection types.
  
  Sponsored by:	Isilon Systems, iX Systems, and Panasas.

Modified:
  projects/ofed/head/sys/ofed/include/linux/mm.h
  projects/ofed/head/sys/ofed/include/linux/page.h

Modified: projects/ofed/head/sys/ofed/include/linux/mm.h
==============================================================================
--- projects/ofed/head/sys/ofed/include/linux/mm.h	Sat Aug  7 02:07:40 2010	(r210987)
+++ projects/ofed/head/sys/ofed/include/linux/mm.h	Sat Aug  7 02:08:33 2010	(r210988)
@@ -35,6 +35,11 @@
 #define	PAGE_ALIGN(x)	ALIGN(x, PAGE_SIZE)
 
 struct vm_area_struct {
+	vm_offset_t	vm_start;
+	vm_offset_t	vm_end;
+	vm_offset_t	vm_pgoff;
+	vm_paddr_t	vm_pfn;		/* PFN For mmap. */
+	vm_memattr_t	vm_page_prot;
 };
 
 /*
@@ -62,4 +67,18 @@ lowmem_page_address(struct page *page)
 	return page_address(page);
 }
 
+/*
+ * This only works via mmap ops.
+ */
+static inline int
+io_remap_pfn_range(struct vm_area_struct *vma,
+    unsigned long addr, unsigned long pfn, unsigned long size,
+    vm_memattr_t prot)
+{
+	vma->vm_page_prot = prot;
+	vma->vm_pfn = pfn;
+
+	return (0);
+}
+
 #endif	/* _LINUX_MM_H_ */

Modified: projects/ofed/head/sys/ofed/include/linux/page.h
==============================================================================
--- projects/ofed/head/sys/ofed/include/linux/page.h	Sat Aug  7 02:07:40 2010	(r210987)
+++ projects/ofed/head/sys/ofed/include/linux/page.h	Sat Aug  7 02:08:33 2010	(r210988)
@@ -40,6 +40,8 @@
 #define	virt_to_page(x)	PHYS_TO_VM_PAGE(vtophys((x)))
 
 #define	clear_page(page)	memset((page), 0, PAGE_SIZE)
+#define	pgprot_noncached(prot)	VM_MEMATTR_UNCACHED
+#define	pgprot_wc(prot)		VM_MEMATTR_WRITE_COMBINING
 
 #undef	PAGE_MASK
 #define	PAGE_MASK	(~(PAGE_SIZE-1))