linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Revert "Btrfs: don't delay inode ref updates during log, replay"
@ 2016-12-03  3:21 Jeff Mahoney
  2016-12-03  3:22 ` Jeff Mahoney
  2017-01-11 16:17 ` Jiri Slaby
  0 siblings, 2 replies; 3+ messages in thread
From: Jeff Mahoney @ 2016-12-03  3:21 UTC (permalink / raw)
  To: Jiri Slaby; +Cc: Chris Mason, linux-kernel

This reverts commit 644d10716875b24388680925d6c7502420987bfe.

The original patch for mainline, 6f8960541b1 (Btrfs: don't delay
inode ref updates during log replay) lists 1d52c78afbb (Btrfs: try
not to ENOSPC on log replay) as the only pre-3.18 dependency, but it
also depends on 67de11769bd (Btrfs: introduce the delayed inode ref
deletion for the single link inode), which was introduced in 3.14
and isn't in 3.12.y.

The -stable commit added the check to btrfs_delayed_update_inode,
which may look similar to btrfs_delayed_delete_inode_ref, but it's
only superficial.  The tops of both functions handle typical
delayed node boilerplate.  The upshot is that the patch is harmless
since the caller already checks to see if we're doing log recovery,
so we're not breaking anything.  It should be reverted because it
makes it appear as if this issue was fixed for users who did
backport 67de11769bd, when it is not.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
---
 fs/btrfs/delayed-inode.c | 8 --------
 1 file changed, 8 deletions(-)

diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c
index 34f33e1..269ac79 100644
--- a/fs/btrfs/delayed-inode.c
+++ b/fs/btrfs/delayed-inode.c
@@ -1805,14 +1805,6 @@ int btrfs_delayed_update_inode(struct btrfs_trans_handle *trans,
 	struct btrfs_delayed_node *delayed_node;
 	int ret = 0;
 
-	/*
-	 * we don't do delayed inode updates during log recovery because it
-	 * leads to enospc problems.  This means we also can't do
-	 * delayed inode refs
-	 */
-	if (BTRFS_I(inode)->root->fs_info->log_root_recovering)
-		return -EAGAIN;
-
 	delayed_node = btrfs_get_or_create_delayed_node(inode);
 	if (IS_ERR(delayed_node))
 		return PTR_ERR(delayed_node);
-- 
2.7.1


-- 
Jeff Mahoney
SUSE Labs

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] Revert "Btrfs: don't delay inode ref updates during log, replay"
  2016-12-03  3:21 [PATCH] Revert "Btrfs: don't delay inode ref updates during log, replay" Jeff Mahoney
@ 2016-12-03  3:22 ` Jeff Mahoney
  2017-01-11 16:17 ` Jiri Slaby
  1 sibling, 0 replies; 3+ messages in thread
From: Jeff Mahoney @ 2016-12-03  3:22 UTC (permalink / raw)
  To: Jiri Slaby; +Cc: Chris Mason, linux-kernel


[-- Attachment #1.1: Type: text/plain, Size: 2057 bytes --]

Whoops, the [PATCH] line should've specified more clearly:  This only
applies to linux-stable, 3.12.y.

Sorry for any confusion.

-Jeff

On 12/2/16 10:21 PM, Jeff Mahoney wrote:
> This reverts commit 644d10716875b24388680925d6c7502420987bfe.
> 
> The original patch for mainline, 6f8960541b1 (Btrfs: don't delay
> inode ref updates during log replay) lists 1d52c78afbb (Btrfs: try
> not to ENOSPC on log replay) as the only pre-3.18 dependency, but it
> also depends on 67de11769bd (Btrfs: introduce the delayed inode ref
> deletion for the single link inode), which was introduced in 3.14
> and isn't in 3.12.y.
> 
> The -stable commit added the check to btrfs_delayed_update_inode,
> which may look similar to btrfs_delayed_delete_inode_ref, but it's
> only superficial.  The tops of both functions handle typical
> delayed node boilerplate.  The upshot is that the patch is harmless
> since the caller already checks to see if we're doing log recovery,
> so we're not breaking anything.  It should be reverted because it
> makes it appear as if this issue was fixed for users who did
> backport 67de11769bd, when it is not.
> 
> Signed-off-by: Jeff Mahoney <jeffm@suse.com>
> ---
>  fs/btrfs/delayed-inode.c | 8 --------
>  1 file changed, 8 deletions(-)
> 
> diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c
> index 34f33e1..269ac79 100644
> --- a/fs/btrfs/delayed-inode.c
> +++ b/fs/btrfs/delayed-inode.c
> @@ -1805,14 +1805,6 @@ int btrfs_delayed_update_inode(struct btrfs_trans_handle *trans,
>  	struct btrfs_delayed_node *delayed_node;
>  	int ret = 0;
>  
> -	/*
> -	 * we don't do delayed inode updates during log recovery because it
> -	 * leads to enospc problems.  This means we also can't do
> -	 * delayed inode refs
> -	 */
> -	if (BTRFS_I(inode)->root->fs_info->log_root_recovering)
> -		return -EAGAIN;
> -
>  	delayed_node = btrfs_get_or_create_delayed_node(inode);
>  	if (IS_ERR(delayed_node))
>  		return PTR_ERR(delayed_node);
> 


-- 
Jeff Mahoney
SUSE Labs


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 841 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Revert "Btrfs: don't delay inode ref updates during log, replay"
  2016-12-03  3:21 [PATCH] Revert "Btrfs: don't delay inode ref updates during log, replay" Jeff Mahoney
  2016-12-03  3:22 ` Jeff Mahoney
@ 2017-01-11 16:17 ` Jiri Slaby
  1 sibling, 0 replies; 3+ messages in thread
From: Jiri Slaby @ 2017-01-11 16:17 UTC (permalink / raw)
  To: Jeff Mahoney; +Cc: Chris Mason, linux-kernel

On 12/03/2016, 04:21 AM, Jeff Mahoney wrote:
> This reverts commit 644d10716875b24388680925d6c7502420987bfe.
> 
> The original patch for mainline, 6f8960541b1 (Btrfs: don't delay
> inode ref updates during log replay) lists 1d52c78afbb (Btrfs: try
> not to ENOSPC on log replay) as the only pre-3.18 dependency, but it
> also depends on 67de11769bd (Btrfs: introduce the delayed inode ref
> deletion for the single link inode), which was introduced in 3.14
> and isn't in 3.12.y.
> 
> The -stable commit added the check to btrfs_delayed_update_inode,
> which may look similar to btrfs_delayed_delete_inode_ref, but it's
> only superficial.  The tops of both functions handle typical

Thanks, now applied after dealing with the pile of patches collected
during Christmas.

-- 
js
suse labs

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-01-11 16:17 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-03  3:21 [PATCH] Revert "Btrfs: don't delay inode ref updates during log, replay" Jeff Mahoney
2016-12-03  3:22 ` Jeff Mahoney
2017-01-11 16:17 ` Jiri Slaby

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).