2010-06-11 19:38:55

by Chris Mason

[permalink] [raw]
Subject: [GIT PULL] Btrfs updates for 2.6.35

Hello everyone,

The master branch of the btrfs-unstable tree is a collection of fixes
and cleanups, including two btrfs regressions from rc1:

git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable.git master

One is an freeing blocks on an FS converted from ext34 to btrfs,
and the other is a fallocate fix.

The rest are the usual small bug fixes.

Dan Carpenter (11) commits (+24/-17):
Btrfs: handle error returns from btrfs_lookup_dir_item() (+2/-0)
Btrfs: btrfs_read_fs_root_no_name() returns ERR_PTRs (+4/-0)
Btrfs: unwind after btrfs_start_transaction() errors (+1/-1)
Btrfs: remove unneeded null check in btrfs_rename() (+1/-3)
Btrfs: The file argument for fsync() is never null (+1/-1)
Btrfs: handle ERR_PTR from posix_acl_from_xattr() (+2/-0)
Btrfs: btrfs_lookup_dir_item() can return ERR_PTR (+1/-1)
Btrfs: uninitialized data is check_path_shared() (+1/-1)
Btrfs: handle kzalloc() failure in open_ctree() (+5/-2)
Btrfs: silence sparse warnings in ioctl.c (+4/-6)
Btrfs: btrfs_iget() returns ERR_PTR (+2/-2)

Zheng Yan (2) commits (+6/-4):
Btrfs: Fix BUG_ON for fs converted from extN (+2/-1)
Btrfs: Fix null dereference in relocation.c (+4/-3)

Liu Bo (2) commits (+14/-4):
Btrfs: Add error check for add_to_page_cache_lru (+13/-3)
Btrfs: fix break in btrfs_insert_some_items() (+1/-1)

Julia Lawall (2) commits (+9/-17):
Btrfs: Use memdup_user (+6/-14)
Btrfs: Use ERR_CAST (+3/-3)

Shi Weihua (2) commits (+6/-0):
Btrfs: prohibit a operation of changing acl's mask when noacl mount option used (+3/-0)
Btrfs: should add a permission check for setfacl (+3/-0)

Miao Xie (2) commits (+9/-1):
Btrfs: fix loop device on top of btrfs (+1/-0)
Btrfs: fix remap_file_pages error (+8/-1)

Sage Weil (1) commits (+0/-3):
Btrfs: avoid BUG when dropping root and reference in same transaction

Andi Kleen (1) commits (+2/-94):
BTRFS: Clean up unused variables -- nonbugs

Josef Bacik (1) commits (+1/-1):
Btrfs: fix fallocate regression

Prarit Bhargava (1) commits (+1/-1):
Btrfs: Fix warning in tree_search()

Total: (25) commits (+72/-142)

fs/btrfs/acl.c | 8 ++++++++
fs/btrfs/compression.c | 18 +++++++++++++-----
fs/btrfs/ctree.c | 20 +-------------------
fs/btrfs/disk-io.c | 22 +++++++++-------------
fs/btrfs/extent-tree.c | 5 ++---
fs/btrfs/extent_io.c | 9 ---------
fs/btrfs/extent_map.c | 4 ++--
fs/btrfs/file.c | 12 ++++++++++--
fs/btrfs/inode.c | 22 +++-------------------
fs/btrfs/ioctl.c | 36 ++++++++++++------------------------
fs/btrfs/ordered-data.c | 4 +---
fs/btrfs/relocation.c | 7 ++++---
fs/btrfs/root-tree.c | 5 -----
fs/btrfs/super.c | 14 +++++++-------
fs/btrfs/tree-defrag.c | 2 --
fs/btrfs/tree-log.c | 15 ---------------
fs/btrfs/volumes.c | 4 ----
fs/btrfs/xattr.c | 2 --
fs/btrfs/zlib.c | 5 -----
19 files changed, 72 insertions(+), 142 deletions(-)


2010-06-11 19:43:48

by Linus Torvalds

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Fri, Jun 11, 2010 at 12:37 PM, Chris Mason <[email protected]> wrote:
>
> The master branch of the btrfs-unstable tree is a collection of fixes
> and cleanups, including two btrfs regressions from rc1:

Ok, no pulling then. See all the millions of threads how I wanted only
critical fixes for -rc3 since I'll be offline.

