From owner-svn-src-projects@FreeBSD.ORG Fri Oct 30 01:40:32 2009 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D57F1106566C; Fri, 30 Oct 2009 01:40:32 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id AB8728FC3B; Fri, 30 Oct 2009 01:40:32 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n9U1eWL6019502; Fri, 30 Oct 2009 01:40:32 GMT (envelope-from gonzo@svn.freebsd.org) Received: (from gonzo@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n9U1eW8T019500; Fri, 30 Oct 2009 01:40:32 GMT (envelope-from gonzo@svn.freebsd.org) Message-Id: <200910300140.n9U1eW8T019500@svn.freebsd.org> From: Oleksandr Tymoshenko Date: Fri, 30 Oct 2009 01:40:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r198667 - projects/mips/sys/mips/atheros X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Oct 2009 01:40:32 -0000 Author: gonzo Date: Fri Oct 30 01:40:32 2009 New Revision: 198667 URL: http://svn.freebsd.org/changeset/base/198667 Log: - Fix build with DEVICE_POLLING enabled Modified: projects/mips/sys/mips/atheros/if_arge.c Modified: projects/mips/sys/mips/atheros/if_arge.c ============================================================================== --- projects/mips/sys/mips/atheros/if_arge.c Fri Oct 30 00:37:50 2009 (r198666) +++ projects/mips/sys/mips/atheros/if_arge.c Fri Oct 30 01:40:32 2009 (r198667) @@ -104,7 +104,7 @@ static int arge_resume(device_t); static int arge_rx_ring_init(struct arge_softc *); static int arge_tx_ring_init(struct arge_softc *); #ifdef DEVICE_POLLING -static void arge_poll(struct ifnet *, enum poll_cmd, int); +static int arge_poll(struct ifnet *, enum poll_cmd, int); #endif static int arge_shutdown(device_t); static void arge_start(struct ifnet *); @@ -112,7 +112,7 @@ static void arge_start_locked(struct ifn static void arge_stop(struct arge_softc *); static int arge_suspend(device_t); -static void arge_rx_locked(struct arge_softc *); +static int arge_rx_locked(struct arge_softc *); static void arge_tx_locked(struct arge_softc *); static void arge_intr(void *); static int arge_intr_filter(void *); @@ -1394,17 +1394,20 @@ arge_fixup_rx(struct mbuf *m) } #ifdef DEVICE_POLLING -static void +static int arge_poll(struct ifnet *ifp, enum poll_cmd cmd, int count) { struct arge_softc *sc = ifp->if_softc; + int rx_npkts = 0; if (ifp->if_drv_flags & IFF_DRV_RUNNING) { ARGE_LOCK(sc); arge_tx_locked(sc); - arge_rx_locked(sc); + rx_npkts = arge_rx_locked(sc); ARGE_UNLOCK(sc); } + + return (rx_npkts); } #endif /* DEVICE_POLLING */ @@ -1470,7 +1473,7 @@ arge_tx_locked(struct arge_softc *sc) } -static void +static int arge_rx_locked(struct arge_softc *sc) { struct arge_rxdesc *rxd; @@ -1478,6 +1481,7 @@ arge_rx_locked(struct arge_softc *sc) int cons, prog, packet_len, i; struct arge_desc *cur_rx; struct mbuf *m; + int rx_npkts = 0; ARGE_LOCK_ASSERT(sc); @@ -1510,6 +1514,7 @@ arge_rx_locked(struct arge_softc *sc) /* Skip 4 bytes of CRC */ m->m_pkthdr.len = m->m_len = packet_len - ETHER_CRC_LEN; ifp->if_ipackets++; + rx_npkts++; ARGE_UNLOCK(sc); (*ifp->if_input)(ifp, m); @@ -1535,6 +1540,8 @@ arge_rx_locked(struct arge_softc *sc) sc->arge_cdata.arge_rx_cons = cons; } + + return (rx_npkts); } static int