Commit 44ab23b9 authored by Matthew Wilcox (Oracle)'s avatar Matthew Wilcox (Oracle)
Browse files

ntfs3: Call ntfs_write_begin() and ntfs_write_end() directly



There is only one kind of write_begin/write_end aops, so we don't need to
look up which aop it is, just make ntfs_write_begin() and ntfs_write_end()
available to this file and call them directly.

Signed-off-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: default avatarNamjae Jeon <linkinjeon@kernel.org>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
parent 27a77913
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -157,15 +157,14 @@ static int ntfs_extend_initialized_size(struct file *file,
		if (pos + len > new_valid)
			len = new_valid - pos;

		err = pagecache_write_begin(file, mapping, pos, len, 0, &page,
					    &fsdata);
		err = ntfs_write_begin(file, mapping, pos, len, &page, &fsdata);
		if (err)
			goto out;

		zero_user_segment(page, zerofrom, PAGE_SIZE);

		/* This function in any case puts page. */
		err = pagecache_write_end(file, mapping, pos, len, len, page,
		err = ntfs_write_end(file, mapping, pos, len, len, page,
					  fsdata);
		if (err < 0)
			goto out;
+5 −7
Original line number Diff line number Diff line
@@ -861,9 +861,8 @@ static int ntfs_get_block_write_begin(struct inode *inode, sector_t vbn,
				  bh_result, create, GET_BLOCK_WRITE_BEGIN);
}

static int ntfs_write_begin(struct file *file, struct address_space *mapping,
			    loff_t pos, u32 len, struct page **pagep,
			    void **fsdata)
int ntfs_write_begin(struct file *file, struct address_space *mapping,
		     loff_t pos, u32 len, struct page **pagep, void **fsdata)
{
	int err;
	struct inode *inode = mapping->host;
@@ -904,10 +903,9 @@ static int ntfs_write_begin(struct file *file, struct address_space *mapping,
/*
 * ntfs_write_end - Address_space_operations::write_end.
 */
static int ntfs_write_end(struct file *file, struct address_space *mapping,
int ntfs_write_end(struct file *file, struct address_space *mapping,
		   loff_t pos, u32 len, u32 copied, struct page *page,
		   void *fsdata)

{
	struct inode *inode = mapping->host;
	struct ntfs_inode *ni = ntfs_i(inode);
+5 −0
Original line number Diff line number Diff line
@@ -689,6 +689,11 @@ int ntfs_set_size(struct inode *inode, u64 new_size);
int reset_log_file(struct inode *inode);
int ntfs_get_block(struct inode *inode, sector_t vbn,
		   struct buffer_head *bh_result, int create);
int ntfs_write_begin(struct file *file, struct address_space *mapping,
		     loff_t pos, u32 len, struct page **pagep, void **fsdata);
int ntfs_write_end(struct file *file, struct address_space *mapping,
		   loff_t pos, u32 len, u32 copied, struct page *page,
		   void *fsdata);
int ntfs3_write_inode(struct inode *inode, struct writeback_control *wbc);
int ntfs_sync_inode(struct inode *inode);
int ntfs_flush_inodes(struct super_block *sb, struct inode *i1,