Whamcloud - gitweb
LU-4069 build: cleanup from GOTO(label, -ERRNO) 80/8080/5
authorDmitry Eremin <dmitry.eremin@intel.com>
Mon, 28 Oct 2013 18:38:58 +0000 (22:38 +0400)
committerOleg Drokin <oleg.drokin@intel.com>
Mon, 2 Dec 2013 13:01:44 +0000 (13:01 +0000)
Cleanup the code from GOTO(label, -ERRNO) and other bad GOTOs.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I58df89810c112a6856da83c56c9f29dc22ffdf99
Reviewed-on: http://review.whamcloud.com/8080
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
18 files changed:
lnet/klnds/gnilnd/gnilnd.c
lnet/klnds/gnilnd/gnilnd_proc.c
lustre/fid/lproc_fid.c
lustre/ldlm/ldlm_extent.c
lustre/ldlm/ldlm_flock.c
lustre/ldlm/ldlm_inodebits.c
lustre/ldlm/ldlm_lock.c
lustre/ldlm/ldlm_plain.c
lustre/llite/rw26.c
lustre/mdd/mdd_orphans.c
lustre/mdt/mdt_fs.c
lustre/obdclass/genops.c
lustre/obdclass/obd_config.c
lustre/osd-zfs/osd_io.c
lustre/ptlrpc/client.c
lustre/ptlrpc/import.c
lustre/quota/qmt_pool.c
lustre/quota/qsd_request.c

index 92a139c..75f2259 100644 (file)
@@ -199,8 +199,7 @@ kgnilnd_create_conn(kgn_conn_t **connp, kgn_device_t *dev)
        LIBCFS_ALLOC(conn->gnc_tx_ref_table, GNILND_MAX_MSG_ID * sizeof(void *));
        if (conn->gnc_tx_ref_table == NULL) {
                CERROR("Can't allocate conn tx_ref_table\n");
-               rc = -ENOMEM;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
 
        atomic_set(&conn->gnc_refcount, 1);
@@ -231,8 +230,7 @@ kgnilnd_create_conn(kgn_conn_t **connp, kgn_device_t *dev)
 
        if (conn->gnc_cqid == 0) {
                CERROR("Could not allocate unique CQ ID for conn 0x%p\n", conn);
-               rc = -E2BIG;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -E2BIG);
        }
 
        CDEBUG(D_NET, "alloc cqid %u for conn 0x%p\n",
@@ -251,10 +249,8 @@ kgnilnd_create_conn(kgn_conn_t **connp, kgn_device_t *dev)
        rrc = kgnilnd_ep_create(dev->gnd_handle, dev->gnd_snd_fma_cqh,
                                &conn->gnc_ephandle);
        mutex_unlock(&dev->gnd_cq_mutex);
-       if (rrc != GNI_RC_SUCCESS) {
-               rc = -ENETDOWN;
-               GOTO(failed, rc);
-       }
+       if (rrc != GNI_RC_SUCCESS)
+               GOTO(failed, rc = -ENETDOWN);
 
        CDEBUG(D_NET, "created conn 0x%p ep_hndl 0x%p\n",
               conn, conn->gnc_ephandle);
@@ -1949,8 +1945,7 @@ kgnilnd_dev_init(kgn_device_t *dev)
                                 &dev->gnd_domain);
        if (rrc != GNI_RC_SUCCESS) {
                CERROR("Can't create CDM %d (%d)\n", dev->gnd_id, rrc);
-               rc = -ENODEV;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENODEV);
        }
 
        rrc = kgnilnd_cdm_attach(dev->gnd_domain, dev->gnd_id,
@@ -1958,17 +1953,14 @@ kgnilnd_dev_init(kgn_device_t *dev)
        if (rrc != GNI_RC_SUCCESS) {
                CERROR("Can't attach CDM to device %d (%d)\n",
                        dev->gnd_id, rrc);
-               rc = -ENODEV;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENODEV);
        }
 
        /* a bit gross, but not much we can do - Aries Sim doesn't have
         * hardcoded NIC/NID that we can use */
        rc = kgnilnd_setup_nic_translation(dev->gnd_host_id);
