All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nikolay Borisov <n.borisov.lkml@gmail.com>
To: dsterba@suse.com
Cc: linux-btrfs@vger.kernel.org, Nikolay Borisov <nborisov@suse.com>
Subject: [PATCH 37/38] btrfs: Make get_extent_t take btrfs_inode
Date: Fri, 17 Feb 2017 16:43:28 +0200	[thread overview]
Message-ID: <1487342609-20652-38-git-send-email-nborisov@suse.com> (raw)
In-Reply-To: <1487342609-20652-1-git-send-email-nborisov@suse.com>

In addition to changing the signature, this patch also switches
all the functions which are used as an argument to also take btrfs_inode.
Namely those are: btrfs_get_extent and btrfs_get_extent_filemap.

Signed-off-by: Nikolay Borisov <nborisov@suse.com>
---
 fs/btrfs/ctree.h     |  4 ++--
 fs/btrfs/disk-io.c   |  6 +++---
 fs/btrfs/extent_io.c |  6 +++---
 fs/btrfs/extent_io.h |  2 +-
 fs/btrfs/file.c      |  6 +++---
 fs/btrfs/inode.c     | 24 ++++++++++++------------
 fs/btrfs/ioctl.c     |  2 +-
 7 files changed, 25 insertions(+), 25 deletions(-)

diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
index d44d414a2127..7ac0338379b4 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
@@ -3100,7 +3100,7 @@ struct btrfs_delalloc_work *btrfs_alloc_delalloc_work(struct inode *inode,
 						    int delay_iput);
 void btrfs_wait_and_free_delalloc_work(struct btrfs_delalloc_work *work);
 