You have a couple of hours for a minimal fix pull request with just
the regression fixes if you want to hit -rc3. Then I'll cut a release
and be gone for a while.

Linus

2010-06-11 19:49:15

by Chris Mason

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Fri, Jun 11, 2010 at 12:43:10PM -0700, Linus Torvalds wrote:
> On Fri, Jun 11, 2010 at 12:37 PM, Chris Mason <[email protected]> wrote:
> >
> > The master branch of the btrfs-unstable tree is a collection of fixes
> > and cleanups, including two btrfs regressions from rc1:
>
> Ok, no pulling then. See all the millions of threads how I wanted only
> critical fixes for -rc3 since I'll be offline.
>
> You have a couple of hours for a minimal fix pull request with just
> the regression fixes if you want to hit -rc3. Then I'll cut a release
> and be gone for a while.

I did limit this to actual fixes, the only pure cleanups are a commit
from Andi that drops unused code (fixing warnings from gcc), one to fix
a sparse warning in ioctl.c, and fixing a gcc warning in tree_search.

The others all fix oopsen or big problems, and I think fixing warnings
helps avoid false negatives as others look for real problems?

I'm happy to rebase out the 3 non-criticals.

-chris

2010-06-11 20:00:12

by Linus Torvalds

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Fri, Jun 11, 2010 at 12:48 PM, Chris Mason <[email protected]> wrote:
>
> The others all fix oopsen or big problems, and I think fixing warnings
> helps avoid false negatives as others look for real problems?
>
> I'm happy to rebase out the 3 non-criticals.

There seems to be more than three non-criticals. There's the warning
fixes, the "unused variables" thing, the "memdup_user()" thing, a
couple of unnecessary NULL checks removed etc. On the whole, I do not
get the feeling that the pull request was actively trying to be
minimal, and that's what I really want to see.

Linus

2010-06-11 20:02:35

by Chris Mason

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Fri, Jun 11, 2010 at 01:00:02PM -0700, Linus Torvalds wrote:
> On Fri, Jun 11, 2010 at 12:48 PM, Chris Mason <[email protected]> wrote:
> >
> > The others all fix oopsen or big problems, and I think fixing warnings
> > helps avoid false negatives as others look for real problems?
> >
> > I'm happy to rebase out the 3 non-criticals.
>
> There seems to be more than three non-criticals. There's the warning
> fixes, the "unused variables" thing, the "memdup_user()" thing, a
> couple of unnecessary NULL checks removed etc. On the whole, I do not
> get the feeling that the pull request was actively trying to be
> minimal, and that's what I really want to see.

No problem, I like to err on the side of pulling in safe fixes from the
automated checkers so they don't have to go through results again.

But, I've got a completely minimal rebase now and I'm double checking
it.

-chris

2010-06-11 20:30:36

by Chris Mason

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Fri, Jun 11, 2010 at 01:00:02PM -0700, Linus Torvalds wrote:
> On Fri, Jun 11, 2010 at 12:48 PM, Chris Mason <[email protected]> wrote:
> >
> > The others all fix oopsen or big problems, and I think fixing warnings
> > helps avoid false negatives as others look for real problems?
> >
> > I'm happy to rebase out the 3 non-criticals.
>
> There seems to be more than three non-criticals. There's the warning
> fixes, the "unused variables" thing, the "memdup_user()" thing, a
> couple of unnecessary NULL checks removed etc. On the whole, I do not
> get the feeling that the pull request was actively trying to be
> minimal, and that's what I really want to see.

The for-linus branch (note the change in branch name) has everything
that doesn't fix a bug removed.

git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable.git for-linus

I'll update the master branch to reflect any pulls you do.

Dan Carpenter (9) commits (+19/-8):
Btrfs: handle error returns from btrfs_lookup_dir_item() (+2/-0)
Btrfs: btrfs_read_fs_root_no_name() returns ERR_PTRs (+4/-0)
Btrfs: unwind after btrfs_start_transaction() errors (+1/-1)
Btrfs: The file argument for fsync() is never null (+1/-1)
Btrfs: handle ERR_PTR from posix_acl_from_xattr() (+2/-0)
Btrfs: btrfs_lookup_dir_item() can return ERR_PTR (+1/-1)
Btrfs: uninitialized data is check_path_shared() (+1/-1)
Btrfs: handle kzalloc() failure in open_ctree() (+5/-2)
Btrfs: btrfs_iget() returns ERR_PTR (+2/-2)