-       if (rc != 0) {
-               rc = -ENODEV;
-               GOTO(failed, rc);
-       }
+       if (rc != 0)
+               GOTO(failed, rc = -ENODEV);
 
        /* only dev 0 gets the errors - no need to reset the stack twice
         * - this works because we have a single PTAG, if we had more
@@ -1982,8 +1974,7 @@ kgnilnd_dev_init(kgn_device_t *dev)
                if (rrc != GNI_RC_SUCCESS) {
                        CERROR("Can't subscribe for errors on device %d: rc %d\n",
                                dev->gnd_id, rrc);
-                       rc = -ENODEV;
-                       GOTO(failed, rc);
+                       GOTO(failed, rc = -ENODEV);
                }
 
                rc = kgnilnd_set_quiesce_callback(dev->gnd_handle,
@@ -1991,8 +1982,7 @@ kgnilnd_dev_init(kgn_device_t *dev)
                if (rc != GNI_RC_SUCCESS) {
                        CERROR("Can't subscribe for quiesce callback on device %d: rc %d\n",
                                dev->gnd_id, rrc);
-                       rc = -ENODEV;
-                       GOTO(failed, rc);
+                       GOTO(failed, rc = -ENODEV);
                }
        }
 
@@ -2003,8 +1993,7 @@ kgnilnd_dev_init(kgn_device_t *dev)
                        CERROR("couldn't translate host_id 0x%x to nid. rc %d\n",
                                dev->gnd_host_id, rc);
                }
-               rc = -ESRCH;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ESRCH);
        }
        CDEBUG(D_NET, "NIC %x -> NID %d\n", dev->gnd_host_id, dev->gnd_nid);
 
@@ -2014,8 +2003,7 @@ kgnilnd_dev_init(kgn_device_t *dev)
        if (rrc != GNI_RC_SUCCESS) {
                CERROR("Can't create rdma send cq size %u for device "
                       "%d (%d)\n", cq_size, dev->gnd_id, rrc);
-               rc = -EINVAL;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -EINVAL);
        }
 
        rrc = kgnilnd_cq_create(dev->gnd_handle, cq_size,
@@ -2024,8 +2012,7 @@ kgnilnd_dev_init(kgn_device_t *dev)
        if (rrc != GNI_RC_SUCCESS) {
                CERROR("Can't create fma send cq size %u for device %d (%d)\n",
                       cq_size, dev->gnd_id, rrc);
-               rc = -EINVAL;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -EINVAL);
        }
 
        /* This one we size differently - overflows are possible and it needs to be
@@ -2037,8 +2024,7 @@ kgnilnd_dev_init(kgn_device_t *dev)
        if (rrc != GNI_RC_SUCCESS) {
                CERROR("Can't create fma cq size %d for device %d (%d)\n",
                       *kgnilnd_tunables.kgn_fma_cq_size, dev->gnd_id, rrc);
-               rc = -EINVAL;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -EINVAL);
        }
 
        RETURN(0);
@@ -2190,10 +2176,8 @@ int kgnilnd_base_startup(void)
                LIBCFS_ALLOC(dev->gnd_dgrams,
                            sizeof(struct list_head) * *kgnilnd_tunables.kgn_peer_hash_size);
 
-               if (dev->gnd_dgrams == NULL) {
-                       rc = -ENOMEM;
-                       GOTO(failed, rc);
-               }
+               if (dev->gnd_dgrams == NULL)
+                       GOTO(failed, rc = -ENOMEM);
 
                for (i = 0; i < *kgnilnd_tunables.kgn_peer_hash_size; i++) {
                        INIT_LIST_HEAD(&dev->gnd_dgrams[i]);
@@ -2235,10 +2219,8 @@ int kgnilnd_base_startup(void)
        LIBCFS_ALLOC(kgnilnd_data.kgn_peers,
                    sizeof(struct list_head) * *kgnilnd_tunables.kgn_peer_hash_size);
 
-       if (kgnilnd_data.kgn_peers == NULL) {
-               rc = -ENOMEM;
-               GOTO(failed, rc);
-       }
+       if (kgnilnd_data.kgn_peers == NULL)
+               GOTO(failed, rc = -ENOMEM);
 
        for (i = 0; i < *kgnilnd_tunables.kgn_peer_hash_size; i++) {
                INIT_LIST_HEAD(&kgnilnd_data.kgn_peers[i]);
@@ -2247,10 +2229,8 @@ int kgnilnd_base_startup(void)
        LIBCFS_ALLOC(kgnilnd_data.kgn_conns,
                    sizeof(struct list_head) * *kgnilnd_tunables.kgn_peer_hash_size);
 
-       if (kgnilnd_data.kgn_conns == NULL) {
-               rc = -ENOMEM;
-               GOTO(failed, rc);
-       }
+       if (kgnilnd_data.kgn_conns == NULL)
+               GOTO(failed, rc = -ENOMEM);
 
        for (i = 0; i < *kgnilnd_tunables.kgn_peer_hash_size; i++) {
                INIT_LIST_HEAD(&kgnilnd_data.kgn_conns[i]);
@@ -2259,10 +2239,8 @@ int kgnilnd_base_startup(void)
        LIBCFS_ALLOC(kgnilnd_data.kgn_nets,
                    sizeof(struct list_head) * *kgnilnd_tunables.kgn_net_hash_size);
 
-       if (kgnilnd_data.kgn_nets == NULL) {
-               rc = -ENOMEM;
-               GOTO(failed, rc);
-       }
+       if (kgnilnd_data.kgn_nets == NULL)
+               GOTO(failed, rc = -ENOMEM);
 
        for (i = 0; i < *kgnilnd_tunables.kgn_net_hash_size; i++) {
                INIT_LIST_HEAD(&kgnilnd_data.kgn_nets[i]);
@@ -2273,24 +2251,21 @@ int kgnilnd_base_startup(void)
                                  SLAB_HWCACHE_ALIGN, NULL);
        if (kgnilnd_data.kgn_mbox_cache == NULL) {
                CERROR("Can't create slab for physical mbox blocks\n");
-               rc = -ENOMEM;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
 
        kgnilnd_data.kgn_rx_cache =
                kmem_cache_create("kgn_rx_t", sizeof(kgn_rx_t), 0, 0, NULL);
        if (kgnilnd_data.kgn_rx_cache == NULL) {
                CERROR("Can't create slab for kgn_rx_t descriptors\n");
-               rc = -ENOMEM;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
 
        kgnilnd_data.kgn_tx_cache =
                kmem_cache_create("kgn_tx_t", sizeof(kgn_tx_t), 0, 0, NULL);
        if (kgnilnd_data.kgn_tx_cache == NULL) {
                CERROR("Can't create slab for kgn_tx_t\n");
-               rc = -ENOMEM;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
 
        kgnilnd_data.kgn_tx_phys_cache =
@@ -2299,16 +2274,14 @@ int kgnilnd_base_startup(void)
                                   0, 0, NULL);
        if (kgnilnd_data.kgn_tx_phys_cache == NULL) {
                CERROR("Can't create slab for kgn_tx_phys\n");
-               rc = -ENOMEM;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
 
        kgnilnd_data.kgn_dgram_cache =
                kmem_cache_create("kgn_dgram_t", sizeof(kgn_dgram_t), 0, 0, NULL);
        if (kgnilnd_data.kgn_dgram_cache == NULL) {
                CERROR("Can't create slab for outgoing datagrams\n");
-               rc = -ENOMEM;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
 
        /* allocate a MAX_IOV array of page pointers for each cpu */
