lkml.org 
[lkml]   [2018]   [Nov]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH 1/6] fuse: Change argument of fuse_flush_writepages()
From
Date
Next patches introduce fuse_inode::lock, which will be used
in __releases() and __acquires() instead of fc->lock.
This patch makes this function to use argument fuse_inode
instead of inode as preparation for that.

Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
---
fs/fuse/dir.c | 2 +-
fs/fuse/file.c | 8 ++++----
fs/fuse/fuse_i.h | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c
index 47395b0c3b35..c71f7e9ee0f7 100644
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -1360,7 +1360,7 @@ static void __fuse_release_nowrite(struct inode *inode)

BUG_ON(fi->writectr != FUSE_NOWRITE);
fi->writectr = 0;
- fuse_flush_writepages(inode);
+ fuse_flush_writepages(fi);
}

void fuse_release_nowrite(struct inode *inode)
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index cc2121b37bf5..d5bd29610875 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -1522,12 +1522,12 @@ __acquires(fc->lock)
*
* Called with fc->lock
*/
-void fuse_flush_writepages(struct inode *inode)
+void fuse_flush_writepages(struct fuse_inode *fi)
__releases(fc->lock)
__acquires(fc->lock)
{
+ struct inode *inode = &fi->inode;
struct fuse_conn *fc = get_fuse_conn(inode);
- struct fuse_inode *fi = get_fuse_inode(inode);
size_t crop = i_size_read(inode);
struct fuse_req *req;

@@ -1670,7 +1670,7 @@ static int fuse_writepage_locked(struct page *page)
spin_lock(&fc->lock);
list_add(&req->writepages_entry, &fi->writepages);
list_add_tail(&req->list, &fi->queued_writes);
- fuse_flush_writepages(inode);
+ fuse_flush_writepages(fi);
spin_unlock(&fc->lock);

end_page_writeback(page);
@@ -1728,7 +1728,7 @@ static void fuse_writepages_send(struct fuse_fill_wb_data *data)
req->ff = fuse_file_get(data->ff);
spin_lock(&fc->lock);
list_add_tail(&req->list, &fi->queued_writes);
- fuse_flush_writepages(inode);
+ fuse_flush_writepages(fi);
spin_unlock(&fc->lock);

for (i = 0; i < num_pages; i++)
diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h
index e9f712e81c7d..38bd7ca1908a 100644
--- a/fs/fuse/fuse_i.h
+++ b/fs/fuse/fuse_i.h
@@ -995,7 +995,7 @@ void fuse_update_ctime(struct inode *inode);

int fuse_update_attributes(struct inode *inode, struct file *file);

-void fuse_flush_writepages(struct inode *inode);
+void fuse_flush_writepages(struct fuse_inode *fi);

void fuse_set_nowrite(struct inode *inode);
void fuse_release_nowrite(struct inode *inode);
\
 
 \ /
  Last update: 2018-11-06 10:44    [W:0.100 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site