-struct extent_map *btrfs_get_extent_fiemap(struct inode *inode, struct page *page,
+struct extent_map *btrfs_get_extent_fiemap(struct btrfs_inode *inode, struct page *page,
 					   size_t pg_offset, u64 start, u64 len,
 					   int create);
 noinline int can_nocow_extent(struct inode *inode, u64 offset, u64 *len,
@@ -3166,7 +3166,7 @@ void btrfs_destroy_cachep(void);
 long btrfs_ioctl_trans_end(struct file *file);
 struct inode *btrfs_iget(struct super_block *s, struct btrfs_key *location,
 			 struct btrfs_root *root, int *was_new);
-struct extent_map *btrfs_get_extent(struct inode *inode, struct page *page,
+struct extent_map *btrfs_get_extent(struct btrfs_inode *inode, struct page *page,
 				    size_t pg_offset, u64 start, u64 end,
 				    int create);
 int btrfs_update_inode(struct btrfs_trans_handle *trans,
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 32a9ec11888d..3c0dd67333ee 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -219,12 +219,12 @@ void btrfs_set_buffer_lockdep_class(u64 objectid, struct extent_buffer *eb,
  * extents on the btree inode are pretty simple, there's one extent
  * that covers the entire device
  */
-static struct extent_map *btree_get_extent(struct inode *inode,
+static struct extent_map *btree_get_extent(struct btrfs_inode *inode,
 		struct page *page, size_t pg_offset, u64 start, u64 len,
 		int create)
 {
-	struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
-	struct extent_map_tree *em_tree = &BTRFS_I(inode)->extent_tree;
+	struct btrfs_fs_info *fs_info = btrfs_sb(inode->vfs_inode.i_sb);
+	struct extent_map_tree *em_tree = &inode->extent_tree;
 	struct extent_map *em;
 	int ret;
 
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index fad5b2030c37..887d8a896ce1 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -2857,7 +2857,7 @@ __get_extent_map(struct inode *inode, struct page *page, size_t pg_offset,
 		*em_cached = NULL;
 	}
 
-	em = get_extent(inode, page, pg_offset, start, len, 0);
+	em = get_extent(BTRFS_I(inode), page, pg_offset, start, len, 0);
 	if (em_cached && !IS_ERR_OR_NULL(em)) {
 		BUG_ON(*em_cached);
 		atomic_inc(&em->refs);
@@ -3370,7 +3370,7 @@ static noinline_for_stack int __extent_writepage_io(struct inode *inode,
 							 page_end, NULL, 1);
 			break;
 		}
-		em = epd->get_extent(inode, page, pg_offset, cur,
+		em = epd->get_extent(BTRFS_I(inode), page, pg_offset, cur,
 				     end - cur + 1, 1);
 		if (IS_ERR_OR_NULL(em)) {
 			SetPageError(page);
@@ -4335,7 +4335,7 @@ static struct extent_map *get_extent_skip_holes(struct inode *inode,
 		if (len == 0)
 			break;
 		len = ALIGN(len, sectorsize);
-		em = get_extent(inode, NULL, 0, offset, len, 0);
+		em = get_extent(BTRFS_I(inode), NULL, 0, offset, len, 0);
 		if (IS_ERR_OR_NULL(em))
 			return em;
 
diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h
index 302e64be2e20..5e922e87abab 100644
--- a/fs/btrfs/extent_io.h
+++ b/fs/btrfs/extent_io.h
@@ -210,7 +210,7 @@ static inline int extent_compress_type(unsigned long bio_flags)
 
 struct extent_map_tree;
 
-typedef struct extent_map *(get_extent_t)(struct inode *inode,
+typedef struct extent_map *(get_extent_t)(struct btrfs_inode *inode,
 					  struct page *page,
 					  size_t pg_offset,
 					  u64 start, u64 len,
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 2d534d6c5514..d3e25730cdf0 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -2334,7 +2334,7 @@ static int find_first_non_hole(struct inode *inode, u64 *start, u64 *len)
 	struct extent_map *em;
 	int ret = 0;
 
-	em = btrfs_get_extent(inode, NULL, 0, *start, *len, 0);
+	em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, *start, *len, 0);
 	if (IS_ERR_OR_NULL(em)) {
 		if (!em)
 			ret = -ENOMEM;
@@ -2824,7 +2824,7 @@ static long btrfs_fallocate(struct file *file, int mode,
 	/* First, check if we exceed the qgroup limit */
 	INIT_LIST_HEAD(&reserve_list);
 	while (1) {
-		em = btrfs_get_extent(inode, NULL, 0, cur_offset,
+		em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, cur_offset,
 				      alloc_end - cur_offset, 0);
 		if (IS_ERR_OR_NULL(em)) {
 			if (!em)
@@ -2951,7 +2951,7 @@ static int find_desired_extent(struct inode *inode, loff_t *offset, int whence)
 			 &cached_state);
 
 	while (start < inode->i_size) {
-		em = btrfs_get_extent_fiemap(inode, NULL, 0, start, len, 0);
+		em = btrfs_get_extent_fiemap(BTRFS_I(inode), NULL, 0, start, len, 0);
 		if (IS_ERR(em)) {
 			ret = PTR_ERR(em);
 			em = NULL;
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index 1ba412440979..d78ec8d78781 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -4843,7 +4843,7 @@ int btrfs_cont_expand(struct inode *inode, loff_t oldsize, loff_t size)
 
 	cur_offset = hole_start;
 	while (1) {
-		em = btrfs_get_extent(inode, NULL, 0, cur_offset,
+		em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, cur_offset,
 				block_end - cur_offset, 0);
 		if (IS_ERR(em)) {
 			err = PTR_ERR(em);
@@ -6721,25 +6721,25 @@ static noinline int uncompress_inline(struct btrfs_path *path,
  * This also copies inline extents directly into the page.
  */
 
-struct extent_map *btrfs_get_extent(struct inode *inode, struct page *page,
+struct extent_map *btrfs_get_extent(struct btrfs_inode *inode, struct page *page,
 				    size_t pg_offset, u64 start, u64 len,
 				    int create)
 {
-	struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
+	struct btrfs_fs_info *fs_info = btrfs_sb(inode->vfs_inode.i_sb);
 	int ret;
 	int err = 0;
 	u64 extent_start = 0;
 	u64 extent_end = 0;
-	u64 objectid = btrfs_ino(BTRFS_I(inode));
+	u64 objectid = btrfs_ino(inode);
 	u32 found_type;
 	struct btrfs_path *path = NULL;
-	struct btrfs_root *root = BTRFS_I(inode)->root;
+	struct btrfs_root *root = inode->root;
 	struct btrfs_file_extent_item *item;
 	struct extent_buffer *leaf;
 	struct btrfs_key found_key;
 	struct extent_map *em = NULL;
-	struct extent_map_tree *em_tree = &BTRFS_I(inode)->extent_tree;
-	struct extent_io_tree *io_tree = &BTRFS_I(inode)->io_tree;
+	struct extent_map_tree *em_tree = &inode->extent_tree;
+	struct extent_io_tree *io_tree = &inode->io_tree;
 	struct btrfs_trans_handle *trans = NULL;
 	const bool new_inline = !page || create;
 
@@ -6852,7 +6852,7 @@ struct extent_map *btrfs_get_extent(struct inode *inode, struct page *page,
 		goto not_found_em;
 	}
 
-	btrfs_extent_item_to_extent_map(BTRFS_I(inode), path, item, new_inline, em);
+	btrfs_extent_item_to_extent_map(inode, path, item, new_inline, em);
 
 	if (found_type == BTRFS_FILE_EXTENT_REG ||
 	    found_type == BTRFS_FILE_EXTENT_PREALLOC) {
@@ -6988,7 +6988,7 @@ struct extent_map *btrfs_get_extent(struct inode *inode, struct page *page,
 	write_unlock(&em_tree->lock);
 out:
 
-	trace_btrfs_get_extent(root, BTRFS_I(inode), em);
+	trace_btrfs_get_extent(root, inode, em);
 
 	btrfs_free_path(path);
 	if (trans) {
@@ -7004,7 +7004,7 @@ struct extent_map *btrfs_get_extent(struct inode *inode, struct page *page,
 	return em;
 }
 
-struct extent_map *btrfs_get_extent_fiemap(struct inode *inode, struct page *page,
+struct extent_map *btrfs_get_extent_fiemap(struct btrfs_inode *inode, struct page *page,
 					   size_t pg_offset, u64 start, u64 len,
 					   int create)
 {
@@ -7043,7 +7043,7 @@ struct extent_map *btrfs_get_extent_fiemap(struct inode *inode, struct page *pag
 	em = NULL;
 
 	/* ok, we didn't find anything, lets look for delalloc */
-	found = count_range_bits(&BTRFS_I(inode)->io_tree, &range_start,
+	found = count_range_bits(&inode->io_tree, &range_start,
 				 end, len, EXTENT_DELALLOC, 1);
 	found_end = range_start + found;
 	if (found_end < range_start)
@@ -7613,7 +7613,7 @@ static int btrfs_get_blocks_direct(struct inode *inode, sector_t iblock,
 		goto err;
 	}
 
-	em = btrfs_get_extent(inode, NULL, 0, start, len, 0);
+	em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, start, len, 0);
 	if (IS_ERR(em)) {
 		ret = PTR_ERR(em);
 		goto unlock_err;
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index cdbf30e5743b..9011bd135223 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -1009,7 +1009,7 @@ static struct extent_map *defrag_lookup_extent(struct inode *inode, u64 start)
 
 		/* get the big lock and read metadata off disk */
 		lock_extent_bits(io_tree, start, end, &cached);
-		em = btrfs_get_extent(inode, NULL, 0, start, len, 0);
+		em = btrfs_get_extent(BTRFS_I(inode), NULL, 0, start, len, 0);
 		unlock_extent_cached(io_tree, start, end, &cached, GFP_NOFS);
 
 		if (IS_ERR(em))
-- 
2.7.4


  parent reply	other threads:[~2017-02-17 14:44 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-17 14:42 [PATCH 00/38] More btrfs_inode cleanups Nikolay Borisov
2017-02-17 14:42 ` [PATCH 01/38] btrfs: Make btrfs_log_all_parents take btrfs_inode Nikolay Borisov
2017-02-17 14:42 ` [PATCH 02/38] btrfs: Make btrfs_insert_dir_item " Nikolay Borisov
2017-02-17 14:42 ` [PATCH 03/38] btrfs: make btrfs_set_inode_index_count " Nikolay Borisov
2017-02-17 14:42 ` [PATCH 04/38] btrfs: Make btrfs_set_inode_index " Nikolay Borisov
2017-02-17 14:42 ` [PATCH 05/38] btrfs: Make btrfs_i_size_write " Nikolay Borisov
2017-02-17 14:42 ` [PATCH 06/38] btrfs: make btrfs_is_free_space_inode " Nikolay Borisov
2017-02-17 14:42 ` [PATCH 07/38] btrfs: make btrfs_alloc_data_chunk_ondemand " Nikolay Borisov
2017-02-17 14:42 ` [PATCH 08/38] btrfs: Make drop_outstanding_extent " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 09/38] btrfs: Make calc_csum_metadata_size " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 10/38] btrfs: Make btrfs_orphan_reserve_metadata " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 11/38] btrfs: Make btrfs_orphan_release_metadata " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 12/38] btrfs: Make btrfs_delalloc_reserve_metadata " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 13/38] btrfs: ale btrfs_delalloc_release_metadata " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 14/38] btrfs: Make (__)btrfs_add_inode_defrag " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 15/38] btrfs: Make btrfs_requeue_inode_defrag " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 16/38] btrfs: Make btrfs_drop_extent_cache " Nikolay Borisov
2017-02-17 16:47   ` kbuild test robot
2017-02-17 17:03   ` kbuild test robot
2017-02-17 14:43 ` [PATCH 17/38] btrfs: Make hole_mergeable " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 18/38] btrfs: Make fille_holes " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 19/38] btrfs: Make btrfs_mark_extent_written " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 20/38] btrfs: Make btrfs_lookup_ordered_range " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 21/38] btrfs: Make check_can_nocow " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 22/38] btrfs: Make lock_and_cleanup_extent_if_need " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 23/38] btrfs: make free_io_failure " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 24/38] btrfs: make btrfs_print_data_csum_error " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 25/38] btrfs: make check_compressed_csum " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 26/38] btrfs: make repair_io_failure " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 27/38] btrfs: make clean_io_failure " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 28/38] btrfs: make btrfs_free_io_failure_record " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 29/38] btrfs: make btrfs_orphan_del " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 30/38] btrfs: Make btrfs_orphan_add " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 31/38] btrfs: Make check_parent_dirs_for_sync " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 32/38] btrfs: make btrfs_log_inode_parent " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 33/38] btrfs: Make btrfs_extent_item_to_extent_map " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 34/38] btrfs: Make btrfs_clear_bit_hook " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 35/38] btrfs: Make clone_update_extent_map " Nikolay Borisov
2017-02-17 14:43 ` [PATCH 36/38] btrfs: Make check_extent_to_block " Nikolay Borisov
2017-02-17 14:43 ` Nikolay Borisov [this message]
2017-02-17 17:14   ` [PATCH 37/38] btrfs: Make get_extent_t " kbuild test robot
2017-02-17 17:26   ` kbuild test robot
2017-02-17 14:43 ` [PATCH 38/38] btrfs: Make btrfs_del_delalloc_inode " Nikolay Borisov

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=1487342609-20652-38-git-send-email-nborisov@suse.com \
    --to=n.borisov.lkml@gmail.com \
    --cc=dsterba@suse.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=nborisov@suse.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.