Author: arybchik
Date: Sat Nov 24 16:31:43 2018
New Revision: 340896
URL: https://svnweb.freebsd.org/changeset/base/340896

Log:
  sfxge(4): remove Falcon-specific concurrency check
  
  Falcon support has been withdrawn from libefx, however, there is still
  an obsolete Falcon-specific assertion that efx_mac_stats_upload()
  and efx_port_poll() aren't concurrent. To be consistent with an overall
  Falcon support revocation it's desirable to remove it.
  
  Fix debug build invalid assertion failure.
  
  Submitted by:   Ivan Malov <ivan.malov at oktetlabs.ru>
  Sponsored by:   Solarflare Communications, Inc.
  MFC after:      1 week
  Differential Revision:  https://reviews.freebsd.org/D18130

Modified:
  head/sys/dev/sfxge/common/efx_impl.h
  head/sys/dev/sfxge/common/efx_mac.c
  head/sys/dev/sfxge/common/efx_port.c

Modified: head/sys/dev/sfxge/common/efx_impl.h
==============================================================================
--- head/sys/dev/sfxge/common/efx_impl.h        Sat Nov 24 16:31:31 2018        
(r340895)
+++ head/sys/dev/sfxge/common/efx_impl.h        Sat Nov 24 16:31:43 2018        
(r340896)
@@ -300,7 +300,6 @@ typedef struct efx_port_s {
        uint32_t                ep_default_adv_cap_mask;
        uint32_t                ep_phy_cap_mask;
        boolean_t               ep_mac_drain;
-       boolean_t               ep_mac_stats_pending;
 #if EFSYS_OPT_BIST
        efx_bist_type_t         ep_current_bist;
 #endif

Modified: head/sys/dev/sfxge/common/efx_mac.c
==============================================================================
--- head/sys/dev/sfxge/common/efx_mac.c Sat Nov 24 16:31:31 2018        
(r340895)
+++ head/sys/dev/sfxge/common/efx_mac.c Sat Nov 24 16:31:43 2018        
(r340896)
@@ -756,16 +756,9 @@ efx_mac_stats_upload(
        EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_PORT);
        EFSYS_ASSERT(emop != NULL);
 
-       /*
-        * Don't assert !ep_mac_stats_pending, because the client might
-        * have failed to finalise statistics when previously stopping
-        * the port.
-        */
        if ((rc = emop->emo_stats_upload(enp, esmp)) != 0)
                goto fail1;
 
-       epp->ep_mac_stats_pending = B_TRUE;
-
        return (0);
 
 fail1:
@@ -825,8 +818,6 @@ efx_mac_stats_update(
        EFSYS_ASSERT(emop != NULL);
 
        rc = emop->emo_stats_update(enp, esmp, essp, generationp);
-       if (rc == 0)
-               epp->ep_mac_stats_pending = B_FALSE;
 
        return (rc);
 }

Modified: head/sys/dev/sfxge/common/efx_port.c
==============================================================================
--- head/sys/dev/sfxge/common/efx_port.c        Sat Nov 24 16:31:31 2018        
(r340895)
+++ head/sys/dev/sfxge/common/efx_port.c        Sat Nov 24 16:31:43 2018        
(r340896)
@@ -114,7 +114,6 @@ efx_port_poll(
        EFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_PORT);
 
        EFSYS_ASSERT(emop != NULL);
-       EFSYS_ASSERT(!epp->ep_mac_stats_pending);
 
        if (link_modep == NULL)
                link_modep = &ignore_link_mode;
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to