[PATCH] debugfs: Add proxy function for the mmap file operation

From: Liviu Dudau
Date: Fri Jul 29 2016 - 10:35:10 EST


Add proxy function for the mmap file_operations hook under the
full_proxy_fops structure. This is useful for providing a custom
mmap routine in a driver's debugfs implementation.

Cc: Nicolai Stange <nicstange@xxxxxxxxx>
Signed-off-by: Liviu Dudau <Liviu.Dudau@xxxxxxx>
---
fs/debugfs/file.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/fs/debugfs/file.c b/fs/debugfs/file.c
index 592059f..d87148a 100644
--- a/fs/debugfs/file.c
+++ b/fs/debugfs/file.c
@@ -168,6 +168,10 @@ FULL_PROXY_FUNC(write, ssize_t, filp,
loff_t *ppos),
ARGS(filp, buf, size, ppos));

+FULL_PROXY_FUNC(mmap, int, filp,
+ PROTO(struct file *filp, struct vm_area_struct *vma),
+ ARGS(filp, vma));
+
FULL_PROXY_FUNC(unlocked_ioctl, long, filp,
PROTO(struct file *filp, unsigned int cmd, unsigned long arg),
ARGS(filp, cmd, arg));
@@ -224,6 +228,8 @@ static void __full_proxy_fops_init(struct file_operations *proxy_fops,
proxy_fops->write = full_proxy_write;
if (real_fops->poll)
proxy_fops->poll = full_proxy_poll;
+ if (real_fops->mmap)
+ proxy_fops->mmap = full_proxy_mmap;
if (real_fops->unlocked_ioctl)
proxy_fops->unlocked_ioctl = full_proxy_unlocked_ioctl;
}
--
2.9.0