On Wed, 11 Apr 2018 13:55:11 -0700, Michael Chan wrote: > On Wed, Apr 11, 2018 at 1:50 PM, Andy Gospodarek wrote: > > On Wed, Apr 11, 2018 at 01:41:31PM -0700, Michael Chan wrote: > > True, but I'm not sure that tc_cls_common_offload is used in all cases. > > Take red_offload() as one of those. > > For Flower, we know we have the extack pointer in > tc_cls_common_offload struct and we can use it to set the netlink > error message. The point is that we don't have to modify > ndo_setup_tc().
Yes, the extack is actually only populated when skip_sw is specified to avoid warning users who don't care about offloads. Flower offloads don't go via .ndo_setup_tc but TC block callbacks. But one day we will hopefully find a reasonable way to pass extack to qdisc offloads as well.. FWIW your driver is actually already using extack under the veil of tc_cls_can_offload_and_chain0() :)