From: Ivan Shapovalov <intelfx100@gmail.com>
To: reiserfs-devel@vger.kernel.org
Cc: edward.shishkin@gmail.com, Ivan Shapovalov <intelfx100@gmail.com>
Subject: [RFC] [PATCHv3 6/9] reiser4: batch discard support: add a dummy FITRIM ioctl handler for directories.
Date: Mon, 18 Aug 2014 01:52:56 +0400 [thread overview]
Message-ID: <1408312379-1990-7-git-send-email-intelfx100@gmail.com> (raw)
In-Reply-To: <1408312379-1990-1-git-send-email-intelfx100@gmail.com>
Signed-off-by: Ivan Shapovalov <intelfx100@gmail.com>
---
fs/reiser4/plugin/dir/dir.h | 2 ++
fs/reiser4/plugin/file_ops.c | 27 +++++++++++++++++++++++++++
fs/reiser4/plugin/object.c | 6 +++++-
3 files changed, 34 insertions(+), 1 deletion(-)
diff --git a/fs/reiser4/plugin/dir/dir.h b/fs/reiser4/plugin/dir/dir.h
index 4a91ebe..5eb7bda 100644
--- a/fs/reiser4/plugin/dir/dir.h
+++ b/fs/reiser4/plugin/dir/dir.h
@@ -10,6 +10,8 @@
#include <linux/fs.h>*/
+long reiser4_ioctl_dir_common(struct file *file, unsigned int cmd, unsigned long arg);
+
/* declarations of functions implementing HASHED_DIR_PLUGIN_ID dir plugin */
/* "hashed" directory methods of dir plugin */
diff --git a/fs/reiser4/plugin/file_ops.c b/fs/reiser4/plugin/file_ops.c
index 466da64..65e2b02 100644
--- a/fs/reiser4/plugin/file_ops.c
+++ b/fs/reiser4/plugin/file_ops.c
@@ -107,6 +107,33 @@ int reiser4_sync_file_common(struct file *file, loff_t start, loff_t end, int da
return 0;
}
+/** reiser4_ioctl_dir_common - ioctl of struct file_operations for typical directory
+ */
+long reiser4_ioctl_dir_common(struct file *file, unsigned int cmd, unsigned long arg)
+{
+ struct inode *inode = file_inode(file);
+ struct super_block *super = inode->i_sb;
+ reiser4_context *ctx;
+ int ret;
+
+ ctx = reiser4_init_context(super);
+ if (IS_ERR(ctx))
+ return PTR_ERR(ctx);
+
+ switch (cmd) {
+ case FITRIM:
+ warning("intelfx-62", "FITRIM ioctl not implemented");
+ /* fall-through to -ENOSYS */
+
+ default:
+ ret = RETERR(-ENOSYS);
+ break;
+ }
+
+ reiser4_exit_context(ctx);
+ return ret;
+}
+
/*
* Local variables:
* c-indentation-style: "K&R"
diff --git a/fs/reiser4/plugin/object.c b/fs/reiser4/plugin/object.c
index 553f1e2..ce09a8a 100644
--- a/fs/reiser4/plugin/object.c
+++ b/fs/reiser4/plugin/object.c
@@ -251,7 +251,11 @@ static struct file_operations directory_f_ops = {
.read = generic_read_dir,
.iterate = reiser4_iterate_common,
.release = reiser4_release_dir_common,
- .fsync = reiser4_sync_common
+ .fsync = reiser4_sync_common,
+#ifdef CONFIG_COMPAT
+ .compat_ioctl = reiser4_ioctl_dir_common,
+#endif
+ .unlocked_ioctl = reiser4_ioctl_dir_common
};
static struct address_space_operations directory_a_ops = {
.writepage = writepage_bugop,
--
2.0.4
next prev parent reply other threads:[~2014-08-17 21:52 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-17 21:52 [RFC] [PATCHv3 0/9] reiser4: batch discard support (FITRIM ioctl): initial implementation Ivan Shapovalov
2014-08-17 21:52 ` [RFC] [PATCHv3 1/9] reiser4: block_alloc: add BA_SOME_SPACE flag for grabbing a fixed amount of space Ivan Shapovalov
2014-10-19 22:04 ` Edward Shishkin
2014-10-20 10:36 ` Ivan Shapovalov
2014-10-21 10:32 ` Edward Shishkin
2014-10-21 16:17 ` Ivan Shapovalov
2014-08-17 21:52 ` [RFC] [PATCHv3 2/9] reiser4: block_alloc: add a "forward" parameter to reiser4_blocknr_hint to allocate blocks only in forward direction Ivan Shapovalov
2014-10-21 15:50 ` Edward Shishkin
2014-10-23 7:24 ` Ivan Shapovalov
2014-10-23 14:37 ` Edward Shishkin
2014-10-23 20:58 ` Ivan Shapovalov
2014-10-26 16:45 ` Edward Shishkin
2014-10-26 23:21 ` Ivan Shapovalov
2014-08-17 21:52 ` [RFC] [PATCHv3 3/9] reiser4: txnmgr: free allocated but unneeded atom in atom_begin_and_assign_to_txnh() Ivan Shapovalov
2014-08-17 21:52 ` [RFC] [PATCHv3 4/9] reiser4: txnmgr: add reiser4_create_atom() which creates an empty atom without capturing any nodes Ivan Shapovalov
2014-08-17 21:52 ` [RFC] [PATCHv3 5/9] reiser4: txnmgr: call reiser4_post_write_back_hook() also for empty atoms Ivan Shapovalov
2014-08-17 21:52 ` Ivan Shapovalov [this message]
2014-08-17 21:52 ` [RFC] [PATCHv3 7/9] reiser4: batch discard support: actually implement the FITRIM ioctl handler Ivan Shapovalov
2014-10-20 10:54 ` Edward Shishkin
2014-10-20 22:39 ` Ivan Shapovalov
2014-10-21 10:14 ` Edward Shishkin
2014-10-21 16:18 ` Ivan Shapovalov
2014-10-21 16:21 ` Edward Shishkin
2014-10-21 16:23 ` Ivan Shapovalov
2014-10-21 16:33 ` Edward Shishkin
2014-10-21 16:42 ` Ivan Shapovalov
2014-10-21 18:01 ` Edward Shishkin
2014-10-21 18:11 ` Ivan Shapovalov
2014-10-21 18:48 ` Edward Shishkin
2014-10-21 19:00 ` Ivan Shapovalov
2014-10-21 19:13 ` Edward Shishkin
2014-08-17 21:52 ` [RFC] [PATCHv3 8/9] reiser4: block_alloc: add a "min_len" parameter to reiser4_blocknr_hint to limit allocated extent length from below Ivan Shapovalov
2014-08-17 21:52 ` [RFC] [PATCHv3 9/9] reiser4: batch discard support: honor minimal extent length passed from the userspace Ivan Shapovalov
2014-08-17 21:56 ` [RFC] [PATCHv3 0/9] reiser4: batch discard support (FITRIM ioctl): initial implementation Ivan Shapovalov
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=1408312379-1990-7-git-send-email-intelfx100@gmail.com \
--to=intelfx100@gmail.com \
--cc=edward.shishkin@gmail.com \
--cc=reiserfs-devel@vger.kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).