Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Jun 2015 20:40:39 +0000 (UTC)
From:      David C Somayajulu <davidcs@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org
Subject:   svn commit: r284980 - stable/7/sys/dev/bxe
Message-ID:  <201506302040.t5UKedrn015365@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: davidcs
Date: Tue Jun 30 20:40:38 2015
New Revision: 284980
URL: https://svnweb.freebsd.org/changeset/base/284980

Log:
  MFC r284470
  In bxe_set_mc_list(): added missing BXE_MCAST_UNLOCK()
  In __ecore_vlan_mac_h_exec_pending(): need to check for ECORE_PENDING
  
  Submitted by:gary.zambrano@qlogic.com

Modified:
  stable/7/sys/dev/bxe/bxe.c
  stable/7/sys/dev/bxe/ecore_sp.c
Directory Properties:
  stable/7/sys/   (props changed)

Modified: stable/7/sys/dev/bxe/bxe.c
==============================================================================
--- stable/7/sys/dev/bxe/bxe.c	Tue Jun 30 20:37:04 2015	(r284979)
+++ stable/7/sys/dev/bxe/bxe.c	Tue Jun 30 20:40:38 2015	(r284980)
@@ -12546,6 +12546,7 @@ bxe_init_mcast_macs_list(struct bxe_soft
         BLOGE(sc, "Failed to allocate temp mcast list\n");
         return (-1);
     }
+    bzero(mc_mac, (sizeof(*mc_mac) * mc_count));
 
     TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) {
         if (ifma->ifma_addr->sa_family != AF_LINK) {
@@ -12596,6 +12597,7 @@ bxe_set_mc_list(struct bxe_softc *sc)
     rc = ecore_config_mcast(sc, &rparam, ECORE_MCAST_CMD_DEL);
     if (rc < 0) {
         BLOGE(sc, "Failed to clear multicast configuration: %d\n", rc);
+        BXE_MCAST_UNLOCK(sc);
         return (rc);
     }
 

Modified: stable/7/sys/dev/bxe/ecore_sp.c
==============================================================================
--- stable/7/sys/dev/bxe/ecore_sp.c	Tue Jun 30 20:37:04 2015	(r284979)
+++ stable/7/sys/dev/bxe/ecore_sp.c	Tue Jun 30 20:40:38 2015	(r284980)
@@ -474,7 +474,7 @@ static void __ecore_vlan_mac_h_exec_pend
 	o->head_exe_request = FALSE;
 	o->saved_ramrod_flags = 0;
 	rc = ecore_exe_queue_step(sc, &o->exe_queue, &ramrod_flags);
-	if (rc != ECORE_SUCCESS) {
+	if ((rc != ECORE_SUCCESS) && (rc != ECORE_PENDING)) {
 		ECORE_ERR("execution of pending commands failed with rc %d\n",
 			  rc);
 #ifdef ECORE_STOP_ON_ERROR



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201506302040.t5UKedrn015365>