@@ -2316,8 +2289,7 @@ int kgnilnd_base_startup(void)
                                                   GFP_KERNEL);
        if (kgnilnd_data.kgn_cksum_map_pages == NULL) {
                CERROR("Can't allocate vmap cksum pages\n");
-               rc = -ENOMEM;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
        kgnilnd_data.kgn_cksum_npages = num_possible_cpus();
        memset(kgnilnd_data.kgn_cksum_map_pages, 0,
@@ -2328,8 +2300,7 @@ int kgnilnd_base_startup(void)
                                                              GFP_KERNEL);
                if (kgnilnd_data.kgn_cksum_map_pages[i] == NULL) {
                        CERROR("Can't allocate vmap cksum pages for cpu %d\n", i);
-                       rc = -ENOMEM;
-                       GOTO(failed, rc);
+                       GOTO(failed, rc = -ENOMEM);
                }
        }
 
@@ -2345,16 +2316,14 @@ int kgnilnd_base_startup(void)
                        kgnilnd_data.kgn_ndevs++;
 
                        rc = kgnilnd_allocate_phys_fmablk(dev);
-                       if (rc) {
+                       if (rc)
                                GOTO(failed, rc);
-                       }
                }
        }
 
        if (kgnilnd_data.kgn_ndevs == 0) {
                CERROR("Can't initialise any GNI devices\n");
-               rc = -ENODEV;
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENODEV);
        }
 
        rc = kgnilnd_thread_start(kgnilnd_reaper, NULL, "kgnilnd_rpr", 0);
