[3.16.y-ckt stable] Patch "fold swapping ->d_name.hash into switch_names()" has been added to staging queue

Luis Henriques luis.henriques at canonical.com
Mon Dec 1 10:20:13 UTC 2014


This is a note to let you know that I have just added a patch titled

    fold swapping ->d_name.hash into switch_names()

to the linux-3.16.y-queue branch of the 3.16.y-ckt extended stable tree 
which can be found at:

 http://kernel.ubuntu.com/git?p=ubuntu/linux.git;a=shortlog;h=refs/heads/linux-3.16.y-queue

This patch is scheduled to be released in version 3.16.7-ckt3.

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.16.y-ckt tree, see
https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable

Thanks.
-Luis

------

>From 48618879379b4a1b5d65d30f0cf79b6e1a8d59e4 Mon Sep 17 00:00:00 2001
From: Linus Torvalds <torvalds at linux-foundation.org>
Date: Wed, 24 Sep 2014 12:27:39 -0700
Subject: fold swapping ->d_name.hash into switch_names()

commit a28ddb87cdddb0db57466ba7f59f831002f4340c upstream.

and do it along with ->d_name.len there

Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
Signed-off-by: Stefan Bader <stefan.bader at canonical.com>
[ luis: used Stefan's backport to 3.16 ]
Signed-off-by: Luis Henriques <luis.henriques at canonical.com>
---
 fs/dcache.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/fs/dcache.c b/fs/dcache.c
index f9cec9d4dbe0..8a7dcc895d99 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -2441,7 +2441,7 @@ static void switch_names(struct dentry *dentry, struct dentry *target)
 			}
 		}
 	}
-	swap(dentry->d_name.len, target->d_name.len);
+	swap(dentry->d_name.hash_len, target->d_name.hash_len);
 }

 static void dentry_lock_for_move(struct dentry *dentry, struct dentry *target)
@@ -2540,7 +2540,6 @@ static void __d_move(struct dentry *dentry, struct dentry *target,

 	/* Switch the names.. */
 	switch_names(dentry, target);
-	swap(dentry->d_name.hash, target->d_name.hash);

 	/* ... and switch the parents */
 	if (IS_ROOT(dentry)) {
@@ -2679,7 +2678,6 @@ static void __d_materialise_dentry(struct dentry *dentry, struct dentry *anon)
 	dparent = dentry->d_parent;

 	switch_names(dentry, anon);
-	swap(dentry->d_name.hash, anon->d_name.hash);

 	dentry->d_parent = dentry;
 	list_del_init(&dentry->d_u.d_child);
--
2.1.0





More information about the kernel-team mailing list