Author: arybchik
Date: Wed Dec 26 10:20:54 2018
New Revision: 342511
URL: https://svnweb.freebsd.org/changeset/base/342511

Log:
  MFC r341213
  
  sfxge(4): fix PreFAST warnings because of unused return
  
  Submitted by:   Martin Harvey <mharvey at solarflare.com>
  Sponsored by:   Solarflare Communications, Inc.
  Differential Revision:  https://reviews.freebsd.org/D18244

Modified:
  stable/10/sys/dev/sfxge/common/ef10_filter.c
  stable/10/sys/dev/sfxge/common/ef10_mac.c
  stable/10/sys/dev/sfxge/common/ef10_nic.c
  stable/10/sys/dev/sfxge/common/ef10_nvram.c
  stable/10/sys/dev/sfxge/common/ef10_tx.c
  stable/10/sys/dev/sfxge/common/efx_port.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/sfxge/common/ef10_filter.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/ef10_filter.c        Wed Dec 26 10:20:02 
2018        (r342510)
+++ stable/10/sys/dev/sfxge/common/ef10_filter.c        Wed Dec 26 10:20:54 
2018        (r342511)
@@ -1054,12 +1054,15 @@ ef10_filter_insert_unicast(
        efx_filter_spec_init_rx(&spec, EFX_FILTER_PRI_AUTO,
            filter_flags,
            eftp->eft_default_rxq);
-       efx_filter_spec_set_eth_local(&spec, EFX_FILTER_SPEC_VID_UNSPEC, addr);
+       rc = efx_filter_spec_set_eth_local(&spec, EFX_FILTER_SPEC_VID_UNSPEC,
+           addr);
+       if (rc != 0)
+               goto fail1;
 
        rc = ef10_filter_add_internal(enp, &spec, B_TRUE,
            &eftp->eft_unicst_filter_indexes[eftp->eft_unicst_filter_count]);
        if (rc != 0)
-               goto fail1;
+               goto fail2;
 
        eftp->eft_unicst_filter_count++;
        EFSYS_ASSERT(eftp->eft_unicst_filter_count <=
@@ -1067,6 +1070,8 @@ ef10_filter_insert_unicast(
 
        return (0);
 
+fail2:
+       EFSYS_PROBE(fail2);
 fail1:
        EFSYS_PROBE1(fail1, efx_rc_t, rc);
        return (rc);
@@ -1085,11 +1090,13 @@ ef10_filter_insert_all_unicast(
        efx_filter_spec_init_rx(&spec, EFX_FILTER_PRI_AUTO,
            filter_flags,
            eftp->eft_default_rxq);
-       efx_filter_spec_set_uc_def(&spec);
+       rc = efx_filter_spec_set_uc_def(&spec);
+       if (rc != 0)
+               goto fail1;
        rc = ef10_filter_add_internal(enp, &spec, B_TRUE,
            &eftp->eft_unicst_filter_indexes[eftp->eft_unicst_filter_count]);
        if (rc != 0)
-               goto fail1;
+               goto fail2;
 
        eftp->eft_unicst_filter_count++;
        EFSYS_ASSERT(eftp->eft_unicst_filter_count <=
@@ -1097,6 +1104,8 @@ ef10_filter_insert_all_unicast(
 
        return (0);
 
+fail2:
+       EFSYS_PROBE(fail2);
 fail1:
        EFSYS_PROBE1(fail1, efx_rc_t, rc);
        return (rc);
@@ -1138,9 +1147,21 @@ ef10_filter_insert_multicast_list(
                    filter_flags,
                    eftp->eft_default_rxq);
 
-               efx_filter_spec_set_eth_local(&spec,
+               rc = efx_filter_spec_set_eth_local(&spec,
                    EFX_FILTER_SPEC_VID_UNSPEC,
                    &addrs[i * EFX_MAC_ADDR_LEN]);
+               if (rc != 0) {
+                       if (rollback == B_TRUE) {
+                               /* Only stop upon failure if told to rollback */
+                               goto rollback;
+                       } else {
+                               /*
+                                * Don't try to add a filter with a corrupt
+                                * specification.
+                                */
+                               continue;
+                       }
+               }
 
                rc = ef10_filter_add_internal(enp, &spec, B_TRUE,
                                            &filter_index);
@@ -1163,8 +1184,12 @@ ef10_filter_insert_multicast_list(
                    eftp->eft_default_rxq);
 
                EFX_MAC_BROADCAST_ADDR_SET(addr);
-               efx_filter_spec_set_eth_local(&spec, EFX_FILTER_SPEC_VID_UNSPEC,
-                   addr);
+               rc = efx_filter_spec_set_eth_local(&spec,
+                   EFX_FILTER_SPEC_VID_UNSPEC, addr);
+               if ((rc != 0) && (rollback == B_TRUE)) {
+                       /* Only stop upon failure if told to rollback */
+                       goto rollback;
+               }
 
                rc = ef10_filter_add_internal(enp, &spec, B_TRUE,
                                            &filter_index);
@@ -1212,12 +1237,14 @@ ef10_filter_insert_all_multicast(
        efx_filter_spec_init_rx(&spec, EFX_FILTER_PRI_AUTO,
            filter_flags,
            eftp->eft_default_rxq);
-       efx_filter_spec_set_mc_def(&spec);
+       rc = efx_filter_spec_set_mc_def(&spec);
+       if (rc != 0)
+               goto fail1;
 
        rc = ef10_filter_add_internal(enp, &spec, B_TRUE,
            &eftp->eft_mulcst_filter_indexes[0]);
        if (rc != 0)
-               goto fail1;
+               goto fail2;
 
        eftp->eft_mulcst_filter_count = 1;
        eftp->eft_using_all_mulcst = B_TRUE;
@@ -1228,6 +1255,8 @@ ef10_filter_insert_all_multicast(
 
        return (0);
 
+fail2:
+       EFSYS_PROBE(fail2);
 fail1:
        EFSYS_PROBE1(fail1, efx_rc_t, rc);
 

Modified: stable/10/sys/dev/sfxge/common/ef10_mac.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/ef10_mac.c   Wed Dec 26 10:20:02 2018        
(r342510)
+++ stable/10/sys/dev/sfxge/common/ef10_mac.c   Wed Dec 26 10:20:54 2018        
(r342511)
@@ -438,7 +438,7 @@ ef10_mac_filter_default_rxq_clear(
 
        ef10_filter_default_rxq_clear(enp);
 
-       efx_filter_reconfigure(enp, epp->ep_mac_addr,
+       (void) efx_filter_reconfigure(enp, epp->ep_mac_addr,
                                    epp->ep_all_unicst, epp->ep_mulcst,
                                    epp->ep_all_mulcst, epp->ep_brdcst,
                                    epp->ep_mulcst_addr_list,

Modified: stable/10/sys/dev/sfxge/common/ef10_nic.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/ef10_nic.c   Wed Dec 26 10:20:02 2018        
(r342510)
+++ stable/10/sys/dev/sfxge/common/ef10_nic.c   Wed Dec 26 10:20:54 2018        
(r342511)
@@ -823,7 +823,7 @@ fail1:
        for (i = 0; i < enp->en_arch.ef10.ena_piobuf_count; i++) {
                handlep = &enp->en_arch.ef10.ena_piobuf_handle[i];
 
-               efx_mcdi_free_piobuf(enp, *handlep);
+               (void) efx_mcdi_free_piobuf(enp, *handlep);
                *handlep = EFX_PIOBUF_HANDLE_INVALID;
        }
        enp->en_arch.ef10.ena_piobuf_count = 0;
@@ -840,7 +840,7 @@ ef10_nic_free_piobufs(
        for (i = 0; i < enp->en_arch.ef10.ena_piobuf_count; i++) {
                handlep = &enp->en_arch.ef10.ena_piobuf_handle[i];
 
-               efx_mcdi_free_piobuf(enp, *handlep);
+               (void) efx_mcdi_free_piobuf(enp, *handlep);
                *handlep = EFX_PIOBUF_HANDLE_INVALID;
        }
        enp->en_arch.ef10.ena_piobuf_count = 0;

Modified: stable/10/sys/dev/sfxge/common/ef10_nvram.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/ef10_nvram.c Wed Dec 26 10:20:02 2018        
(r342510)
+++ stable/10/sys/dev/sfxge/common/ef10_nvram.c Wed Dec 26 10:20:54 2018        
(r342511)
@@ -1831,7 +1831,7 @@ ef10_nvram_partn_write_segment_tlv(
                goto fail7;
 
        /* Unlock the partition */
-       ef10_nvram_partn_unlock(enp, partn, NULL);
+       (void) ef10_nvram_partn_unlock(enp, partn, NULL);
 
        EFSYS_KMEM_FREE(enp->en_esip, partn_size, partn_data);
 
@@ -1846,7 +1846,7 @@ fail5:
 fail4:
        EFSYS_PROBE(fail4);
 
-       ef10_nvram_partn_unlock(enp, partn, NULL);
+       (void) ef10_nvram_partn_unlock(enp, partn, NULL);
 fail3:
        EFSYS_PROBE(fail3);
 

Modified: stable/10/sys/dev/sfxge/common/ef10_tx.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/ef10_tx.c    Wed Dec 26 10:20:02 2018        
(r342510)
+++ stable/10/sys/dev/sfxge/common/ef10_tx.c    Wed Dec 26 10:20:54 2018        
(r342511)
@@ -298,7 +298,7 @@ ef10_tx_qpio_enable(
 
 fail3:
        EFSYS_PROBE(fail3);
-       ef10_nic_pio_free(enp, etp->et_pio_bufnum, etp->et_pio_blknum);
+       (void) ef10_nic_pio_free(enp, etp->et_pio_bufnum, etp->et_pio_blknum);
        etp->et_pio_size = 0;
 fail2:
        EFSYS_PROBE(fail2);
@@ -316,10 +316,12 @@ ef10_tx_qpio_disable(
 
        if (etp->et_pio_size != 0) {
                /* Unlink the piobuf from this TXQ */
-               ef10_nic_pio_unlink(enp, etp->et_index);
+               if (ef10_nic_pio_unlink(enp, etp->et_index) != 0)
+                       return;
 
                /* Free the sub-allocated PIO block */
-               ef10_nic_pio_free(enp, etp->et_pio_bufnum, etp->et_pio_blknum);
+               (void) ef10_nic_pio_free(enp, etp->et_pio_bufnum,
+                   etp->et_pio_blknum);
                etp->et_pio_size = 0;
                etp->et_pio_write_offset = 0;
        }

Modified: stable/10/sys/dev/sfxge/common/efx_port.c
==============================================================================
--- stable/10/sys/dev/sfxge/common/efx_port.c   Wed Dec 26 10:20:02 2018        
(r342510)
+++ stable/10/sys/dev/sfxge/common/efx_port.c   Wed Dec 26 10:20:54 2018        
(r342511)
@@ -64,7 +64,7 @@ efx_port_init(
        epp->ep_emop->emo_reconfigure(enp);
 
        /* Pick up current phy capababilities */
-       efx_port_poll(enp, NULL);
+       (void) efx_port_poll(enp, NULL);
 
        /*
         * Turn on the PHY if available, otherwise reset it, and
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to