@@ -2613,9 +2582,8 @@ kgnilnd_startup(lnet_ni_t *ni)
        LIBCFS_ALLOC(net, sizeof(*net));
        if (net == NULL) {
                CERROR("could not allocate net for new interface instance\n");
-               rc = -ENOMEM;
                /* no need to cleanup the CDM... */
-               GOTO(failed, rc);
+               GOTO(failed, rc = -ENOMEM);
        }
        INIT_LIST_HEAD(&net->gnn_list);
        ni->ni_data = net;
@@ -2639,8 +2607,7 @@ kgnilnd_startup(lnet_ni_t *ni)
                                        timeout);
                        ni->ni_data = NULL;
                        LIBCFS_FREE(net, sizeof(*net));
-                       rc = -EINVAL;
-                       GOTO(failed, rc);
+                       GOTO(failed, rc = -EINVAL);
                } else
                        ni->ni_peertimeout = timeout;
 
@@ -2705,8 +2672,7 @@ kgnilnd_shutdown(lnet_ni_t *ni)
 
        if (net == NULL) {
                CERROR("got NULL net for ni %p\n", ni);
-               rc = -EINVAL;
-               GOTO(out, rc);
+               GOTO(out, rc = -EINVAL);
        }
 
        LASSERTF(ni == net->gnn_ni,
@@ -2785,7 +2751,6 @@ out:
 
        up(&kgnilnd_data.kgn_quiesce_sem);
        EXIT;
-       return;
 }
 
 void __exit
index 38ef64a..e20fde9 100644 (file)
@@ -39,6 +39,7 @@ _kgnilnd_proc_run_cksum_test(int caseno, int nloops, int nob)
        lnet_kiov_t              *src, *dest;
        struct timespec          begin, end, diff;
        int                      niov;
+       int                      rc = 0;
        int                      i = 0, j = 0, n;
        __u16                    cksum, cksum2;
        __u64                    mbytes;
@@ -48,7 +49,7 @@ _kgnilnd_proc_run_cksum_test(int caseno, int nloops, int nob)
 
        if (src == NULL || dest == NULL) {
                CERROR("couldn't allocate iovs\n");
-               GOTO(unwind, -ENOMEM);
+               GOTO(unwind, rc = -ENOMEM);
        }
 
        for (i = 0; i < LNET_MAX_IOV; i++) {
@@ -58,7 +59,7 @@ _kgnilnd_proc_run_cksum_test(int caseno, int nloops, int nob)
 
                if (src[i].kiov_page == NULL) {
                        CERROR("couldn't allocate page %d\n", i);
-                       GOTO(unwind, -ENOMEM);
+                       GOTO(unwind, rc = -ENOMEM);
                }
 
                dest[i].kiov_offset = 0;
@@ -67,7 +68,7 @@ _kgnilnd_proc_run_cksum_test(int caseno, int nloops, int nob)
 
                if (dest[i].kiov_page == NULL) {
                        CERROR("couldn't allocate page %d\n", i);
-                       GOTO(unwind, -ENOMEM);
+                       GOTO(unwind, rc = -ENOMEM);
                }
        }
 
@@ -76,7 +77,7 @@ _kgnilnd_proc_run_cksum_test(int caseno, int nloops, int nob)
        if (niov > LNET_MAX_IOV) {
                CERROR("bytes %d too large, requires niov %d > %d\n",
                        nob, niov, LNET_MAX_IOV);
-               GOTO(unwind, -E2BIG);
+               GOTO(unwind, rc = -E2BIG);
        }
 
        /* setup real data */
@@ -120,7 +121,7 @@ _kgnilnd_proc_run_cksum_test(int caseno, int nloops, int nob)
                if (cksum != cksum2) {
                        CERROR("case %d loop %d different checksums %x expected %x\n",
                               j, n, cksum2, cksum);
-                       GOTO(unwind, -ENOKEY);
+                       GOTO(unwind, rc = -ENOKEY);
                }
        }
 
@@ -148,7 +149,7 @@ unwind:
                LIBCFS_FREE(src, LNET_MAX_IOV * sizeof(lnet_kiov_t));
        if (dest != NULL)
                LIBCFS_FREE(dest, LNET_MAX_IOV * sizeof(lnet_kiov_t));
