From e393b55dfe6733e7aa0330b0a20c9f35116001c3 Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Fri, 15 Jun 2012 13:02:58 -0400 Subject: [PATCH] --- yaml --- r: 311187 b: refs/heads/master c: 0a9c63fae7df086ff5e107273c3cce8642430974 h: refs/heads/master i: 311185: 2d22bdf55df00bcdaf51e27cc8d8e9c5c0231fd4 311183: 112687029aeb84b4e473f534e24ae19bc520c39d v: v3 --- [refs] | 2 +- trunk/fs/nfs/pnfs.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index ba77a72d2675..d55d49c296c2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2a4c8994eeef50796015f8a2005e4a75c1929166 +refs/heads/master: 0a9c63fae7df086ff5e107273c3cce8642430974 diff --git a/trunk/fs/nfs/pnfs.c b/trunk/fs/nfs/pnfs.c index bdf7e52943c8..bbc49caa7a82 100644 --- a/trunk/fs/nfs/pnfs.c +++ b/trunk/fs/nfs/pnfs.c @@ -70,6 +70,10 @@ find_pnfs_driver(u32 id) spin_lock(&pnfs_spinlock); local = find_pnfs_driver_locked(id); + if (local != NULL && !try_module_get(local->owner)) { + dprintk("%s: Could not grab reference on module\n", __func__); + local = NULL; + } spin_unlock(&pnfs_spinlock); return local; } @@ -118,10 +122,6 @@ set_pnfs_layoutdriver(struct nfs_server *server, const struct nfs_fh *mntfh, goto out_no_driver; } } - if (!try_module_get(ld_type->owner)) { - dprintk("%s: Could not grab reference on module\n", __func__); - goto out_no_driver; - } server->pnfs_curr_ld = ld_type; if (ld_type->set_layoutdriver && ld_type->set_layoutdriver(server, mntfh)) {