2013-09-07 08:25:18

by Marco Stornelli

[permalink] [raw]
Subject: [PATCH 03/19] pramfs: export xip_file_fault

Export xip_file_fault to modules.

Signed-off-by: Marco Stornelli <[email protected]>
---
include/linux/fs.h | 2 ++
mm/filemap_xip.c | 3 ++-
2 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/include/linux/fs.h b/include/linux/fs.h
index 3b4cd82..1f61e07 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -41,6 +41,7 @@ struct kobject;
struct pipe_inode_info;
struct poll_table_struct;
struct kstatfs;
+struct vm_fault;
struct vm_area_struct;
struct vfsmount;
struct cred;
@@ -2445,6 +2446,7 @@ extern int nonseekable_open(struct inode * inode, struct file * filp);
#ifdef CONFIG_FS_XIP
extern ssize_t xip_file_read(struct file *filp, char __user *buf, size_t len,
loff_t *ppos);
+extern int xip_file_fault(struct vm_area_struct *vma, struct vm_fault *vmf);
extern int xip_file_mmap(struct file * file, struct vm_area_struct * vma);
extern ssize_t xip_file_write(struct file *filp, const char __user *buf,
size_t len, loff_t *ppos);
diff --git a/mm/filemap_xip.c b/mm/filemap_xip.c
index 28fe26b..50bbc5d 100644
--- a/mm/filemap_xip.c
+++ b/mm/filemap_xip.c
@@ -219,7 +219,7 @@ retry:
*
* This function is derived from filemap_fault, but used for execute in place
*/
-static int xip_file_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
+int xip_file_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
{
struct file *file = vma->vm_file;
struct address_space *mapping = file->f_mapping;
@@ -303,6 +303,7 @@ out:
}
}

+EXPORT_SYMBOL_GPL(xip_file_fault);
static const struct vm_operations_struct xip_file_vm_ops = {
.fault = xip_file_fault,
.page_mkwrite = filemap_page_mkwrite,
--
1.7.3.4