On Mon, 2009-09-28 at 12:38 -0700, venugopal iyer wrote:
> Thanks, Seb.
> 
> On Mon, 28 Sep 2009, Sebastien Roy wrote:
> 
> > On Fri, 2009-09-18 at 12:29 -0700, Kais Belgaied wrote:
> >> Background
> >> ==========
> >>
> >> Project Crossbow (PSARC/2006/357) enables creating hardware-based MAC
> >> clients (some of these MAC clients are data links such as VNICs) both on
> >> the RX and TX side. We define hardware-based MAC clients as having 
> >> dedicated
> >> hardware resources; a RX hardware-based MAC client will have one or more RX
> >> ring for exclusive use while a TX hardware-based MAC client will have one 
> >> or
> >> more TX ring for exclusive use.  MAC clients that are not hardware-based
> >> (RX or TX) share hardware resources with other MAC clients, such MAC
> >> clients will not have any TX or RX rings exclusively reserved for them.
> >> MAC clients may be hardware-based on RX, but not on TX (and vice-versa).
> >
> > To me, that last sentence is essentially saying, "MAC clients may not be
> > hardware-based on both RX and TX".  Is that what you meant?
> 
> No. It was just to note that it *need* not be h/w on both. How about
> "MAC clients could be hardware based on either TX, RX, both or neither"
> or some such.

Yes, that would be more clear.

> >> If the property is not specified for a link, the system will attempt
> >> to maxmize the hardware resource utilization by making this MAC client
> >> hardware-based depending on rings availability.
> >
> > This is slightly ambiguous to me.  Does that mean that if I neglect to
> > override the default, that the first MAC client gets all of the hardware
> > resources while subsequent clients get none?
> 
> 
> That's not the case. Today, when we create a VNIC and don't specify the
> -H option we try to give it one ring (assuming we have free rings).
> That won't change, if we don't specify rxringcnt then we will try to
> give the new MAC client 1 ring and make it hardware based. We do
> this till there are free rings available. When there aren't any
> free rings, MAC clients that don't specify this property will be
> software based.

Okay, that's fine.  Please clarify that in the spec because your use of
the word "maximize" could imply differently.

> > I would think that unless
> i otherwise specified, a sensible default behavior would result in evenly
> > distributing resources among clients.
> >
> >> dladm show-phys will be modified to display the ring information on TX and
> >> RX.
> >>
> >> e.g:
> >>     # dladm show-phys -H nxge0
> >>     LINK         RINGTYPE RINGS                CLIENTS
> >>     nxge0        RX       0                    <mcast>
> >>     nxge0        TX       0,5                  vnic1
> >>     nxge0        RX       1-3                  vnic1
> >>
> >> which means vnic1 has exclusive use of 3 RX rings and 5 TX rings.
> >
> > I would interpret the above as "vnic1 has transmit rings 0 and
> > 5" (because of the comma), and "vnic1 has receive rings 1, 2, and
> > 3" (because of the hyphen).  Am I reading that right?
> 
> yes.

So it does not have access to 5 TX rings as you state, but rather 2.

> >
> > How do I view the total number of hardware resources available on nxge0?
> 
> the read-only rings property (rxringavailcnt, txringavailcnt) we are
> introducing is for that purpose.
> 
> let me know if I missed answering any of your questions.

Got it, thanks.

+1 from me.

-Seb


Reply via email to