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