extent buffer is part of a page and I do not know how to
handle this situation.
Is my understanding correct ? Does anyone have any suggestion to
circumvent this issue ?
Thanks & regards,
Chandra
On Fri, 2013-12-13 at 13:39 -0500, Josef Bacik wrote:
> On 12/11/2013 06:38 PM, Chandra Seetharama
On Mon, 2013-12-16 at 15:48 +0100, David Sterba wrote:
> On Mon, Dec 16, 2013 at 02:33:11PM +0200, saeed bishara wrote:
> > On Thu, Dec 12, 2013 at 1:38 AM, Chandra Seetharaman
> > wrote:
> > > In order to handle a blocksize that is smaller than the
> > > PA
On Mon, 2013-12-16 at 14:32 +0200, saeed bishara wrote:
> On Thu, Dec 12, 2013 at 1:38 AM, Chandra Seetharaman
> wrote:
> > In order to handle multiple extent buffers per page, first we
> > need to create a way to handle all the extent buffers that
> > are attached to a
On Fri, 2013-12-13 at 13:39 -0500, Josef Bacik wrote:
> On 12/11/2013 06:38 PM, Chandra Seetharaman wrote:
> > In btrfs, blocksize, the basic IO size of the filesystem, has been
> > more than PAGE_SIZE.
> >
> > But, some 64 bit architures, like PPC64 and ARM64 have the d
On Fri, 2013-12-13 at 02:17 +0100, David Sterba wrote:
Hi David,
> On Wed, Dec 11, 2013 at 05:38:35PM -0600, Chandra Seetharaman wrote:
> > In other words, one cannot create a filesystem in some other architecture
> > and use that filesystem in PPC64 or ARM64, and vice versa.,
With subpagesize-blocksize, the IO is done in pages but checksums are
calculated in blocks.
This patch makes sure the checksums are calculated, stored, and verfied
from proper indexes in the page.
Signed-off-by: Chandra Seetharaman
---
fs/btrfs/file-item.c | 45
For relocation clusters boundaries are at blocks, hence in the case
of subpagesize-blocksize, we need to make sure the data in the page
is handled correctly with the cluster boundary.
This patch does that.
Signed-off-by: Chandra Seetharaman
---
fs/btrfs/relocation.c | 6 --
1 file changed
This is the final patch of the series that allows filesystems with
blocksize smaller than the PAGE_SIZE.
Signed-off-by: Chandra Seetharaman
---
fs/btrfs/disk-io.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index ca1526d..d9bd450 100644
--- a
.
There are few wrinkles in this patchset, like some xfstests are failing, which
could be due to me doing something incorrectly w.r.t how the blocksize and
PAGE_SIZE are used in these patched.
Would like to get some feedback, review comments.
Thanks,
Chandra
---
Chandra Seetharaman (7):
btrfs
This patch makes sure that the size extent maps handles are at
least PAGE_CACHE_SIZE for the subpagesize-blocksize case.
Signed-off-by: Chandra Seetharaman
---
fs/btrfs/inode.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index
In order to handle a blocksize that is smaller than the
PAGE_SIZE, we need align all IOs to PAGE_SIZE.
This patch defines a new macro btrfs_align_size() that
calculates the alignment size based on the sectorsize
and uses it at appropriate places.
Signed-off-by: Chandra Seetharaman
---
fs/btrfs
also adds changes that are needed to handle multiple
extent buffers per page case.
Signed-off-by: Chandra Seetharaman
---
fs/btrfs/backref.c | 6 +-
fs/btrfs/ctree.c | 2 +-
fs/btrfs/ctree.h | 6 +-
fs/btrfs/disk-io.c | 109 +++
fs/btrfs
For the subpagesize-blocksize case make sure that the IO submitted through
submit_extent_page() is at least of PAGE_CACHE_SIZE
Signed-off-by: Chandra Seetharaman
---
fs/btrfs/extent_io.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index
x27;len' to find_extent_buffer().
Signed-Off-by: Chandra Seetharaman
Reviewed-by: Zach Brown
---
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 4ae17ed..daa04d2 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -1105,8 +1105,7 @@ struct extent_buffer *btrfs_find_tree_block(struct
On Fri, 2013-10-04 at 14:38 -0700, Zach Brown wrote:
Thanks for the review Zach.
> On Fri, Oct 04, 2013 at 02:55:29PM -0500, Chandra Seetharaman wrote:
> > alloc_extent_buffer() uses radix_tree_lookup() when radix_tree_insert()
> > fails
> > with EEXIST. That part of the co
patch also changes the other usage of radix_tree_lookup() in
alloc_extent_buffer() with find_extent_buffer() to reduce redundancy.
Signed-Off-by: Chandra Seetharaman
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index c09a40d..50345fb 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs
16 matches
Mail list logo