diff mbox series

NFS: Fix missing unlock in nfs_unlink()

Message ID 20220812011440.3602849-1-sunke32@huawei.com (mailing list archive)
State New, archived
Headers show
Series NFS: Fix missing unlock in nfs_unlink() | expand

Commit Message

Sun Ke Aug. 12, 2022, 1:14 a.m. UTC
Add the missing unlock before goto.

Fixes: 3c59366c207e ("NFS: don't unhash dentry during unlink/rename")
Signed-off-by: Sun Ke <sunke32@huawei.com>
---
 fs/nfs/dir.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Sun Ke Aug. 16, 2022, 1:06 a.m. UTC | #1
friendly ping...

在 2022/8/12 9:14, Sun Ke 写道:
> Add the missing unlock before goto.
> 
> Fixes: 3c59366c207e ("NFS: don't unhash dentry during unlink/rename")
> Signed-off-by: Sun Ke <sunke32@huawei.com>
> ---
>   fs/nfs/dir.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
> index dbab3caa15ed..1b879584d4fe 100644
> --- a/fs/nfs/dir.c
> +++ b/fs/nfs/dir.c
> @@ -2484,8 +2484,10 @@ int nfs_unlink(struct inode *dir, struct dentry *dentry)
>   	 */
>   	error = -ETXTBSY;
>   	if (WARN_ON(dentry->d_flags & DCACHE_NFSFS_RENAMED) ||
> -	    WARN_ON(dentry->d_fsdata == NFS_FSDATA_BLOCKED))
> +	    WARN_ON(dentry->d_fsdata == NFS_FSDATA_BLOCKED)) {
> +		spin_unlock(&dentry->d_lock);
>   		goto out;
> +	}
>   	if (dentry->d_fsdata)
>   		/* old devname */
>   		kfree(dentry->d_fsdata);
>
Dan Carpenter Aug. 16, 2022, 8:28 a.m. UTC | #2
On Tue, Aug 16, 2022 at 09:06:06AM +0800, Sun Ke wrote:
> friendly ping...
> 
> 在 2022/8/12 9:14, Sun Ke 写道:
> > Add the missing unlock before goto.


The patch is correct, but please wait at least two weeks before sending
reminders.  Longer than two weeks if the merge window is open.

regards,
dan carpenter
Sun Ke Aug. 17, 2022, 1:50 a.m. UTC | #3
在 2022/8/16 16:28, Dan Carpenter 写道:
> On Tue, Aug 16, 2022 at 09:06:06AM +0800, Sun Ke wrote:
>> friendly ping...
>>
>> 在 2022/8/12 9:14, Sun Ke 写道:
>>> Add the missing unlock before goto.
> 
> 
> The patch is correct, but please wait at least two weeks before sending
> reminders.  Longer than two weeks if the merge window is open.

Sorry for that, two weeks, got it. By the way, I find the patch have 
merged to next.

Thanks.
Sun Ke
> 
> regards,
> dan carpenter
> 
> .
>
diff mbox series

Patch

diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index dbab3caa15ed..1b879584d4fe 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -2484,8 +2484,10 @@  int nfs_unlink(struct inode *dir, struct dentry *dentry)
 	 */
 	error = -ETXTBSY;
 	if (WARN_ON(dentry->d_flags & DCACHE_NFSFS_RENAMED) ||
-	    WARN_ON(dentry->d_fsdata == NFS_FSDATA_BLOCKED))
+	    WARN_ON(dentry->d_fsdata == NFS_FSDATA_BLOCKED)) {
+		spin_unlock(&dentry->d_lock);
 		goto out;
+	}
 	if (dentry->d_fsdata)
 		/* old devname */
 		kfree(dentry->d_fsdata);