Remove if_start from cxgb and cxgbe.

Submitted by:	jhb
MFC after:	3 days
This commit is contained in:
Navdeep Parhar 2012-02-07 07:32:39 +00:00
parent bfb08b6b6b
commit 65d43cc6e7
4 changed files with 2 additions and 50 deletions

View File

@ -572,5 +572,4 @@ static inline int offload_running(adapter_t *adapter)
void cxgb_tx_watchdog(void *arg); void cxgb_tx_watchdog(void *arg);
int cxgb_transmit(struct ifnet *ifp, struct mbuf *m); int cxgb_transmit(struct ifnet *ifp, struct mbuf *m);
void cxgb_qflush(struct ifnet *ifp); void cxgb_qflush(struct ifnet *ifp);
void cxgb_start(struct ifnet *ifp);
#endif #endif

View File

@ -227,14 +227,6 @@ TUNABLE_INT("hw.cxgb.use_16k_clusters", &cxgb_use_16k_clusters);
SYSCTL_INT(_hw_cxgb, OID_AUTO, use_16k_clusters, CTLFLAG_RDTUN, SYSCTL_INT(_hw_cxgb, OID_AUTO, use_16k_clusters, CTLFLAG_RDTUN,
&cxgb_use_16k_clusters, 0, "use 16kB clusters for the jumbo queue "); &cxgb_use_16k_clusters, 0, "use 16kB clusters for the jumbo queue ");
/*
* Tune the size of the output queue.
*/
int cxgb_snd_queue_len = IFQ_MAXLEN;
TUNABLE_INT("hw.cxgb.snd_queue_len", &cxgb_snd_queue_len);
SYSCTL_INT(_hw_cxgb, OID_AUTO, snd_queue_len, CTLFLAG_RDTUN,
&cxgb_snd_queue_len, 0, "send queue size ");
static int nfilters = -1; static int nfilters = -1;
TUNABLE_INT("hw.cxgb.nfilters", &nfilters); TUNABLE_INT("hw.cxgb.nfilters", &nfilters);
SYSCTL_INT(_hw_cxgb, OID_AUTO, nfilters, CTLFLAG_RDTUN, SYSCTL_INT(_hw_cxgb, OID_AUTO, nfilters, CTLFLAG_RDTUN,
@ -1019,11 +1011,8 @@ cxgb_port_attach(device_t dev)
ifp->if_softc = p; ifp->if_softc = p;
ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST;
ifp->if_ioctl = cxgb_ioctl; ifp->if_ioctl = cxgb_ioctl;
ifp->if_start = cxgb_start; ifp->if_transmit = cxgb_transmit;
ifp->if_qflush = cxgb_qflush;
ifp->if_snd.ifq_drv_maxlen = max(cxgb_snd_queue_len, ifqmaxlen);
IFQ_SET_MAXLEN(&ifp->if_snd, ifp->if_snd.ifq_drv_maxlen);
IFQ_SET_READY(&ifp->if_snd);
ifp->if_capabilities = CXGB_CAP; ifp->if_capabilities = CXGB_CAP;
ifp->if_capenable = CXGB_CAP_ENABLE; ifp->if_capenable = CXGB_CAP_ENABLE;
@ -1039,8 +1028,6 @@ cxgb_port_attach(device_t dev)
} }
ether_ifattach(ifp, p->hw_addr); ether_ifattach(ifp, p->hw_addr);
ifp->if_transmit = cxgb_transmit;
ifp->if_qflush = cxgb_qflush;
#ifdef DEFAULT_JUMBO #ifdef DEFAULT_JUMBO
if (sc->params.nports <= 2) if (sc->params.nports <= 2)

View File

@ -1767,19 +1767,6 @@ cxgb_transmit(struct ifnet *ifp, struct mbuf *m)
error = drbr_enqueue(ifp, qs->txq[TXQ_ETH].txq_mr, m); error = drbr_enqueue(ifp, qs->txq[TXQ_ETH].txq_mr, m);
return (error); return (error);
} }
void
cxgb_start(struct ifnet *ifp)
{
struct port_info *pi = ifp->if_softc;
struct sge_qset *qs = &pi->adapter->sge.qs[pi->first_qset];
if (!pi->link_config.link_ok)
return;
TXQ_LOCK(qs);
cxgb_start_locked(qs);
TXQ_UNLOCK(qs);
}
void void
cxgb_qflush(struct ifnet *ifp) cxgb_qflush(struct ifnet *ifp)

View File

@ -112,7 +112,6 @@ static struct cdevsw t4_cdevsw = {
/* ifnet + media interface */ /* ifnet + media interface */
static void cxgbe_init(void *); static void cxgbe_init(void *);
static int cxgbe_ioctl(struct ifnet *, unsigned long, caddr_t); static int cxgbe_ioctl(struct ifnet *, unsigned long, caddr_t);
static void cxgbe_start(struct ifnet *);
static int cxgbe_transmit(struct ifnet *, struct mbuf *); static int cxgbe_transmit(struct ifnet *, struct mbuf *);
static void cxgbe_qflush(struct ifnet *); static void cxgbe_qflush(struct ifnet *);
static int cxgbe_media_change(struct ifnet *); static int cxgbe_media_change(struct ifnet *);
@ -829,14 +828,9 @@ cxgbe_attach(device_t dev)
ifp->if_init = cxgbe_init; ifp->if_init = cxgbe_init;
ifp->if_ioctl = cxgbe_ioctl; ifp->if_ioctl = cxgbe_ioctl;
ifp->if_start = cxgbe_start;
ifp->if_transmit = cxgbe_transmit; ifp->if_transmit = cxgbe_transmit;
ifp->if_qflush = cxgbe_qflush; ifp->if_qflush = cxgbe_qflush;
ifp->if_snd.ifq_drv_maxlen = 1024;
IFQ_SET_MAXLEN(&ifp->if_snd, ifp->if_snd.ifq_drv_maxlen);
IFQ_SET_READY(&ifp->if_snd);
ifp->if_capabilities = T4_CAP; ifp->if_capabilities = T4_CAP;
#ifndef TCP_OFFLOAD_DISABLE #ifndef TCP_OFFLOAD_DISABLE
if (is_offload(pi->adapter)) if (is_offload(pi->adapter))
@ -1095,21 +1089,6 @@ cxgbe_ioctl(struct ifnet *ifp, unsigned long cmd, caddr_t data)
return (rc); return (rc);
} }
static void
cxgbe_start(struct ifnet *ifp)
{
struct port_info *pi = ifp->if_softc;
struct sge_txq *txq;
int i;
for_each_txq(pi, i, txq) {
if (TXQ_TRYLOCK(txq)) {
txq_start(ifp, txq);
TXQ_UNLOCK(txq);
}
}
}
static int static int
cxgbe_transmit(struct ifnet *ifp, struct mbuf *m) cxgbe_transmit(struct ifnet *ifp, struct mbuf *m)
{ {