From owner-svn-src-user@FreeBSD.ORG Tue Nov 4 06:27:48 2008 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CB0EA1065673; Tue, 4 Nov 2008 06:27:48 +0000 (UTC) (envelope-from kmacy@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id B97BC8FC1F; Tue, 4 Nov 2008 06:27:48 +0000 (UTC) (envelope-from kmacy@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id mA46RmcL088406; Tue, 4 Nov 2008 06:27:48 GMT (envelope-from kmacy@svn.freebsd.org) Received: (from kmacy@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id mA46RmtT088404; Tue, 4 Nov 2008 06:27:48 GMT (envelope-from kmacy@svn.freebsd.org) Message-Id: <200811040627.mA46RmtT088404@svn.freebsd.org> From: Kip Macy Date: Tue, 4 Nov 2008 06:27:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r184617 - user/kmacy/HEAD_multi_tx/sys/net X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2008 06:27:48 -0000 Author: kmacy Date: Tue Nov 4 06:27:48 2008 New Revision: 184617 URL: http://svn.freebsd.org/changeset/base/184617 Log: add if_start_mbuf interface to ifnet add initialization in if_attach using default function which does the same as IFQ_HANDOFF Modified: user/kmacy/HEAD_multi_tx/sys/net/if.c user/kmacy/HEAD_multi_tx/sys/net/if_var.h Modified: user/kmacy/HEAD_multi_tx/sys/net/if.c ============================================================================== --- user/kmacy/HEAD_multi_tx/sys/net/if.c Tue Nov 4 06:25:32 2008 (r184616) +++ user/kmacy/HEAD_multi_tx/sys/net/if.c Tue Nov 4 06:27:48 2008 (r184617) @@ -125,6 +125,8 @@ static void if_start_deferred(void *cont static void do_link_state_change(void *, int); static int if_getgroup(struct ifgroupreq *, struct ifnet *); static int if_getgroupmembers(struct ifgroupreq *); +static int if_start_mbuf(struct ifnet *ifp, struct mbuf *m); + #ifdef INET6 /* * XXX: declare here to avoid to include many inet6 related files.. @@ -518,7 +520,7 @@ if_attach(struct ifnet *ifp) getmicrotime(&ifp->if_lastchange); ifp->if_data.ifi_epoch = time_uptime; ifp->if_data.ifi_datalen = sizeof(struct if_data); - + ifp->if_start_mbuf = if_start_mbuf; #ifdef MAC mac_ifnet_init(ifp); mac_ifnet_create(ifp); @@ -2797,6 +2799,19 @@ if_start_deferred(void *context, int pen (ifp->if_start)(ifp); } +/* + * Backwards compatibility interface for drivers + * that have not implemented it + */ +static int +if_start_mbuf(struct ifnet *ifp, struct mbuf *m) +{ + int error; + + IFQ_HANDOFF(ifp, m, error); + return (error); +} + int if_handoff(struct ifqueue *ifq, struct mbuf *m, struct ifnet *ifp, int adjust) { Modified: user/kmacy/HEAD_multi_tx/sys/net/if_var.h ============================================================================== --- user/kmacy/HEAD_multi_tx/sys/net/if_var.h Tue Nov 4 06:25:32 2008 (r184616) +++ user/kmacy/HEAD_multi_tx/sys/net/if_var.h Tue Nov 4 06:27:48 2008 (r184617) @@ -186,7 +186,9 @@ struct ifnet { /* protected by if_addr_mtx */ void *if_pf_kif; void *if_lagg; /* lagg glue */ - void *if_pspare[10]; /* multiq/TOE 3; vimage 3; general use 4 */ + void *if_pspare[9]; /* multiq/TOE 3; vimage 3; general use 4 */ + int (*if_start_mbuf) /* initiate output routine */ + (struct ifnet *, struct mbuf *); int if_ispare[2]; /* general use 2 */ };