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?  If so, can
you simply say that instead?  Also, why?

> Proposal
> ========
> 
> This proposal gives administrative control over whether a MAC client
> should be hardware-based or not (RX and TX) and also allows them to
> specify the number of RX or TX rings that a MAC client needs, if it is
> hardware-based.
> 
> We introduce two properties for a link:
> 
>     rxringcnt: The number of RX rings needed.
>     txringcnt: The number of TX rings needed.
> 
> The values for these properties could be:
> 
>     0     : This link must not assigned any hardware rings of the
>             specified type.
> 
>     x > 0 : This link needs x rings.
> 
> 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?  I would think that unless
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?

How do I view the total number of hardware resources available on nxge0?
The above three lines only seem to show me what the clients are using.

-Seb


Reply via email to