-       return 0;
+       return rc;
 }
 
 static int
@@ -158,17 +159,18 @@ kgnilnd_proc_cksum_test_write(struct file *file, const char *ubuffer,
        char                    dummy[256 + 1] = { '\0' };
        int                     testno, nloops, nbytes;
        int                     rc;
+       ENTRY;
 
        if (kgnilnd_data.kgn_init < GNILND_INIT_ALL) {
                CERROR("can't run cksum test, kgnilnd is not initialized yet\n");
-               return -ENOSYS;
+               RETURN(-ENOSYS);
        }
 
        if (count >= sizeof(dummy) || count == 0)
-               return -EINVAL;
+               RETURN(-EINVAL);
 
        if (copy_from_user(dummy, ubuffer, count))
-               return -EFAULT;
+               RETURN(-EFAULT);
 
        if (sscanf(dummy, "%d:%d:%d", &testno, &nloops, &nbytes) == 3) {
                rc = _kgnilnd_proc_run_cksum_test(testno, nloops, nbytes);
@@ -1292,8 +1294,7 @@ kgnilnd_proc_init(void)
        pde = create_proc_entry(GNILND_PROC_CKSUM_TEST, 0200, kgn_proc_root);
        if (pde == NULL) {
                CERROR("couldn't create proc entry %s\n", GNILND_PROC_CKSUM_TEST);
-               rc = -ENOENT;
-               GOTO(remove_dir, rc);
+               GOTO(remove_dir, rc = -ENOENT);
        }
 
        pde->data = NULL;
@@ -1303,8 +1304,7 @@ kgnilnd_proc_init(void)
        pde = create_proc_entry(GNILND_PROC_STATS, 0644, kgn_proc_root);
        if (pde == NULL) {
                CERROR("couldn't create proc entry %s\n", GNILND_PROC_STATS);
-               rc = -ENOENT;
-               GOTO(remove_test, rc);
+               GOTO(remove_test, rc = -ENOENT);
        }
 
        pde->data = NULL;
@@ -1315,8 +1315,7 @@ kgnilnd_proc_init(void)
        pde = create_proc_entry(GNILND_PROC_MDD, 0444, kgn_proc_root);
        if (pde == NULL) {
                CERROR("couldn't create proc entry %s\n", GNILND_PROC_MDD);
-               rc = -ENOENT;
-               GOTO(remove_stats, rc);
+               GOTO(remove_stats, rc = -ENOENT);
        }
 
        pde->data = NULL;
@@ -1326,8 +1325,7 @@ kgnilnd_proc_init(void)
        pde = create_proc_entry(GNILND_PROC_SMSG, 0444, kgn_proc_root);
        if (pde == NULL) {
                CERROR("couldn't create proc entry %s\n", GNILND_PROC_SMSG);
-               rc = -ENOENT;
-               GOTO(remove_mdd, rc);
+               GOTO(remove_mdd, rc = -ENOENT);
        }
 
        pde->data = NULL;
@@ -1337,8 +1335,7 @@ kgnilnd_proc_init(void)
        pde = create_proc_entry(GNILND_PROC_CONN, 0444, kgn_proc_root);
        if (pde == NULL) {
                CERROR("couldn't create proc entry %s\n", GNILND_PROC_CONN);
-               rc = -ENOENT;
-               GOTO(remove_smsg, rc);
+               GOTO(remove_smsg, rc = -ENOENT);
        }
 
        pde->data = NULL;
@@ -1348,8 +1345,7 @@ kgnilnd_proc_init(void)
        pde = create_proc_entry(GNILND_PROC_PEER_CONNS, 0644, kgn_proc_root);
        if (pde == NULL) {
                CERROR("couldn't create proc entry %s\n", GNILND_PROC_PEER_CONNS);
-               rc = -ENOENT;
-               GOTO(remove_conn, rc);
+               GOTO(remove_conn, rc = -ENOENT);
        }
 
        pde->data = NULL;
@@ -1360,8 +1356,7 @@ kgnilnd_proc_init(void)
        pde = create_proc_entry(GNILND_PROC_PEER, 0444, kgn_proc_root);
        if (pde == NULL) {
                CERROR("couldn't create proc entry %s\n", GNILND_PROC_PEER);
-               rc = -ENOENT;
-               GOTO(remove_pc, rc);
+               GOTO(remove_pc, rc = -ENOENT);
        }
 
        pde->data = NULL;
index 676e0f0..1b6e6a8 100644 (file)
@@ -188,7 +188,7 @@ seq_server_proc_write_width(struct file *file, const char *buffer,
        rc = lprocfs_write_helper(buffer, count, &val);
        if (rc != 0) {
                CERROR("%s: invalid width.\n", seq->lss_name);
-               GOTO(out_unlock, rc);
+               GOTO(out_unlock, count = rc);
        }
 
        seq->lss_width = val;
@@ -361,7 +361,7 @@ static int fldb_seq_open(struct inode *inode, struct file *file)
        LPROCFS_ENTRY_CHECK(dp);
        rc = seq_open(file, &fldb_sops);
        if (rc)
-               GOTO(out, rc);
+               return rc;
 
        obj = fld->lsf_obj;
        if (obj == NULL) {
index ab457c7..b703235 100644 (file)
@@ -784,7 +784,7 @@ int ldlm_process_extent_lock(struct ldlm_lock *lock, __u64 *flags,
                                GOTO(out, rc = 0);
                        }
 
-                       GOTO(restart, -ERESTART);
+                       GOTO(restart, rc);
                }
 
                /* this way we force client to wait for the lock
index 8e4d453..26a1bf4 100644 (file)
@@ -600,8 +600,8 @@ restart:
                                 rc = ldlm_run_ast_work(ns, &rpc_list,
                                                        LDLM_WORK_CP_AST);
                                 lock_res_and_lock(req);
-                                if (rc == -ERESTART)
-                                        GOTO(restart, -ERESTART);
+                               if (rc == -ERESTART)
+                                       GOTO(restart, rc);
                        }
                 } else {
                         LASSERT(req->l_completion_ast);
index e306115..b1dc03d 100644 (file)
@@ -227,8 +227,8 @@ int ldlm_process_inodebits_lock(struct ldlm_lock *lock, __u64 *flags,
                 rc = ldlm_run_ast_work(ldlm_res_to_ns(res), &rpc_list,
                                        LDLM_WORK_BL_AST);
                 lock_res(res);
-                if (rc == -ERESTART)
-                        GOTO(restart, -ERESTART);
+               if (rc == -ERESTART)
+                       GOTO(restart, rc);
                 *flags |= LDLM_FL_BLOCK_GRANTED;
         } else {
                 ldlm_resource_unlink_lock(lock);
index 760d2c2..0c66b7d 100644 (file)
@@ -1703,7 +1703,7 @@ ldlm_error_t ldlm_lock_enqueue(struct ldlm_namespace *ns,
                  * need to do anything else. */
                 *flags &= ~(LDLM_FL_BLOCK_GRANTED |
                             LDLM_FL_BLOCK_CONV | LDLM_FL_BLOCK_WAIT);
-                GOTO(out, ELDLM_OK);
+               GOTO(out, rc = ELDLM_OK);
         }
 
         ldlm_resource_unlink_lock(lock);
@@ -1741,18 +1741,18 @@ ldlm_error_t ldlm_lock_enqueue(struct ldlm_namespace *ns,
                         ldlm_resource_add_lock(res, &res->lr_waiting, lock);
                 else
                         ldlm_grant_lock(lock, NULL);
-                GOTO(out, ELDLM_OK);
+               GOTO(out, rc = ELDLM_OK);
 #ifdef HAVE_SERVER_SUPPORT
         } else if (*flags & LDLM_FL_REPLAY) {
                 if (*flags & LDLM_FL_BLOCK_CONV) {
                         ldlm_resource_add_lock(res, &res->lr_converting, lock);
-                        GOTO(out, ELDLM_OK);
+                       GOTO(out, rc = ELDLM_OK);
                 } else if (*flags & LDLM_FL_BLOCK_WAIT) {
                         ldlm_resource_add_lock(res, &res->lr_waiting, lock);
-                        GOTO(out, ELDLM_OK);
+                       GOTO(out, rc = ELDLM_OK);
                 } else if (*flags & LDLM_FL_BLOCK_GRANTED) {
                         ldlm_grant_lock(lock, NULL);
-                        GOTO(out, ELDLM_OK);
+                       GOTO(out, rc = ELDLM_OK);
                 }
                 /* If no flags, fall through to normal enqueue path. */
         }
index 32a3f04..7c44f72 100644 (file)
@@ -183,8 +183,8 @@ int ldlm_process_plain_lock(struct ldlm_lock *lock, __u64 *flags,
                 rc = ldlm_run_ast_work(ldlm_res_to_ns(res), &rpc_list,
                                        LDLM_WORK_BL_AST);
                 lock_res(res);
-                if (rc == -ERESTART)
-                        GOTO(restart, -ERESTART);
+               if (rc == -ERESTART)
+                       GOTO(restart, rc);
                 *flags |= LDLM_FL_BLOCK_GRANTED;
         } else {
                 ldlm_resource_unlink_lock(lock);
index 18098dc..33c5996 100644 (file)
@@ -509,7 +509,7 @@ out:
        }
 
        cl_env_put(env, &refcheck);
-       RETURN(tot_bytes ? : result);
+       RETURN(tot_bytes ? tot_bytes : result);
 }
 
 static int ll_write_begin(struct file *file, struct address_space *mapping,
index 9aa132b..6e6b39f 100644 (file)
@@ -215,7 +215,7 @@ static int orph_index_insert(const struct lu_env *env,
 
         mdo_ref_add(env, obj, th);
         if (!S_ISDIR(mdd_object_type(obj)))
-                goto out;
+               GOTO(out, rc = 0);
 
         mdo_ref_add(env, obj, th);
         mdd_orphan_ref_add(env, mdd, th);
@@ -223,7 +223,7 @@ static int orph_index_insert(const struct lu_env *env,
         /* try best to fixup directory, dont return errors
          * from here */
         if (!dt_try_as_dir(env, next))
-                goto out;
+               GOTO(out, rc = 0);
         next->do_index_ops->dio_delete(env, next,
                                        (const struct dt_key *)dotdot,
                                        th, BYPASS_CAPA);
index c3b43b3..8621475 100644 (file)
@@ -66,7 +66,7 @@ int mdt_export_stats_init(struct obd_device *obd,
                tmp->nid_stats = lprocfs_alloc_stats(LPROC_MDT_LAST,
                                                LPROCFS_STATS_FLAG_NOPERCPU);
                if (tmp->nid_stats == NULL)
-                       return -ENOMEM;
+                       RETURN(-ENOMEM);
                 mdt_stats_counter_init(tmp->nid_stats);
                 rc = lprocfs_register_stats(tmp->nid_proc, "stats",
                                             tmp->nid_stats);
index b430c24..9d577f9 100644 (file)
@@ -689,6 +689,7 @@ void obd_cleanup_caches(void)
 
 int obd_init_caches(void)
 {
+       int rc;
        ENTRY;
 
        LASSERT(obd_device_cachep == NULL);
@@ -696,32 +697,31 @@ int obd_init_caches(void)
                                              sizeof(struct obd_device),
                                              0, 0, NULL);
        if (!obd_device_cachep)
-               GOTO(out, -ENOMEM);
+               GOTO(out, rc = -ENOMEM);
 
        LASSERT(obdo_cachep == NULL);
        obdo_cachep = kmem_cache_create("ll_obdo_cache", sizeof(struct obdo),
                                        0, 0, NULL);
        if (!obdo_cachep)
-               GOTO(out, -ENOMEM);
+               GOTO(out, rc = -ENOMEM);
 
        LASSERT(import_cachep == NULL);
        import_cachep = kmem_cache_create("ll_import_cache",
                                          sizeof(struct obd_import),
                                          0, 0, NULL);
        if (!import_cachep)
-               GOTO(out, -ENOMEM);
+               GOTO(out, rc = -ENOMEM);
 
        LASSERT(capa_cachep == NULL);
        capa_cachep = kmem_cache_create("capa_cache", sizeof(struct obd_capa),
                                        0, 0, NULL);
        if (!capa_cachep)
-               GOTO(out, -ENOMEM);
+               GOTO(out, rc = -ENOMEM);
 
        RETURN(0);
 out:
        obd_cleanup_caches();
-       RETURN(-ENOMEM);
-
+       RETURN(rc);
 }
 
 /* map connection to client */
index 806acfc..47f42b1 100644 (file)
@@ -1208,7 +1208,7 @@ int class_process_config(struct lustre_cfg *lcfg)
        }
        case LCFG_SET_PARAM: {
                err = process_param2_config(lcfg);
-               GOTO(out, 0);
+               GOTO(out, err = 0);
        }
        }
         /* Commands that require a device */
index c041c8e..3fe29ef 100644 (file)
@@ -328,7 +328,7 @@ static int osd_bufs_get_write(const struct lu_env *env, struct osd_object *obj,
 {
        struct osd_device *osd = osd_obj2dev(obj);
        int                plen, off_in_block, sz_in_block;
-       int                i = 0, npages = 0;
+       int                rc, i = 0, npages = 0;
        arc_buf_t         *abuf;
        uint32_t           bs;
        uint64_t           dummy;
@@ -351,7 +351,7 @@ static int osd_bufs_get_write(const struct lu_env *env, struct osd_object *obj,
 
                        abuf = dmu_request_arcbuf(obj->oo_db, bs);
                        if (unlikely(abuf == NULL))
-                               GOTO(out_err, -ENOMEM);
+                               GOTO(out_err, rc = -ENOMEM);
 
                        cfs_atomic_inc(&osd->od_zerocopy_loan);
 
@@ -402,7 +402,7 @@ static int osd_bufs_get_write(const struct lu_env *env, struct osd_object *obj,
 
                                lnb[i].page = alloc_page(OSD_GFP_IO);
                                if (unlikely(lnb[i].page == NULL))
-                                       GOTO(out_err, -ENOMEM);
+                                       GOTO(out_err, rc = -ENOMEM);
 
                                LASSERT(lnb[i].page->mapping == NULL);
                                lnb[i].page->mapping = (void *)obj;
@@ -424,7 +424,7 @@ static int osd_bufs_get_write(const struct lu_env *env, struct osd_object *obj,
 
 out_err:
        osd_bufs_put(env, &obj->oo_dt, lnb, npages);
-       RETURN(-ENOMEM);
+       RETURN(rc);
 }
 
 static int osd_bufs_get(const struct lu_env *env, struct dt_object *dt,
index 2cc2c95..e71dabb 100644 (file)
@@ -2478,8 +2478,7 @@ void ptlrpc_free_committed(struct obd_import *imp)
             imp->imp_generation == imp->imp_last_generation_checked) {
                 CDEBUG(D_INFO, "%s: skip recheck: last_committed "LPU64"\n",
                        imp->imp_obd->obd_name, imp->imp_peer_committed_transno);
-                EXIT;
-                return;
+               RETURN_EXIT;
         }
         CDEBUG(D_RPCTRACE, "%s: committing for last_committed "LPU64" gen %d\n",
                imp->imp_obd->obd_name, imp->imp_peer_committed_transno,
@@ -2538,14 +2537,12 @@ free_req:
        }
 out:
         EXIT;
-        return;
 }
 
 void ptlrpc_cleanup_client(struct obd_import *imp)
 {
         ENTRY;
         EXIT;
-        return;
 }
 EXPORT_SYMBOL(ptlrpc_cleanup_client);
 
index 495721a..1076b96 100644 (file)
@@ -1478,7 +1478,7 @@ int ptlrpc_disconnect_import(struct obd_import *imp, int noclose)
 
        spin_lock(&imp->imp_lock);
        if (imp->imp_state != LUSTRE_IMP_FULL)
-               GOTO(out, 0);
+               GOTO(out, rc);
 
        spin_unlock(&imp->imp_lock);
 
index 04ffa91..92f6d70 100644 (file)
@@ -680,7 +680,7 @@ struct lquota_entry *qmt_pool_lqe_lookup(const struct lu_env *env,
                 * entry since we keep a reference on ID 0 all the time */
                lqe = pool->qpi_grace_lqe[qtype];
                lqe_getref(lqe);
-               GOTO(out, 0);
+               GOTO(out, lqe);
        }
 
        /* now that we have the pool, let's look-up the quota entry in the
index e4851e1..ee8380a 100644 (file)
@@ -287,7 +287,7 @@ int qsd_intent_lock(const struct lu_env *env, struct obd_export *exp,
                lock = ldlm_handle2lock(&qti->qti_lockh);
                if (lock == NULL) {
                        ptlrpc_req_finished(req);
-                       GOTO(out, -ENOLCK);
+                       GOTO(out, rc = -ENOLCK);
                }
                lu_ref_add(&qqi->qqi_reference, "glb_lock", lock);
                LDLM_LOCK_PUT(lock);