Erik Nordmark wrote:
> Sebastien Roy wrote:
>
>> Interfaces
>> ==========
>>
>> - mac_fastpath_disable()/mac_fastpath_enable() (Consolidation Private)
>
> Why can't those be project private? Presumably no MAC driver other that
> softmac should ever use this.
>
These are not used by softmac driver. They are used by mac clients. At this
point only the vnic driver will need to call these functions. But it could be
used by any MAC clients that don't work with fast-path.
>> /*
>> * Info and callbacks of legacy devices.
>> */
>> typedef struct mac_capab_legacy_s {
>> ...
>> int (*ml_fastpath_disable)(void *);
>> void (*ml_fastpath_enable)(void *);
>> boolean_t (*ml_active_set)(void *);
>> void (*ml_active_clear)(void *);
>> } mac_capab_legacy_t;
>>
>> The ml_fastpath_enable() and ml_fastpath_disable() callbacks will be
>> called as the result of first mac_fastpath_disable() and last
>> mac_fastpath_enable() request on a particular softMAC.
>
> Having them appear here means that the implementor of any MAC driver
> needs to understand whether or not they should implement those
> functions. Is there a way we can avoid them having to think about it
> given that only softmac will ever need to use this?
>
It is not true. Only a GLDv3 driver which supports MAC_CAPAB_LEGACY capability
needs to implement those callbacks, and softmac is the only GLDv3 driver
capable of MAC_CAPAB_LEGACY.
Thanks
- Cathy
> Erik
>
> _________________________________
> clearview-discuss mailing list
> clearview-discuss at opensolaris.org