2008/242 Data Fast-Path for Softmac
Cathy Zhou
Cathy.Zhou at sun.com
Mon Apr 7 20:18:45 PDT 2008
Darren Reed wrote:
> Sebastien Roy wrote:
> ...
>
>> Note that some GLDv3 features requires the GLDv3 DLS/MAC layer
>> processing to not be bypassed to assure its function correctness.
>> For example, softmac fast-path must be disabled to support GLDv3
>> VNIC functionality. As the result, we propose: By default, the
>> softmac fast-path mode will be used to assure the performance; MAC
>> clients will be able to request to disable the softmac fast-path
>> mode to support certain features, and if that succeeds, the system
>> will fallback to the existing softmac data-path model (called
>> slow-path).
>
>
> Does VNIC here only refer to the vni* interfaces or does
> it also to the VLAN network interfaces, such as ce132000?
>
No, the VNIC functionality here only refers to the VNICs required by the xVM
networking for now.
> Can the architecture of this project be changed or expanded
> to include dealing with the VNIC functionality problem?
>
I am not clear what your question is. Note that VNIC is going to be supported
on legacy device as part of this case. But once VNIC is configured, fastpath
will be disabled.
>
>> 2. For IP/ARP streams over a softMAC, softmac data fast-path
>> will be
>> used by default, unless fast-path is disabled by any MAC client
>> explicitly. The softmac module first identifies an IP/ARP
>> stream
>> by seeing whether there is a SIOCSLIFNAME ioctl sent from
>> upstream,
>> if there is one, this stream is either an IP or an ARP stream
>> and will use fast-path potentially;
>
>
> Why are you looking at the SIOCSLIFNAME ioctl rather than
> the bind? As defined, SIOCSLIFNAME does not appear to be
> IP specific at all, aside from our implementation and use.
>
I thought SIOCSLIFNAME is a private ioctl and should not be used by others
other than IP. Please correct me if I am wrong.
>
>> 4. When the softmac data fast-path is disabled by a MAC client
>> (e.g.,
>> by a VNIC), all the IP/ARP upper streams will try to switch
>> from
>> the fast-path to the slow-path.
>
> ...
> > 5. On the other hand, when the last MAC client cancels its
> fast-path
> > disable request, all the IP/ARP streams will try to switch
> back to
> > the fast-path mode;
>
>
> In both cases 4 & 5, what happens if they fail to switch over?
In case 4, mac_fastpath_disable() will return failure and whoever calls this
function (e.g., VNIC) should discontinue and fail the current operation too.
Case 5 is different as it does not matter if fastpath fails to be reenabled,
as it only affects performance.
This is described in mac_fastpath_disable()/mac_fastpath_enable() interface
section.
Thanks
- Cathy
>
> Darren
>
More information about the opensolaris-arc
mailing list