--- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h @@ -818,6 +818,8 @@ struct sk_buff { #ifdef CONFIG_NET_CLS_ACT __u8 tc_skip_classify:1; __u8 tc_at_ingress:1; + + __u16 tc_verd_qca_nss; /* QCA NSS Qdisc Support */ #endif #ifdef CONFIG_NET_REDIRECT __u8 redirected:1; --- a/include/uapi/linux/pkt_cls.h +++ b/include/uapi/linux/pkt_cls.h @@ -687,4 +687,14 @@ enum { TCF_EM_OPND_LT }; +/* QCA NSS Qdisc Support - Start */ +#define _TC_MAKE32(x) ((x)) +#define _TC_MAKEMASK1(n) (_TC_MAKE32(1) << _TC_MAKE32(n)) + +#define TC_NCLS _TC_MAKEMASK1(8) +#define TC_NCLS_NSS _TC_MAKEMASK1(12) +#define SET_TC_NCLS_NSS(v) ( TC_NCLS_NSS | ((v) & ~TC_NCLS_NSS)) +#define CLR_TC_NCLS_NSS(v) ( (v) & ~TC_NCLS_NSS) +/* QCA NSS Qdisc Support - End */ + #endif