Zheng Yan (2) commits (+6/-4):
Btrfs: Fix BUG_ON for fs converted from extN (+2/-1)
Btrfs: Fix null dereference in relocation.c (+4/-3)

Shi Weihua (2) commits (+6/-0):
Btrfs: prohibit a operation of changing acl's mask when noacl mount option used (+3/-0)
Btrfs: should add a permission check for setfacl (+3/-0)

Miao Xie (2) commits (+9/-1):
Btrfs: fix loop device on top of btrfs (+1/-0)
Btrfs: fix remap_file_pages error (+8/-1)

Sage Weil (1) commits (+0/-3):
Btrfs: avoid BUG when dropping root and reference in same transaction

Josef Bacik (1) commits (+1/-1):
Btrfs: fix fallocate regression

Total: (17) commits (+41/-17)
fs/btrfs/acl.c | 8 ++++++++
fs/btrfs/disk-io.c | 11 +++++++++--
fs/btrfs/extent-tree.c | 3 ++-
fs/btrfs/file.c | 12 ++++++++++--
fs/btrfs/inode.c | 4 ++--
fs/btrfs/ioctl.c | 4 ++--
fs/btrfs/relocation.c | 7 ++++---
fs/btrfs/root-tree.c | 3 ---
fs/btrfs/super.c | 6 ++++--
9 files changed, 41 insertions(+), 17 deletions(-)

2010-06-14 19:24:30

by Ed Tomlinson

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Friday 11 June 2010 15:37:31 Chris Mason wrote:
> Hello everyone,
>
> The master branch of the btrfs-unstable tree is a collection of fixes
> and cleanups, including two btrfs regressions from rc1:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable.git master
>
> One is an freeing blocks on an FS converted from ext34 to btrfs,
> and the other is a fallocate fix.
>
> The rest are the usual small bug fixes.

Looks like this still misses any fix for the oops I reported May 8th in thread:
"[OPPS] btrfs on 33-3 with latest from btrfs-unstable.git master"

Any chance this could be looked into? I've kept the fs just in case.

Thanks
Ed Tomlinson

>
> Dan Carpenter (11) commits (+24/-17):
> Btrfs: handle error returns from btrfs_lookup_dir_item() (+2/-0)
> Btrfs: btrfs_read_fs_root_no_name() returns ERR_PTRs (+4/-0)
> Btrfs: unwind after btrfs_start_transaction() errors (+1/-1)
> Btrfs: remove unneeded null check in btrfs_rename() (+1/-3)
> Btrfs: The file argument for fsync() is never null (+1/-1)
> Btrfs: handle ERR_PTR from posix_acl_from_xattr() (+2/-0)
> Btrfs: btrfs_lookup_dir_item() can return ERR_PTR (+1/-1)
> Btrfs: uninitialized data is check_path_shared() (+1/-1)
> Btrfs: handle kzalloc() failure in open_ctree() (+5/-2)
> Btrfs: silence sparse warnings in ioctl.c (+4/-6)
> Btrfs: btrfs_iget() returns ERR_PTR (+2/-2)
>
> Zheng Yan (2) commits (+6/-4):
> Btrfs: Fix BUG_ON for fs converted from extN (+2/-1)
> Btrfs: Fix null dereference in relocation.c (+4/-3)
>
> Liu Bo (2) commits (+14/-4):
> Btrfs: Add error check for add_to_page_cache_lru (+13/-3)
> Btrfs: fix break in btrfs_insert_some_items() (+1/-1)
>
> Julia Lawall (2) commits (+9/-17):
> Btrfs: Use memdup_user (+6/-14)
> Btrfs: Use ERR_CAST (+3/-3)
>
> Shi Weihua (2) commits (+6/-0):
> Btrfs: prohibit a operation of changing acl's mask when noacl mount option used (+3/-0)
> Btrfs: should add a permission check for setfacl (+3/-0)
>
> Miao Xie (2) commits (+9/-1):
> Btrfs: fix loop device on top of btrfs (+1/-0)
> Btrfs: fix remap_file_pages error (+8/-1)
>
> Sage Weil (1) commits (+0/-3):
> Btrfs: avoid BUG when dropping root and reference in same transaction
>
> Andi Kleen (1) commits (+2/-94):
> BTRFS: Clean up unused variables -- nonbugs
>
> Josef Bacik (1) commits (+1/-1):
> Btrfs: fix fallocate regression
>
> Prarit Bhargava (1) commits (+1/-1):
> Btrfs: Fix warning in tree_search()
>
> Total: (25) commits (+72/-142)
>
> fs/btrfs/acl.c | 8 ++++++++
> fs/btrfs/compression.c | 18 +++++++++++++-----
> fs/btrfs/ctree.c | 20 +-------------------
> fs/btrfs/disk-io.c | 22 +++++++++-------------
> fs/btrfs/extent-tree.c | 5 ++---
> fs/btrfs/extent_io.c | 9 ---------
> fs/btrfs/extent_map.c | 4 ++--
> fs/btrfs/file.c | 12 ++++++++++--
> fs/btrfs/inode.c | 22 +++-------------------
> fs/btrfs/ioctl.c | 36 ++++++++++++------------------------
> fs/btrfs/ordered-data.c | 4 +---
> fs/btrfs/relocation.c | 7 ++++---
> fs/btrfs/root-tree.c | 5 -----
> fs/btrfs/super.c | 14 +++++++-------
> fs/btrfs/tree-defrag.c | 2 --
> fs/btrfs/tree-log.c | 15 ---------------
> fs/btrfs/volumes.c | 4 ----
> fs/btrfs/xattr.c | 2 --
> fs/btrfs/zlib.c | 5 -----
> 19 files changed, 72 insertions(+), 142 deletions(-)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>

