Message ID | 20130618165952.9494.8953@localhost.localdomain (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Chris, On Tue, 18 Jun 2013, Chris Mason wrote: > [...] > Very long way of saying I think we're one release_path short. Sage, I > haven't tested this at all yet, I was hoping to trigger it first. > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > index c276ac9..c1954b3 100644 > --- a/fs/btrfs/tree-log.c > +++ b/fs/btrfs/tree-log.c > @@ -3730,6 +3730,7 @@ next_slot: > log_extents: > if (fast_search) { > btrfs_release_path(dst_path); > + btrfs_release_path(path); > ret = btrfs_log_changed_extents(trans, root, inode, dst_path); > if (ret) { > err = ret; This seems to be doing the trick. I'll keep testing overnight, but so far so good! Thanks- sage -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 19 Jun 2013, Sage Weil wrote: > Hi Chris, > > On Tue, 18 Jun 2013, Chris Mason wrote: > > [...] > > Very long way of saying I think we're one release_path short. Sage, I > > haven't tested this at all yet, I was hoping to trigger it first. > > > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > > index c276ac9..c1954b3 100644 > > --- a/fs/btrfs/tree-log.c > > +++ b/fs/btrfs/tree-log.c > > @@ -3730,6 +3730,7 @@ next_slot: > > log_extents: > > if (fast_search) { > > btrfs_release_path(dst_path); > > + btrfs_release_path(path); > > ret = btrfs_log_changed_extents(trans, root, inode, dst_path); > > if (ret) { > > err = ret; > > This seems to be doing the trick. I'll keep testing overnight, but so far > so good! ...and it's still holding up well in QA. Thanks, Chris! sage -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoting Sage Weil (2013-06-20 17:56:19) > On Wed, 19 Jun 2013, Sage Weil wrote: > > Hi Chris, > > > > On Tue, 18 Jun 2013, Chris Mason wrote: > > > [...] > > > Very long way of saying I think we're one release_path short. Sage, I > > > haven't tested this at all yet, I was hoping to trigger it first. > > > > > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > > > index c276ac9..c1954b3 100644 > > > --- a/fs/btrfs/tree-log.c > > > +++ b/fs/btrfs/tree-log.c > > > @@ -3730,6 +3730,7 @@ next_slot: > > > log_extents: > > > if (fast_search) { > > > btrfs_release_path(dst_path); > > > + btrfs_release_path(path); > > > ret = btrfs_log_changed_extents(trans, root, inode, dst_path); > > > if (ret) { > > > err = ret; > > > > This seems to be doing the trick. I'll keep testing overnight, but so far > > so good! > > ...and it's still holding up well in QA. Awesome, thanks for getting the traces for us. Looks like this one has been around since v3.7, so I'm not going to try and sneak it into the 3.10 final. I'll have it in the next merge window and for stable. -chris -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, 20 Jun 2013, Chris Mason wrote: > Quoting Sage Weil (2013-06-20 17:56:19) > > On Wed, 19 Jun 2013, Sage Weil wrote: > > > Hi Chris, > > > > > > On Tue, 18 Jun 2013, Chris Mason wrote: > > > > [...] > > > > Very long way of saying I think we're one release_path short. Sage, I > > > > haven't tested this at all yet, I was hoping to trigger it first. > > > > > > > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > > > > index c276ac9..c1954b3 100644 > > > > --- a/fs/btrfs/tree-log.c > > > > +++ b/fs/btrfs/tree-log.c > > > > @@ -3730,6 +3730,7 @@ next_slot: > > > > log_extents: > > > > if (fast_search) { > > > > btrfs_release_path(dst_path); > > > > + btrfs_release_path(path); > > > > ret = btrfs_log_changed_extents(trans, root, inode, dst_path); > > > > if (ret) { > > > > err = ret; > > > > > > This seems to be doing the trick. I'll keep testing overnight, but so far > > > so good! > > > > ...and it's still holding up well in QA. > > Awesome, thanks for getting the traces for us. Looks like this one has > been around since v3.7, so I'm not going to try and sneak it into the > 3.10 final. I'll have it in the next merge window and for stable. Weird, these same tests have been running on it nightly for ages and it seems like these failures just started with 3.9. Perhaps some other change made it hang when it didn't before? In any case, thanks! sage -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoting Sage Weil (2013-06-20 21:00:21) > On Thu, 20 Jun 2013, Chris Mason wrote: > > Awesome, thanks for getting the traces for us. Looks like this one has > > been around since v3.7, so I'm not going to try and sneak it into the > > 3.10 final. I'll have it in the next merge window and for stable. > > Weird, these same tests have been running on it nightly for ages and it > seems like these failures just started with 3.9. Perhaps some other > change made it hang when it didn't before? > It's always possible, there are a ton of moving pieces here. The wait_event you were hung on was waiting for crcs to finish, and that part at least isn't new. Somewhat unrelated, but are you still using notreelog? -chris -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, 20 Jun 2013, Chris Mason wrote: > Quoting Sage Weil (2013-06-20 21:00:21) > > On Thu, 20 Jun 2013, Chris Mason wrote: > > > Awesome, thanks for getting the traces for us. Looks like this one has > > > been around since v3.7, so I'm not going to try and sneak it into the > > > 3.10 final. I'll have it in the next merge window and for stable. > > > > Weird, these same tests have been running on it nightly for ages and it > > seems like these failures just started with 3.9. Perhaps some other > > change made it hang when it didn't before? > > > > It's always possible, there are a ton of moving pieces here. The > wait_event you were hung on was waiting for crcs to finish, and that > part at least isn't new. K. There was also a shift of writes to leveldb (which does the mmap thing), so that may explain the change in behavior. > Somewhat unrelated, but are you still using notreelog? Nope, just noatime. Thanks- sage -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Chris, On Thu, 20 Jun 2013, Chris Mason wrote: > Quoting Sage Weil (2013-06-20 17:56:19) > > On Wed, 19 Jun 2013, Sage Weil wrote: > > > Hi Chris, > > > > > > On Tue, 18 Jun 2013, Chris Mason wrote: > > > > [...] > > > > Very long way of saying I think we're one release_path short. Sage, I > > > > haven't tested this at all yet, I was hoping to trigger it first. > > > > > > > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > > > > index c276ac9..c1954b3 100644 > > > > --- a/fs/btrfs/tree-log.c > > > > +++ b/fs/btrfs/tree-log.c > > > > @@ -3730,6 +3730,7 @@ next_slot: > > > > log_extents: > > > > if (fast_search) { > > > > btrfs_release_path(dst_path); > > > > + btrfs_release_path(path); > > > > ret = btrfs_log_changed_extents(trans, root, inode, dst_path); > > > > if (ret) { > > > > err = ret; > > > > > > This seems to be doing the trick. I'll keep testing overnight, but so far > > > so good! > > > > ...and it's still holding up well in QA. > > Awesome, thanks for getting the traces for us. Looks like this one has > been around since v3.7, so I'm not going to try and sneak it into the > 3.10 final. I'll have it in the next merge window and for stable. I was just pulling in the current -rc for testing and realized that this isn't upstream yet. Was this missed? Sorry I didn't check earlier. Thanks! sage -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoting Sage Weil (2013-08-09 14:04:15) > Hi Chris, > > On Thu, 20 Jun 2013, Chris Mason wrote: > > Quoting Sage Weil (2013-06-20 17:56:19) > > > On Wed, 19 Jun 2013, Sage Weil wrote: > > > > Hi Chris, > > > > > > > > On Tue, 18 Jun 2013, Chris Mason wrote: > > > > > [...] > > > > > Very long way of saying I think we're one release_path short. Sage, I > > > > > haven't tested this at all yet, I was hoping to trigger it first. > > > > > > > > > > diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c > > > > > index c276ac9..c1954b3 100644 > > > > > --- a/fs/btrfs/tree-log.c > > > > > +++ b/fs/btrfs/tree-log.c > > > > > @@ -3730,6 +3730,7 @@ next_slot: > > > > > log_extents: > > > > > if (fast_search) { > > > > > btrfs_release_path(dst_path); > > > > > + btrfs_release_path(path); > > > > > ret = btrfs_log_changed_extents(trans, root, inode, dst_path); > > > > > if (ret) { > > > > > err = ret; > > > > > > > > This seems to be doing the trick. I'll keep testing overnight, but so far > > > > so good! > > > > > > ...and it's still holding up well in QA. > > > > Awesome, thanks for getting the traces for us. Looks like this one has > > been around since v3.7, so I'm not going to try and sneak it into the > > 3.10 final. I'll have it in the next merge window and for stable. > > I was just pulling in the current -rc for testing and realized that this > isn't upstream yet. Was this missed? Sorry I didn't check earlier. Ack, thanks Sage. It'll go into the next pull (cc stable) -chris -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index c276ac9..c1954b3 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -3730,6 +3730,7 @@ next_slot: log_extents: if (fast_search) { btrfs_release_path(dst_path); + btrfs_release_path(path); ret = btrfs_log_changed_extents(trans, root, inode, dst_path); if (ret) { err = ret;