svn commit: r280508 - stable/10/sys/dev/sfxge
Andrew Rybchenko
arybchik at FreeBSD.org
Wed Mar 25 10:11:19 UTC 2015
Author: arybchik
Date: Wed Mar 25 10:11:17 2015
New Revision: 280508
URL: https://svnweb.freebsd.org/changeset/base/280508
Log:
MFC: 277884
sfxge: Change sfxge_ev_qpoll() proto to avoid EVQ pointers array access
It was the only place on data path where sc->evq array is accessed.
Sponsored by: Solarflare Communications, Inc.
Approved by: gnn (mentor)
Modified:
stable/10/sys/dev/sfxge/sfxge.h
stable/10/sys/dev/sfxge/sfxge_ev.c
stable/10/sys/dev/sfxge/sfxge_intr.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/dev/sfxge/sfxge.h
==============================================================================
--- stable/10/sys/dev/sfxge/sfxge.h Wed Mar 25 10:08:28 2015 (r280507)
+++ stable/10/sys/dev/sfxge/sfxge.h Wed Mar 25 10:11:17 2015 (r280508)
@@ -280,7 +280,7 @@ extern int sfxge_ev_init(struct sfxge_so
extern void sfxge_ev_fini(struct sfxge_softc *sc);
extern int sfxge_ev_start(struct sfxge_softc *sc);
extern void sfxge_ev_stop(struct sfxge_softc *sc);
-extern int sfxge_ev_qpoll(struct sfxge_softc *sc, unsigned int index);
+extern int sfxge_ev_qpoll(struct sfxge_evq *evq);
/*
* From sfxge_intr.c.
Modified: stable/10/sys/dev/sfxge/sfxge_ev.c
==============================================================================
--- stable/10/sys/dev/sfxge/sfxge_ev.c Wed Mar 25 10:08:28 2015 (r280507)
+++ stable/10/sys/dev/sfxge/sfxge_ev.c Wed Mar 25 10:11:17 2015 (r280508)
@@ -564,13 +564,10 @@ static const efx_ev_callbacks_t sfxge_ev
int
-sfxge_ev_qpoll(struct sfxge_softc *sc, unsigned int index)
+sfxge_ev_qpoll(struct sfxge_evq *evq)
{
- struct sfxge_evq *evq;
int rc;
- evq = sc->evq[index];
-
mtx_lock(&evq->lock);
if (evq->init_state != SFXGE_EVQ_STARTING &&
Modified: stable/10/sys/dev/sfxge/sfxge_intr.c
==============================================================================
--- stable/10/sys/dev/sfxge/sfxge_intr.c Wed Mar 25 10:08:28 2015 (r280507)
+++ stable/10/sys/dev/sfxge/sfxge_intr.c Wed Mar 25 10:11:17 2015 (r280508)
@@ -106,9 +106,8 @@ static void
sfxge_intr_line(void *arg)
{
struct sfxge_evq *evq = arg;
- struct sfxge_softc *sc = evq->sc;
- (void)sfxge_ev_qpoll(sc, 0);
+ (void)sfxge_ev_qpoll(evq);
}
static void
@@ -142,7 +141,7 @@ sfxge_intr_message(void *arg)
return;
}
- (void)sfxge_ev_qpoll(sc, index);
+ (void)sfxge_ev_qpoll(evq);
}
static int
More information about the svn-src-stable-10
mailing list