sfc: Self-test reporting cleanup
authorBen Hutchings <bhutchings@solarflare.com>
Mon, 1 Sep 2008 11:46:28 +0000 (12:46 +0100)
committerJeff Garzik <jgarzik@redhat.com>
Wed, 3 Sep 2008 13:53:43 +0000 (09:53 -0400)
Removed log messages that are redundant with calling functions.
Fixed bitwise or-ing of return codes.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/sfc/selftest.c

index c79ddce..8ad517c 100644 (file)
@@ -566,8 +566,8 @@ static int efx_test_loopbacks(struct efx_nic *efx,
        struct ethtool_cmd ecmd, ecmd_loopback;
        struct efx_tx_queue *tx_queue;
        enum efx_loopback_mode old_mode, mode;
-       int count, rc = 0, link_up;
-       
+       int count, rc, link_up;
+
        rc = efx_ethtool_get_settings(efx->net_dev, &ecmd);
        if (rc) {
                EFX_ERR(efx, "could not get GMII settings\n");
@@ -641,8 +641,8 @@ static int efx_test_loopbacks(struct efx_nic *efx,
                efx_for_each_tx_queue(tx_queue, efx) {
                        state->offload_csum = (tx_queue->queue ==
                                               EFX_TX_QUEUE_OFFLOAD_CSUM);
-                       rc |= efx_test_loopback(tx_queue,
-                                               &tests->loopback[mode]);
+                       rc = efx_test_loopback(tx_queue,
+                                              &tests->loopback[mode]);
                        if (rc)
                                goto out;
                }
@@ -668,22 +668,20 @@ static int efx_test_loopbacks(struct efx_nic *efx,
 int efx_online_test(struct efx_nic *efx, struct efx_self_tests *tests)
 {
        struct efx_channel *channel;
-       int rc = 0;
+       int rc;
 
-       EFX_LOG(efx, "performing online self-tests\n");
-
-       rc |= efx_test_interrupts(efx, tests);
+       rc = efx_test_interrupts(efx, tests);
+       if (rc)
+               return rc;
        efx_for_each_channel(channel, efx) {
                if (channel->has_interrupt)
-                       rc |= efx_test_eventq_irq(channel, tests);
+                       rc = efx_test_eventq_irq(channel, tests);
                else
-                       rc |= efx_test_eventq(channel, tests);
+                       rc = efx_test_eventq(channel, tests);
+               if (rc)
+                       return rc;
        }
-       rc |= efx_test_phy(efx, tests);
-
-       if (rc)
-               EFX_ERR(efx, "failed online self-tests\n");
-
+       rc = efx_test_phy(efx, tests);
        return rc;
 }
 
@@ -693,16 +691,12 @@ int efx_offline_test(struct efx_nic *efx,
                     struct efx_self_tests *tests, unsigned int loopback_modes)
 {
        struct efx_selftest_state *state;
-       int rc = 0;
-
-       EFX_LOG(efx, "performing offline self-tests\n");
+       int rc;
 
        /* Create a selftest_state structure to hold state for the test */
        state = kzalloc(sizeof(*state), GFP_KERNEL);
-       if (state == NULL) {
-               rc = -ENOMEM;
-               goto out;
-       }
+       if (state == NULL)
+               return -ENOMEM;
 
        /* Set the port loopback_selftest member. From this point on
         * all received packets will be dropped. Mark the state as
@@ -717,10 +711,6 @@ int efx_offline_test(struct efx_nic *efx,
        wmb();
        kfree(state);
 
- out:
-       if (rc)
-               EFX_ERR(efx, "failed offline self-tests\n");
-
        return rc;
 }