Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1499966

[PATCH v6 02/17] ext4: tell DAX the size of allocation holes

From Ross Zwisler <ross.zwisler@linux.intel.com>
Newsgroups linux.kernel
Subject [PATCH v6 02/17] ext4: tell DAX the size of allocation holes
Date 2016-10-13 01:00 +0200
Message-ID <srAFc-2y2-35@gated-at.bofh.it> (permalink)
References <srAFb-2y2-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


When DAX calls _ext4_get_block() and the file offset points to a hole we
currently don't set bh->b_size.  This is current worked around via
buffer_size_valid() in fs/dax.c.

_ext4_get_block() has the hole size information from ext4_map_blocks(), so
populate bh->b_size so we can remove buffer_size_valid() in a later patch.

Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Reviewed-by: Jan Kara <jack@suse.cz>
---
 fs/ext4/inode.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 0900cb4..9075fac 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -759,6 +759,9 @@ static int _ext4_get_block(struct inode *inode, sector_t iblock,
 		ext4_update_bh_state(bh, map.m_flags);
 		bh->b_size = inode->i_sb->s_blocksize * map.m_len;
 		ret = 0;
+	} else if (ret == 0) {
+		/* hole case, need to fill in bh->b_size */
+		bh->b_size = inode->i_sb->s_blocksize * map.m_len;
 	}
 	return ret;
 }
-- 
2.9.0

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v6 00/17] re-enable DAX PMD support Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 13/17] dax: move RADIX_DAX_* defines to dax.h Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 11/17] dax: add dax_iomap_sector() helper function Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 10/17] dax: correct dax iomap code namespace Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 14/17] dax: move put_(un)locked_mapping_entry() in dax.c Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
    Re: [PATCH v6 14/17] dax: move put_(un)locked_mapping_entry() in  dax.c Jan Kara <jack@suse.cz> - 2016-10-13 17:20 +0200
  [PATCH v6 16/17] xfs: use struct iomap based DAX PMD fault path Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 05/17] dax: make 'wait_table' global variable static Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 12/17] dax: dax_iomap_fault() needs to call iomap_end() Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 07/17] dax: consistent variable naming for DAX entries Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 08/17] dax: coordinate locking for offsets in PMD range Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 02/17] ext4: tell DAX the size of allocation holes Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 01/17] ext4: allow DAX writeback for hole punch Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
  [PATCH v6 17/17] dax: remove "depends on BROKEN" from FS_DAX_PMD Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200
    Re: [PATCH v6 17/17] dax: remove "depends on BROKEN" from FS_DAX_PMD Jan Kara <jack@suse.cz> - 2016-10-13 17:50 +0200
    Re: [PATCH v6 17/17] dax: remove "depends on BROKEN" from FS_DAX_PMD "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> - 2016-10-17 08:00 +0200
      Re: [PATCH v6 17/17] dax: remove "depends on BROKEN" from FS_DAX_PMD Jan Kara <jack@suse.cz> - 2016-10-17 11:20 +0200
  [PATCH v6 06/17] dax: remove the last BUG_ON() from fs/dax.c Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-10-13 01:00 +0200

csiph-web