2010-06-15 00:48:12

by Chris Mason

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Mon, Jun 14, 2010 at 03:24:19PM -0400, Ed Tomlinson wrote:
> On Friday 11 June 2010 15:37:31 Chris Mason wrote:
> > Hello everyone,
> >
> > The master branch of the btrfs-unstable tree is a collection of fixes
> > and cleanups, including two btrfs regressions from rc1:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable.git master
> >
> > One is an freeing blocks on an FS converted from ext34 to btrfs,
> > and the other is a fallocate fix.
> >
> > The rest are the usual small bug fixes.
>
> Looks like this still misses any fix for the oops I reported May 8th in thread:
> "[OPPS] btrfs on 33-3 with latest from btrfs-unstable.git master"
>
> Any chance this could be looked into? I've kept the fs just in case.

The oops shows a crc failure and then we were not able to read the tree
block. Yan Zheng is working on an fsck that can repair things now.
Until then the best I can do is help copy things off.

Would you rather save the FS to test fsck?

-chris

2010-06-15 11:17:24

by Ed Tomlinson

[permalink] [raw]
Subject: Re: [GIT PULL] Btrfs updates for 2.6.35

On Monday 14 June 2010 20:47:35 Chris Mason wrote:
> On Mon, Jun 14, 2010 at 03:24:19PM -0400, Ed Tomlinson wrote:
> > On Friday 11 June 2010 15:37:31 Chris Mason wrote:
> > > Hello everyone,
> > >
> > > The master branch of the btrfs-unstable tree is a collection of fixes
> > > and cleanups, including two btrfs regressions from rc1:
> > >
> > > git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable.git master
> > >
> > > One is an freeing blocks on an FS converted from ext34 to btrfs,
> > > and the other is a fallocate fix.
> > >
> > > The rest are the usual small bug fixes.
> >
> > Looks like this still misses any fix for the oops I reported May 8th in thread:
> > "[OPPS] btrfs on 33-3 with latest from btrfs-unstable.git master"
> >
> > Any chance this could be looked into? I've kept the fs just in case.
>
> The oops shows a crc failure and then we were not able to read the tree
> block. Yan Zheng is working on an fsck that can repair things now.
> Until then the best I can do is help copy things off.
>
> Would you rather save the FS to test fsck?

I can hang on to the FS for a while longer. One interesting point. The FS
has both both meta-data and data mirroring enabled. I gather the oops is
implying that both versions are corrupt. Btw the fs problem occured after
heavy vm activity caused by running too many kvm(s).

Thanks
Ed