Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Jun 2003 09:16:45 +0800
From:      "Michael Shiu" <mshiu@net-yan.com>
To:        "Vincent Jardin" <vjardin@wanadoo.fr>, "Julian Elischer" <julian@elischer.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: Does Netgraph in FBSD 5.x SMP requires GIANT lock?
Message-ID:  <014901c32bc9$4c7a9a30$650019ac@athena>
References:  <Pine.BSF.4.21.0306050436070.80038-100000@InterJet.elischer.org> <200306052213.35422.vjardin@wanadoo.fr>

next in thread | previous in thread | raw e-mail | index | archive | help
I am using DEVICE_POLLING by Lugzi Rizzo and connecting 2 em devices using
NG_ETHER with NG_BRIDGE. Actually, I am planning to make a netgraph node to
do some filtering but as a performance prototype, I am getting those results
mentioned. i.e.

em0 - NG_ETHER - NG_BRIDGE - NG_ETHER - em1

The polling code currently does not work in SMP environments but with some
patchwork, I probably can make it work. But I am not clear if the netgraph
framework has other limitations.

rgds,
_Michael


----- Original Message ----- 
From: "Vincent Jardin" <vjardin@wanadoo.fr>
To: "Julian Elischer" <julian@elischer.org>; "Michael Shiu"
<mshiu@net-yan.com>
Cc: <freebsd-net@freebsd.org>
Sent: Friday, June 06, 2003 4:13 AM
Subject: Re: Does Netgraph in FBSD 5.x SMP requires GIANT lock?


Maybe one giant2thread node could be introduced into the graphs. It could
put
the messages and the mbufs into a queue from a giant context, then they
could
be processed from a thread.

Is it a possible architecture or do I forget something ?

Regards,
  Vincent

Le Jeudi 5 Juin 2003 13:38, Julian Elischer a écrit :
> On Thu, 5 Jun 2003, Michael Shiu wrote:
> > Dear all,
> >
> > Just like to know if the netgraph code running 5.x SMP kernel requires
> > the GIANT lock?
>
> Netgraph has lovking  built into it but I have not
> had teh time yet to "thrown the switch" and run it without
> giant. (actually it would only have giant if the edge node that
> introduces the packet has giant, or if it's running
> as a net thread.)
>
> What is your graph like?
>
> > I have the netgraph doing bridging right now but the performance is
> > limited by the CPU (right now, it is something around 100k pkt/s in
> > 4-STABLE). Does adding another CPU together with upgrading to 5.x be of
> > any help? I guess the bottleneck right now is only one thread is
> > executing in interrupt context with GIANT being held. Am I right?
> >
> > _Michael
> >
> > _______________________________________________
> > freebsd-net@freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-net
> > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
>
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?014901c32bc9$4c7a9a30$650019ac>