]> git.hungrycats.org Git - linux/commitdiff
pnfs: Increase the refcount when LAYOUTGET fails the first time
authorYanchuan Nian <ycnian@gmail.com>
Fri, 4 Jan 2013 12:19:49 +0000 (20:19 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 11 Jan 2013 17:18:38 +0000 (09:18 -0800)
commit 39e88fcfb1d5c6c4b1ff76ca2ab76cf449b850e8 upstream.

The layout will be set unusable if LAYOUTGET fails. Is it reasonable to
increase the refcount iff LAYOUTGET fails the first time?

Signed-off-by: Yanchuan Nian <ycnian@gmail.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfs/pnfs.c

index 2878f97bd78d5cf5343b88cfcac9b5a48a1abe60..b7f7538a4c9cd83799f94281818e021d02221120 100644 (file)
@@ -254,7 +254,7 @@ static void
 pnfs_layout_set_fail_bit(struct pnfs_layout_hdr *lo, int fail_bit)
 {
        lo->plh_retry_timestamp = jiffies;
-       if (test_and_set_bit(fail_bit, &lo->plh_flags))
+       if (!test_and_set_bit(fail_bit, &lo->plh_flags))
                atomic_inc(&lo->plh_refcount);
 }