From ff4a7b14593e54e54b6b0c8d48aeae4dd8640661 Mon Sep 17 00:00:00 2001 From: Mark Kettenis Date: Sun, 31 Jul 2016 12:51:50 +0000 Subject: Use m_devget(9). ok claudio@ --- sys/dev/usb/if_smsc.c | 30 +++--------------------------- 1 file changed, 3 insertions(+), 27 deletions(-) (limited to 'sys/dev') diff --git a/sys/dev/usb/if_smsc.c b/sys/dev/usb/if_smsc.c index 8f4e529ed22..662d4ea8ac7 100644 --- a/sys/dev/usb/if_smsc.c +++ b/sys/dev/usb/if_smsc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_smsc.c,v 1.27 2016/04/13 11:03:37 mpi Exp $ */ +/* $OpenBSD: if_smsc.c,v 1.28 2016/07/31 12:51:49 kettenis Exp $ */ /* $FreeBSD: src/sys/dev/usb/net/if_smsc.c,v 1.1 2012/08/15 04:03:55 gonzo Exp $ */ /*- * Copyright (c) 2012 @@ -146,7 +146,6 @@ void smsc_init(void *); void smsc_stop(struct smsc_softc *); void smsc_start(struct ifnet *); void smsc_reset(struct smsc_softc *); -struct mbuf *smsc_newbuf(void); void smsc_tick(void *); void smsc_tick_task(void *); @@ -1197,18 +1196,13 @@ smsc_rxeof(struct usbd_xfer *xfer, void *priv, usbd_status status) else total_len -= pktlen; - m = smsc_newbuf(); + m = m_devget(buf, pktlen, ETHER_ALIGN); if (m == NULL) { - smsc_dbg_printf(sc, "smc_newbuf returned NULL\n"); + smsc_dbg_printf(sc, "m_devget returned NULL\n"); ifp->if_ierrors++; goto done; } - m->m_pkthdr.len = m->m_len = pktlen; - m_adj(m, ETHER_ALIGN); - - memcpy(mtod(m, char *), buf, pktlen); - ml_enqueue(&ml, m); } while (total_len > 0); @@ -1330,24 +1324,6 @@ smsc_rx_list_init(struct smsc_softc *sc) return (0); } -struct mbuf * -smsc_newbuf(void) -{ - struct mbuf *m; - - MGETHDR(m, M_DONTWAIT, MT_DATA); - if (m == NULL) - return (NULL); - - MCLGET(m, M_DONTWAIT); - if (!(m->m_flags & M_EXT)) { - m_freem(m); - return (NULL); - } - - return (m); -} - int smsc_encap(struct smsc_softc *sc, struct mbuf *m, int idx) { -- cgit v1.2.3