Author: jhibbits
Date: Tue Apr 23 03:19:03 2019
New Revision: 346590
URL: https://svnweb.freebsd.org/changeset/base/346590

Log:
  [PowerPC64] pseries-llan: increment packet output counters on error and 
success
  
  Summary: when using pseries-llan driver, Opkts and Oerrs counters (netstat
  -i) are always zero. This patch adds an small error handling to increment
  these counters.
  
  Submitted by: alfredo.junior_eldorado.org.br
  Differential Revision: https://reviews.freebsd.org/D20009

Modified:
  head/sys/powerpc/pseries/phyp_llan.c

Modified: head/sys/powerpc/pseries/phyp_llan.c
==============================================================================
--- head/sys/powerpc/pseries/phyp_llan.c        Tue Apr 23 03:05:26 2019        
(r346589)
+++ head/sys/powerpc/pseries/phyp_llan.c        Tue Apr 23 03:19:03 2019        
(r346590)
@@ -425,7 +425,7 @@ llan_send_packet(void *xsc, bus_dma_segment_t *segs, i
 {
        struct llan_softc *sc = xsc;
        uint64_t bufdescs[6];
-       int i;
+       int i, err;
 
        bzero(bufdescs, sizeof(bufdescs));
 
@@ -435,7 +435,7 @@ llan_send_packet(void *xsc, bus_dma_segment_t *segs, i
                bufdescs[i] |= segs[i].ds_addr;
        }
 
-       phyp_hcall(H_SEND_LOGICAL_LAN, sc->unit, bufdescs[0],
+       err = phyp_hcall(H_SEND_LOGICAL_LAN, sc->unit, bufdescs[0],
            bufdescs[1], bufdescs[2], bufdescs[3], bufdescs[4], bufdescs[5], 0);
        /*
         * The hypercall returning implies completion -- or that the call will
@@ -443,6 +443,10 @@ llan_send_packet(void *xsc, bus_dma_segment_t *segs, i
         * H_BUSY based on the continuation token in R4. For now, just drop
         * the packet in such cases.
         */
+       if (err == H_SUCCESS)
+               if_inc_counter(sc->ifp, IFCOUNTER_OPACKETS, 1);
+       else
+               if_inc_counter(sc->ifp, IFCOUNTER_OERRORS, 1);
 }
 
 static void
_______________________________________________
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