Hi, Anybody has tried disabling MAC_CAPAB_RINGS feature. Is this a must feature to have in our driver for OpenSolaris stack to work? Or we can still live without this ? regards, ~Reang. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/crossbow-discuss/attachments/20091023/0a74b6ef/attachment.html>
Gireesh Nagabhushana
2009-Oct-23 14:31 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
Why do you want to disable it? -- Gireesh On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote:> Hi, > > Anybody has tried disabling MAC_CAPAB_RINGS feature. > Is this a must feature to have in our driver for OpenSolaris stack to > work? Or we can still live without this ? > > regards, > ~Reang. > _______________________________________________ > driver-discuss mailing list > driver-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/driver-discuss
Reang Su
2009-Oct-23 14:57 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
I''m trying to check performance with and without dynamic poll(legacy) feature in OpenSolaris. Can anybody know what could be the easiest way ? regards, ~Surjit. On Fri, Oct 23, 2009 at 8:01 PM, Gireesh Nagabhushana <dngireesh at gmail.com>wrote:> Why do you want to disable it? > > -- Gireesh > > > On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote: > > Hi, > > > > Anybody has tried disabling MAC_CAPAB_RINGS feature. > > Is this a must feature to have in our driver for OpenSolaris stack to > > work? Or we can still live without this ? > > > > regards, > > ~Reang. > > _______________________________________________ > > driver-discuss mailing list > > driver-discuss at opensolaris.org > > http://mail.opensolaris.org/mailman/listinfo/driver-discuss > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/crossbow-discuss/attachments/20091023/86b064db/attachment.html>
Sunay Tripathi
2009-Oct-23 17:04 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
It depends on the NIC. If you are using anything other than nxge, just create a VNIC (don''t plumb it) and polling on primary NIC will get disabled. This is a bug that is being fixed but right now the easiest way. Cheers, Sunay Reang Su wrote:> I''m trying to check performance with and without dynamic poll(legacy) > feature in OpenSolaris. > > Can anybody know what could be the easiest way ? > > regards, > ~Surjit. > > On Fri, Oct 23, 2009 at 8:01 PM, Gireesh Nagabhushana > <dngireesh at gmail.com <mailto:dngireesh at gmail.com>> wrote: > > Why do you want to disable it? > > -- Gireesh > > > On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote: > > Hi, > > > > Anybody has tried disabling MAC_CAPAB_RINGS feature. > > Is this a must feature to have in our driver for OpenSolaris stack to > > work? Or we can still live without this ? > > > > regards, > > ~Reang. > > _______________________________________________ > > driver-discuss mailing list > > driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org> > > http://mail.opensolaris.org/mailman/listinfo/driver-discuss > > > > ------------------------------------------------------------------------ > > _______________________________________________ > crossbow-discuss mailing list > crossbow-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/crossbow-discuss-- Sunay Tripathi Distinguished Engineer Solaris Core Operating System Sun MicroSystems Inc. Solaris Networking: http://www.opensolaris.org/os/community/networking Project Crossbow: http://www.opensolaris.org/os/project/crossbow
Reang Su
2009-Oct-23 21:09 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
Ok, Is there any other way from driver writer''s perspective to disable it? What will happen if I only use mac_rx() instead of mac_rx_ring() ? Please shed some light on its difference? Thanks a lot. ~Reang. On Fri, Oct 23, 2009 at 10:34 PM, Sunay Tripathi <Sunay.Tripathi at sun.com>wrote:> It depends on the NIC. If you are using anything other than nxge, just > create a VNIC (don''t plumb it) and polling on primary NIC will get > disabled. This is a bug that is being fixed but right now the > easiest way. > > Cheers, > Sunay > > Reang Su wrote: > >> I''m trying to check performance with and without dynamic poll(legacy) >> feature in OpenSolaris. >> >> Can anybody know what could be the easiest way ? >> >> regards, >> ~Surjit. >> >> On Fri, Oct 23, 2009 at 8:01 PM, Gireesh Nagabhushana < >> dngireesh at gmail.com <mailto:dngireesh at gmail.com>> wrote: >> >> Why do you want to disable it? >> >> -- Gireesh >> >> >> On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote: >> > Hi, >> > >> > Anybody has tried disabling MAC_CAPAB_RINGS feature. >> > Is this a must feature to have in our driver for OpenSolaris stack >> to >> > work? Or we can still live without this ? >> > >> > regards, >> > ~Reang. >> > _______________________________________________ >> > driver-discuss mailing list >> > driver-discuss at opensolaris.org >> <mailto:driver-discuss at opensolaris.org> >> >> > http://mail.opensolaris.org/mailman/listinfo/driver-discuss >> >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> crossbow-discuss mailing list >> crossbow-discuss at opensolaris.org >> http://mail.opensolaris.org/mailman/listinfo/crossbow-discuss >> > > > -- > Sunay Tripathi > Distinguished Engineer > Solaris Core Operating System > Sun MicroSystems Inc. > > Solaris Networking: http://www.opensolaris.org/os/community/networking > Project Crossbow: http://www.opensolaris.org/os/project/crossbow > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/crossbow-discuss/attachments/20091024/ce4fca4d/attachment.html>
Sunay Tripathi
2009-Oct-23 21:44 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
You can read the code :) But seriously, if polling was not buying us anything, why would we have done it. The typical mac_rx path means that packets are processed in a interrupt only context and if a CPU can keep up, then you should be OK. Its totally dependent on packets per second rate. So even on 1 Gb NIC, with smaller packets, todays CPUs can''t keep up. This is where polling along with packet chaining makes a big difference. Read the Sigcomm papers we have to understand why we need it (they are on crossbow opensolaris docs page). Thats just the performance side. Then you add the virtualization side where packets for a VM need to be isolated from otehr VMs and processed on the correct CPU etc etc and again by exposing rings to MAC is allowing polling to kick in is how we control things. To make long story short, if you are writing a driver which is not dealing with high performance or going to be deployed in virtualized scenarios etc, then you don''t need to expose Rx rings and can just use the mac_rx interface. HTH, Sunay Reang Su wrote:> > Ok, Is there any other way from driver writer''s perspective to disable it? > > What will happen if I only use mac_rx() instead of mac_rx_ring() ? > Please shed some light on its difference? > > Thanks a lot. > > ~Reang. > On Fri, Oct 23, 2009 at 10:34 PM, Sunay Tripathi <Sunay.Tripathi at sun.com > <mailto:Sunay.Tripathi at sun.com>> wrote: > > It depends on the NIC. If you are using anything other than nxge, just > create a VNIC (don''t plumb it) and polling on primary NIC will get > disabled. This is a bug that is being fixed but right now the > easiest way. > > Cheers, > Sunay > > Reang Su wrote: > > I''m trying to check performance with and without dynamic > poll(legacy) feature in OpenSolaris. > > Can anybody know what could be the easiest way ? > > regards, > ~Surjit. > > On Fri, Oct 23, 2009 at 8:01 PM, Gireesh Nagabhushana > <dngireesh at gmail.com <mailto:dngireesh at gmail.com> > <mailto:dngireesh at gmail.com <mailto:dngireesh at gmail.com>>> wrote: > > Why do you want to disable it? > > -- Gireesh > > > On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote: > > Hi, > > > > Anybody has tried disabling MAC_CAPAB_RINGS feature. > > Is this a must feature to have in our driver for > OpenSolaris stack to > > work? Or we can still live without this ? > > > > regards, > > ~Reang. > > _______________________________________________ > > driver-discuss mailing list > > driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org> > <mailto:driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org>> > > > http://mail.opensolaris.org/mailman/listinfo/driver-discuss > > > > ------------------------------------------------------------------------ > > _______________________________________________ > crossbow-discuss mailing list > crossbow-discuss at opensolaris.org > <mailto:crossbow-discuss at opensolaris.org> > http://mail.opensolaris.org/mailman/listinfo/crossbow-discuss > > > > -- > Sunay Tripathi > Distinguished Engineer > Solaris Core Operating System > Sun MicroSystems Inc. > > Solaris Networking: > http://www.opensolaris.org/os/community/networking > Project Crossbow: http://www.opensolaris.org/os/project/crossbow > > >-- Sunay Tripathi Distinguished Engineer Solaris Core Operating System Sun MicroSystems Inc. Solaris Networking: http://www.opensolaris.org/os/community/networking Project Crossbow: http://www.opensolaris.org/os/project/crossbow
Reang Su
2009-Oct-26 13:04 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
Sunay, I''m in a strange situation. I modified my driver code to use only mac_rx() and didn''t export any Rx rings. Now the stack doesn''t respond on getting ping request from remote. snoop on SUT shows all packets received from remote but it doesn''t show any response to remote. Am I missing something ? Thanks, ~Reang. On Sat, Oct 24, 2009 at 3:14 AM, Sunay Tripathi <Sunay.Tripathi at sun.com>wrote:> You can read the code :) But seriously, if polling was not buying us > anything, why would we have done it. The typical mac_rx path means that > packets are processed in a interrupt only context and if a CPU can keep > up, then you should be OK. Its totally dependent on packets per second > rate. So even on 1 Gb NIC, with smaller packets, todays CPUs can''t keep > up. This is where polling along with packet chaining makes a big > difference. Read the Sigcomm papers we have to understand why we need > it (they are on crossbow opensolaris docs page). Thats just the > performance side. Then you add the virtualization side where packets > for a VM need to be isolated from otehr VMs and processed on the > correct CPU etc etc and again by exposing rings to MAC is allowing > polling to kick in is how we control things. > > To make long story short, if you are writing a driver which is not > dealing with high performance or going to be deployed in virtualized > scenarios etc, then you don''t need to expose Rx rings and can just > use the mac_rx interface. > > HTH, > Sunay > > > Reang Su wrote: > >> >> Ok, Is there any other way from driver writer''s perspective to disable it? >> What will happen if I only use mac_rx() instead of mac_rx_ring() ? >> Please shed some light on its difference? >> Thanks a lot. >> ~Reang. >> On Fri, Oct 23, 2009 at 10:34 PM, Sunay Tripathi <Sunay.Tripathi at sun.com<mailto: >> Sunay.Tripathi at sun.com>> wrote: >> >> It depends on the NIC. If you are using anything other than nxge, just >> create a VNIC (don''t plumb it) and polling on primary NIC will get >> disabled. This is a bug that is being fixed but right now the >> easiest way. >> >> Cheers, >> Sunay >> >> Reang Su wrote: >> >> I''m trying to check performance with and without dynamic >> poll(legacy) feature in OpenSolaris. >> >> Can anybody know what could be the easiest way ? >> >> regards, >> ~Surjit. >> >> On Fri, Oct 23, 2009 at 8:01 PM, Gireesh Nagabhushana >> <dngireesh at gmail.com <mailto:dngireesh at gmail.com> >> <mailto:dngireesh at gmail.com <mailto:dngireesh at gmail.com>>> wrote: >> >> Why do you want to disable it? >> >> -- Gireesh >> >> >> On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote: >> > Hi, >> > >> > Anybody has tried disabling MAC_CAPAB_RINGS feature. >> > Is this a must feature to have in our driver for >> OpenSolaris stack to >> > work? Or we can still live without this ? >> > >> > regards, >> > ~Reang. >> > _______________________________________________ >> > driver-discuss mailing list >> > driver-discuss at opensolaris.org >> <mailto:driver-discuss at opensolaris.org> >> <mailto:driver-discuss at opensolaris.org >> <mailto:driver-discuss at opensolaris.org>> >> >> > http://mail.opensolaris.org/mailman/listinfo/driver-discuss >> >> >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> crossbow-discuss mailing list >> crossbow-discuss at opensolaris.org >> <mailto:crossbow-discuss at opensolaris.org> >> >> http://mail.opensolaris.org/mailman/listinfo/crossbow-discuss >> >> >> >> -- Sunay Tripathi >> Distinguished Engineer >> Solaris Core Operating System >> Sun MicroSystems Inc. >> >> Solaris Networking: >> http://www.opensolaris.org/os/community/networking >> Project Crossbow: http://www.opensolaris.org/os/project/crossbow >> >> >> >> > > -- > Sunay Tripathi > Distinguished Engineer > Solaris Core Operating System > Sun MicroSystems Inc. > > Solaris Networking: http://www.opensolaris.org/os/community/networking > Project Crossbow: http://www.opensolaris.org/os/project/crossbow > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/crossbow-discuss/attachments/20091026/391c26e1/attachment.html>
Sunay Tripathi
2009-Oct-26 16:31 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
Reang, Hard to say without looking at code but it shouldn''t be just because you are using mac_rx(). Have a look at some of the wifi drivers (pcan) or rtls driver. They are just using the mac_rx() paths. Cheers, Sunay Reang Su wrote:> Sunay, > > I''m in a strange situation. I modified my driver code to use only > mac_rx() and didn''t export any Rx rings. > Now the stack doesn''t respond on getting ping request from remote. > snoop on SUT shows all packets received from remote but it doesn''t show > any response to remote. > > Am I missing something ? > > Thanks, > ~Reang. > > On Sat, Oct 24, 2009 at 3:14 AM, Sunay Tripathi <Sunay.Tripathi at sun.com > <mailto:Sunay.Tripathi at sun.com>> wrote: > > You can read the code :) But seriously, if polling was not buying us > anything, why would we have done it. The typical mac_rx path means that > packets are processed in a interrupt only context and if a CPU can keep > up, then you should be OK. Its totally dependent on packets per second > rate. So even on 1 Gb NIC, with smaller packets, todays CPUs can''t keep > up. This is where polling along with packet chaining makes a big > difference. Read the Sigcomm papers we have to understand why we need > it (they are on crossbow opensolaris docs page). Thats just the > performance side. Then you add the virtualization side where packets > for a VM need to be isolated from otehr VMs and processed on the > correct CPU etc etc and again by exposing rings to MAC is allowing > polling to kick in is how we control things. > > To make long story short, if you are writing a driver which is not > dealing with high performance or going to be deployed in virtualized > scenarios etc, then you don''t need to expose Rx rings and can just > use the mac_rx interface. > > HTH, > Sunay > > > Reang Su wrote: > > > Ok, Is there any other way from driver writer''s perspective to > disable it? > What will happen if I only use mac_rx() instead of mac_rx_ring() ? > Please shed some light on its difference? > Thanks a lot. > ~Reang. > On Fri, Oct 23, 2009 at 10:34 PM, Sunay Tripathi > <Sunay.Tripathi at sun.com <mailto:Sunay.Tripathi at sun.com> > <mailto:Sunay.Tripathi at sun.com <mailto:Sunay.Tripathi at sun.com>>> > wrote: > > It depends on the NIC. If you are using anything other than > nxge, just > create a VNIC (don''t plumb it) and polling on primary NIC > will get > disabled. This is a bug that is being fixed but right now the > easiest way. > > Cheers, > Sunay > > Reang Su wrote: > > I''m trying to check performance with and without dynamic > poll(legacy) feature in OpenSolaris. > > Can anybody know what could be the easiest way ? > > regards, > ~Surjit. > > On Fri, Oct 23, 2009 at 8:01 PM, Gireesh Nagabhushana > <dngireesh at gmail.com <mailto:dngireesh at gmail.com> > <mailto:dngireesh at gmail.com <mailto:dngireesh at gmail.com>> > <mailto:dngireesh at gmail.com <mailto:dngireesh at gmail.com> > <mailto:dngireesh at gmail.com <mailto:dngireesh at gmail.com>>>> wrote: > > Why do you want to disable it? > > -- Gireesh > > > On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote: > > Hi, > > > > Anybody has tried disabling MAC_CAPAB_RINGS feature. > > Is this a must feature to have in our driver for > OpenSolaris stack to > > work? Or we can still live without this ? > > > > regards, > > ~Reang. > > _______________________________________________ > > driver-discuss mailing list > > driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org> > <mailto:driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org>> > <mailto:driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org> > <mailto:driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org>>> > > > > http://mail.opensolaris.org/mailman/listinfo/driver-discuss > > > > > ------------------------------------------------------------------------ > > _______________________________________________ > crossbow-discuss mailing list > crossbow-discuss at opensolaris.org > <mailto:crossbow-discuss at opensolaris.org> > <mailto:crossbow-discuss at opensolaris.org > <mailto:crossbow-discuss at opensolaris.org>> > > http://mail.opensolaris.org/mailman/listinfo/crossbow-discuss > > > > -- Sunay Tripathi > Distinguished Engineer > Solaris Core Operating System > Sun MicroSystems Inc. > > Solaris Networking: > http://www.opensolaris.org/os/community/networking > Project Crossbow: > http://www.opensolaris.org/os/project/crossbow > > > > > > -- > Sunay Tripathi > Distinguished Engineer > Solaris Core Operating System > Sun MicroSystems Inc. > > Solaris Networking: > http://www.opensolaris.org/os/community/networking > Project Crossbow: http://www.opensolaris.org/os/project/crossbow > > >
Pavan Chandrashekar - Sun Microsystems
2009-Oct-29 04:03 UTC
[crossbow-discuss] [driver-discuss] Disabling MAC_CAPAB_RINGS
On 10/24/09 02:39, Reang Su wrote:> > Ok, Is there any other way from driver writer''s perspective to disable it? > > What will happen if I only use mac_rx() instead of mac_rx_ring() ? > Please shed some light on its difference?You can use max_rx() instead of mac_rx_ring(), but also be sure *not* to report to the mac layer about the rings capab [via mc_getcapab()]. There are still a lot of drivers in the ON gate that use mac_rx() over mac_rx_ring(). Just look for the symbol in the cross reference. HTH, Pavan> > Thanks a lot. > > ~Reang. > On Fri, Oct 23, 2009 at 10:34 PM, Sunay Tripathi <Sunay.Tripathi at sun.com > <mailto:Sunay.Tripathi at sun.com>> wrote: > > It depends on the NIC. If you are using anything other than nxge, just > create a VNIC (don''t plumb it) and polling on primary NIC will get > disabled. This is a bug that is being fixed but right now the > easiest way. > > Cheers, > Sunay > > Reang Su wrote: > > I''m trying to check performance with and without dynamic > poll(legacy) feature in OpenSolaris. > > Can anybody know what could be the easiest way ? > > regards, > ~Surjit. > > On Fri, Oct 23, 2009 at 8:01 PM, Gireesh Nagabhushana > <dngireesh at gmail.com <mailto:dngireesh at gmail.com> > <mailto:dngireesh at gmail.com <mailto:dngireesh at gmail.com>>> wrote: > > Why do you want to disable it? > > -- Gireesh > > > On Fri, 2009-10-23 at 18:00 +0530, Reang Su wrote: > > Hi, > > > > Anybody has tried disabling MAC_CAPAB_RINGS feature. > > Is this a must feature to have in our driver for > OpenSolaris stack to > > work? Or we can still live without this ? > > > > regards, > > ~Reang. > > _______________________________________________ > > driver-discuss mailing list > > driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org> > <mailto:driver-discuss at opensolaris.org > <mailto:driver-discuss at opensolaris.org>> > > > http://mail.opensolaris.org/mailman/listinfo/driver-discuss > > > > ------------------------------------------------------------------------ > > _______________________________________________ > crossbow-discuss mailing list > crossbow-discuss at opensolaris.org > <mailto:crossbow-discuss at opensolaris.org> > http://mail.opensolaris.org/mailman/listinfo/crossbow-discuss > > > > -- > Sunay Tripathi > Distinguished Engineer > Solaris Core Operating System > Sun MicroSystems Inc. > > Solaris Networking: > http://www.opensolaris.org/os/community/networking > Project Crossbow: http://www.opensolaris.org/os/project/crossbow > > > > > ------------------------------------------------------------------------ > > _______________________________________________ > driver-discuss mailing list > driver-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/driver-discuss