nss-packages: refresh patches

This commit is contained in:
Qosmio 2024-03-11 15:53:55 -04:00
parent 5463bc9633
commit c7c8de990f
16 changed files with 86 additions and 88 deletions

View File

@ -35,7 +35,7 @@
struct nss_mirred_tcf *act; struct nss_mirred_tcf *act;
@@ -239,8 +243,13 @@ static int nss_mirred_init(struct net *n @@ -239,8 +243,13 @@ static int nss_mirred_init(struct net *n
} }
if (!ret) { if (!ret) {
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 5, 0)) +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 5, 0))
ret = tcf_idr_create(tn, index, est, tc_act, &nss_mirred_act_ops, ret = tcf_idr_create(tn, index, est, tc_act, &nss_mirred_act_ops,
@ -49,7 +49,7 @@
return ret; return ret;
--- a/nss_qdisc/nss_bf.c --- a/nss_qdisc/nss_bf.c
+++ b/nss_qdisc/nss_bf.c +++ b/nss_qdisc/nss_bf.c
@@ -74,7 +74,7 @@ static inline struct nss_bf_class_data * @@ -70,7 +70,7 @@ static inline struct nss_bf_class_data *
*/ */
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) #if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0))
static int nss_bf_change_class(struct Qdisc *sch, u32 classid, u32 parentid, static int nss_bf_change_class(struct Qdisc *sch, u32 classid, u32 parentid,
@ -58,7 +58,7 @@
{ {
struct netlink_ext_ack *extack = NULL; struct netlink_ext_ack *extack = NULL;
#else #else
@@ -290,7 +290,11 @@ static void nss_bf_destroy_class(struct @@ -296,7 +296,11 @@ static void nss_bf_destroy_class(struct
* nss_bf_delete_class() * nss_bf_delete_class()
* Detaches a class from operation, but does not destroy it. * Detaches a class from operation, but does not destroy it.
*/ */
@ -72,7 +72,7 @@
struct nss_bf_class_data *cl = (struct nss_bf_class_data *)arg; struct nss_bf_class_data *cl = (struct nss_bf_class_data *)arg;
--- a/nss_qdisc/nss_htb.c --- a/nss_qdisc/nss_htb.c
+++ b/nss_qdisc/nss_htb.c +++ b/nss_qdisc/nss_htb.c
@@ -282,7 +282,7 @@ static int nss_htb_ppe_change_class(stru @@ -278,7 +278,7 @@ static int nss_htb_ppe_change_class(stru
*/ */
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) #if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0))
static int nss_htb_change_class(struct Qdisc *sch, u32 classid, u32 parentid, static int nss_htb_change_class(struct Qdisc *sch, u32 classid, u32 parentid,
@ -81,7 +81,7 @@
{ {
struct netlink_ext_ack *extack = NULL; struct netlink_ext_ack *extack = NULL;
#else #else
@@ -516,7 +516,11 @@ static void nss_htb_destroy_class(struct @@ -522,7 +522,11 @@ static void nss_htb_destroy_class(struct
* nss_htb_delete_class() * nss_htb_delete_class()
* Detaches a class from operation, but does not destroy it. * Detaches a class from operation, but does not destroy it.
*/ */
@ -95,12 +95,12 @@
struct nss_htb_class_data *cl = (struct nss_htb_class_data *)arg; struct nss_htb_class_data *cl = (struct nss_htb_class_data *)arg;
--- a/nss_qdisc/nss_qdisc.c --- a/nss_qdisc/nss_qdisc.c
+++ b/nss_qdisc/nss_qdisc.c +++ b/nss_qdisc/nss_qdisc.c
@@ -1140,15 +1140,16 @@ unsigned int nss_qdisc_drop(struct Qdisc @@ -1144,15 +1144,16 @@ unsigned int nss_qdisc_drop(struct Qdisc
{ {
struct nss_qdisc *nq = qdisc_priv(sch); struct nss_qdisc *nq = qdisc_priv(sch);
unsigned int ret; unsigned int ret;
+ struct sk_buff *to_free = qdisc_peek_head(sch); + struct sk_buff *to_free = qdisc_peek_head(sch);
if (!nq->is_virtual) { if (!nq->is_virtual) {
- ret = __qdisc_queue_drop_head(sch, &sch->q); - ret = __qdisc_queue_drop_head(sch, &sch->q);
+ ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free); + ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free);
@ -113,11 +113,11 @@
+ ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free); + ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free);
spin_unlock_bh(&nq->bounce_protection_lock); spin_unlock_bh(&nq->bounce_protection_lock);
} }
@@ -1209,10 +1210,10 @@ static bool nss_qdisc_iterate_fl(struct @@ -1206,10 +1207,10 @@ static bool nss_qdisc_iterate_fl(struct
return 0; return 0;
} }
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 4, 0)) -#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 4, 0))
- status = tc_classify(skb, tcf, &res, false); - status = tc_classify(skb, tcf, &res, false);
-#else -#else
@ -130,8 +130,8 @@
return 1; return 1;
--- a/nss_qdisc/nss_wrr.c --- a/nss_qdisc/nss_wrr.c
+++ b/nss_qdisc/nss_wrr.c +++ b/nss_qdisc/nss_wrr.c
@@ -229,7 +229,7 @@ static int nss_wrr_ppe_change_class(stru @@ -230,7 +230,7 @@ static int nss_wrr_ppe_change_class(stru
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) #if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0))
static int nss_wrr_change_class(struct Qdisc *sch, u32 classid, u32 parentid, static int nss_wrr_change_class(struct Qdisc *sch, u32 classid, u32 parentid,
- struct nlattr **tca, unsigned long *arg) - struct nlattr **tca, unsigned long *arg)
@ -139,10 +139,10 @@
{ {
struct netlink_ext_ack *extack = NULL; struct netlink_ext_ack *extack = NULL;
#else #else
@@ -400,7 +400,11 @@ failure: @@ -406,7 +406,11 @@ failure:
return -EINVAL; return -EINVAL;
} }
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 12, 0)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 12, 0))
+static int nss_wrr_delete_class(struct Qdisc *sch, unsigned long arg, struct netlink_ext_ack *extack) +static int nss_wrr_delete_class(struct Qdisc *sch, unsigned long arg, struct netlink_ext_ack *extack)
+#else +#else

View File

@ -1,6 +1,6 @@
--- a/vlan/nss_vlan_mgr.c --- a/vlan/nss_vlan_mgr.c
+++ b/vlan/nss_vlan_mgr.c +++ b/vlan/nss_vlan_mgr.c
@@ -800,8 +800,10 @@ static struct nss_vlan_pvt *nss_vlan_mgr @@ -821,8 +821,10 @@ static struct nss_vlan_pvt *nss_vlan_mgr
*/ */
static void nss_vlan_mgr_instance_free(struct nss_vlan_pvt *v) static void nss_vlan_mgr_instance_free(struct nss_vlan_pvt *v)
{ {
@ -11,7 +11,7 @@
spin_lock(&vlan_mgr_ctx.lock); spin_lock(&vlan_mgr_ctx.lock);
BUG_ON(--v->refs); BUG_ON(--v->refs);
@@ -961,8 +963,11 @@ static int nss_vlan_mgr_register_event(s @@ -980,8 +982,11 @@ static int nss_vlan_mgr_register_event(s
int ret; int ret;
#endif #endif
uint32_t vlan_tag; uint32_t vlan_tag;

View File

@ -1,6 +1,6 @@
--- a/bridge/nss_bridge_mgr.c --- a/bridge/nss_bridge_mgr.c
+++ b/bridge/nss_bridge_mgr.c +++ b/bridge/nss_bridge_mgr.c
@@ -1098,8 +1098,10 @@ int nss_bridge_mgr_register_br(struct ne @@ -1062,8 +1062,10 @@ int nss_bridge_mgr_register_br(struct ne
*/ */
b_pvt->ifnum = ifnum; b_pvt->ifnum = ifnum;
b_pvt->mtu = dev->mtu; b_pvt->mtu = dev->mtu;
@ -11,7 +11,7 @@
ether_addr_copy(b_pvt->dev_addr, dev->dev_addr); ether_addr_copy(b_pvt->dev_addr, dev->dev_addr);
spin_lock(&br_mgr_ctx.lock); spin_lock(&br_mgr_ctx.lock);
list_add(&b_pvt->list, &br_mgr_ctx.list); list_add(&b_pvt->list, &br_mgr_ctx.list);
@@ -1165,6 +1167,7 @@ static int nss_bridge_mgr_bond_slave_cha @@ -1125,6 +1127,7 @@ static int nss_bridge_mgr_bond_slave_cha
return NOTIFY_DONE; return NOTIFY_DONE;
} }
@ -19,7 +19,7 @@
/* /*
* Add or remove the slave based based on linking event * Add or remove the slave based based on linking event
*/ */
@@ -1179,6 +1182,7 @@ static int nss_bridge_mgr_bond_slave_cha @@ -1139,6 +1142,7 @@ static int nss_bridge_mgr_bond_slave_cha
cu_info->upper_dev->name, master->name); cu_info->upper_dev->name, master->name);
} }
} }

View File

@ -1,6 +1,6 @@
--- a/tunipip6/nss_connmgr_tunipip6.c --- a/tunipip6/nss_connmgr_tunipip6.c
+++ b/tunipip6/nss_connmgr_tunipip6.c +++ b/tunipip6/nss_connmgr_tunipip6.c
@@ -258,7 +258,7 @@ static void nss_tunipip6_decap_exception @@ -257,7 +257,7 @@ static void nss_tunipip6_decap_exception
struct iphdr *iph; struct iphdr *iph;
struct rtable *rt; struct rtable *rt;
int cpu; int cpu;

View File

@ -75,7 +75,7 @@
dev->stats.rx_dropped += nss_cmn_rx_dropped_sum(stats); dev->stats.rx_dropped += nss_cmn_rx_dropped_sum(stats);
--- a/tunipip6/nss_connmgr_tunipip6.c --- a/tunipip6/nss_connmgr_tunipip6.c
+++ b/tunipip6/nss_connmgr_tunipip6.c +++ b/tunipip6/nss_connmgr_tunipip6.c
@@ -354,11 +354,11 @@ static void nss_tunipip6_update_dev_stat @@ -353,11 +353,11 @@ static void nss_tunipip6_update_dev_stat
memset(&stats, 0, sizeof(stats)); memset(&stats, 0, sizeof(stats));
if (interface_type == NSS_DYNAMIC_INTERFACE_TYPE_TUNIPIP6_INNER) { if (interface_type == NSS_DYNAMIC_INTERFACE_TYPE_TUNIPIP6_INNER) {

View File

@ -27,7 +27,7 @@
if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) { if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) {
nss_wifi_meshmgr_warn("%px: Failed to dealloc encap: %d\n", &wmgr_ctx, nss_status); nss_wifi_meshmgr_warn("%px: Failed to dealloc encap: %d\n", &wmgr_ctx, nss_status);
} }
@@ -249,10 +249,10 @@ static void nss_wifi_meshmgr_tx_msg_cb(v @@ -253,10 +253,10 @@ static void nss_wifi_meshmgr_tx_msg_cb(v
/* /*
* FIXME: The wmesh_ctx can be invalid if the memory goes away with the caller being timedout. * FIXME: The wmesh_ctx can be invalid if the memory goes away with the caller being timedout.
*/ */
@ -40,7 +40,7 @@
} }
complete(&wmesh_ctx->complete); complete(&wmesh_ctx->complete);
@@ -281,10 +281,10 @@ static nss_wifi_meshmgr_status_t nss_wif @@ -285,10 +285,10 @@ static nss_wifi_meshmgr_status_t nss_wif
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -53,7 +53,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
return status; return status;
} }
@@ -316,7 +316,7 @@ nss_wifi_meshmgr_status_t nss_wifi_meshm @@ -320,7 +320,7 @@ nss_wifi_meshmgr_status_t nss_wifi_meshm
return NSS_WIFI_MESHMGR_FAILURE; return NSS_WIFI_MESHMGR_FAILURE;
} }
@ -62,7 +62,7 @@
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
return nss_status; return nss_status;
} }
@@ -540,10 +540,10 @@ nss_wifi_meshmgr_dump_mesh_path_sync(nss @@ -544,10 +544,10 @@ nss_wifi_meshmgr_dump_mesh_path_sync(nss
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -75,7 +75,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -635,10 +635,10 @@ nss_wifi_meshmgr_dump_mesh_proxy_path_sy @@ -639,10 +639,10 @@ nss_wifi_meshmgr_dump_mesh_proxy_path_sy
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -88,7 +88,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -707,7 +707,7 @@ nss_wifi_meshmgr_assoc_link_vap(nss_wifi @@ -711,7 +711,7 @@ nss_wifi_meshmgr_assoc_link_vap(nss_wifi
/* /*
* Send the link vap mesage to the NSS synchronously. * Send the link vap mesage to the NSS synchronously.
*/ */
@ -97,7 +97,7 @@
if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) { if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) {
nss_wifi_meshmgr_warn("%px: Mesh link vap association failed: %d.\n", &wmgr_ctx, nss_status); nss_wifi_meshmgr_warn("%px: Mesh link vap association failed: %d.\n", &wmgr_ctx, nss_status);
} }
@@ -753,10 +753,10 @@ nss_wifi_meshmgr_assoc_link_vap_sync(nss @@ -757,10 +757,10 @@ nss_wifi_meshmgr_assoc_link_vap_sync(nss
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -110,7 +110,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -878,10 +878,10 @@ nss_wifi_meshmgr_mesh_config_update_sync @@ -882,10 +882,10 @@ nss_wifi_meshmgr_mesh_config_update_sync
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -123,7 +123,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -977,10 +977,10 @@ nss_wifi_meshmgr_mesh_proxy_path_delete_ @@ -981,10 +981,10 @@ nss_wifi_meshmgr_mesh_proxy_path_delete_
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -136,7 +136,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1076,10 +1076,10 @@ nss_wifi_meshmgr_mesh_proxy_path_update_ @@ -1080,10 +1080,10 @@ nss_wifi_meshmgr_mesh_proxy_path_update_
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -149,7 +149,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1175,10 +1175,10 @@ nss_wifi_meshmgr_mesh_proxy_path_add_syn @@ -1179,10 +1179,10 @@ nss_wifi_meshmgr_mesh_proxy_path_add_syn
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -162,7 +162,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1274,10 +1274,10 @@ nss_wifi_meshmgr_mesh_path_delete_sync(n @@ -1278,10 +1278,10 @@ nss_wifi_meshmgr_mesh_path_delete_sync(n
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -175,7 +175,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1373,10 +1373,10 @@ nss_wifi_meshmgr_mesh_path_add_sync(nss_ @@ -1377,10 +1377,10 @@ nss_wifi_meshmgr_mesh_path_add_sync(nss_
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -188,7 +188,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
return nss_status; return nss_status;
@@ -1471,10 +1471,10 @@ nss_wifi_meshmgr_mesh_path_update_sync(n @@ -1475,10 +1475,10 @@ nss_wifi_meshmgr_mesh_path_update_sync(n
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -201,7 +201,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1570,10 +1570,10 @@ nss_wifi_meshmgr_mesh_path_exception_syn @@ -1574,10 +1574,10 @@ nss_wifi_meshmgr_mesh_path_exception_syn
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -214,7 +214,7 @@
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1663,7 +1663,7 @@ nss_wifi_mesh_handle_t nss_wifi_meshmgr_ @@ -1791,7 +1791,7 @@ nss_wifi_mesh_handle_t nss_wifi_meshmgr_
int32_t encap_ifnum, decap_ifnum; int32_t encap_ifnum, decap_ifnum;
uint32_t features = 0; uint32_t features = 0;
nss_wifi_mesh_handle_t mesh_handle; nss_wifi_mesh_handle_t mesh_handle;

View File

@ -35,7 +35,7 @@
struct nss_mirred_tcf *act; struct nss_mirred_tcf *act;
@@ -239,8 +243,13 @@ static int nss_mirred_init(struct net *n @@ -239,8 +243,13 @@ static int nss_mirred_init(struct net *n
} }
if (!ret) { if (!ret) {
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 5, 0)) +#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 5, 0))
ret = tcf_idr_create(tn, index, est, tc_act, &nss_mirred_act_ops, ret = tcf_idr_create(tn, index, est, tc_act, &nss_mirred_act_ops,
@ -100,7 +100,7 @@
struct nss_qdisc *nq = qdisc_priv(sch); struct nss_qdisc *nq = qdisc_priv(sch);
unsigned int ret; unsigned int ret;
+ struct sk_buff *to_free = qdisc_peek_head(sch); + struct sk_buff *to_free = qdisc_peek_head(sch);
if (!nq->is_virtual) { if (!nq->is_virtual) {
- ret = __qdisc_queue_drop_head(sch, &sch->q); - ret = __qdisc_queue_drop_head(sch, &sch->q);
+ ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free); + ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free);
@ -113,11 +113,11 @@
+ ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free); + ret = __qdisc_queue_drop_head(sch, &sch->q, &to_free);
spin_unlock_bh(&nq->bounce_protection_lock); spin_unlock_bh(&nq->bounce_protection_lock);
} }
@@ -1209,10 +1210,10 @@ static bool nss_qdisc_iterate_fl(struct @@ -1209,10 +1210,10 @@ static bool nss_qdisc_iterate_fl(struct
return 0; return 0;
} }
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 4, 0)) -#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 4, 0))
- status = tc_classify(skb, tcf, &res, false); - status = tc_classify(skb, tcf, &res, false);
-#else -#else
@ -131,7 +131,7 @@
--- a/nss_qdisc/nss_wrr.c --- a/nss_qdisc/nss_wrr.c
+++ b/nss_qdisc/nss_wrr.c +++ b/nss_qdisc/nss_wrr.c
@@ -229,7 +229,7 @@ static int nss_wrr_ppe_change_class(stru @@ -229,7 +229,7 @@ static int nss_wrr_ppe_change_class(stru
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) #if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0))
static int nss_wrr_change_class(struct Qdisc *sch, u32 classid, u32 parentid, static int nss_wrr_change_class(struct Qdisc *sch, u32 classid, u32 parentid,
- struct nlattr **tca, unsigned long *arg) - struct nlattr **tca, unsigned long *arg)
@ -142,7 +142,7 @@
@@ -400,7 +400,11 @@ failure: @@ -400,7 +400,11 @@ failure:
return -EINVAL; return -EINVAL;
} }
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 12, 0)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 12, 0))
+static int nss_wrr_delete_class(struct Qdisc *sch, unsigned long arg, struct netlink_ext_ack *extack) +static int nss_wrr_delete_class(struct Qdisc *sch, unsigned long arg, struct netlink_ext_ack *extack)
+#else +#else

View File

@ -1,8 +1,6 @@
diff --git a/wifi_meshmgr/nss_wifi_meshmgr.c b/wifi_meshmgr/nss_wifi_meshmgr.c
index 498ed35..c8002c8 100644
--- a/wifi_meshmgr/nss_wifi_meshmgr.c --- a/wifi_meshmgr/nss_wifi_meshmgr.c
+++ b/wifi_meshmgr/nss_wifi_meshmgr.c +++ b/wifi_meshmgr/nss_wifi_meshmgr.c
@@ -49,7 +49,7 @@ static bool nss_wifi_meshmgr_verify_if_num(int32_t if_num, enum nss_dynamic_inte @@ -49,7 +49,7 @@ static bool nss_wifi_meshmgr_verify_if_n
*/ */
static nss_wifi_meshmgr_status_t nss_wifi_meshmgr_tx_msg(struct nss_wifi_mesh_msg *msg) static nss_wifi_meshmgr_status_t nss_wifi_meshmgr_tx_msg(struct nss_wifi_mesh_msg *msg)
{ {
@ -11,7 +9,7 @@ index 498ed35..c8002c8 100644
} }
/* /*
@@ -126,7 +126,7 @@ static void nss_wifi_meshmgr_cleanup(struct nss_wifi_meshmgr_mesh_ctx *wmesh_ctx @@ -126,7 +126,7 @@ static void nss_wifi_meshmgr_cleanup(str
* Unregister and dealloc decap DI. * Unregister and dealloc decap DI.
*/ */
nss_unregister_wifi_mesh_if(decap_ifnum); nss_unregister_wifi_mesh_if(decap_ifnum);
@ -20,7 +18,7 @@ index 498ed35..c8002c8 100644
if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) { if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) {
nss_wifi_meshmgr_warn("%px: Failed to dealloc decap: %d\n", &wmgr_ctx, nss_status); nss_wifi_meshmgr_warn("%px: Failed to dealloc decap: %d\n", &wmgr_ctx, nss_status);
} }
@@ -135,7 +135,7 @@ static void nss_wifi_meshmgr_cleanup(struct nss_wifi_meshmgr_mesh_ctx *wmesh_ctx @@ -135,7 +135,7 @@ static void nss_wifi_meshmgr_cleanup(str
* Unregister and dealloc encap DI. * Unregister and dealloc encap DI.
*/ */
nss_unregister_wifi_mesh_if(encap_ifnum); nss_unregister_wifi_mesh_if(encap_ifnum);
@ -29,7 +27,7 @@ index 498ed35..c8002c8 100644
if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) { if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) {
nss_wifi_meshmgr_warn("%px: Failed to dealloc encap: %d\n", &wmgr_ctx, nss_status); nss_wifi_meshmgr_warn("%px: Failed to dealloc encap: %d\n", &wmgr_ctx, nss_status);
} }
@@ -257,10 +257,10 @@ static void nss_wifi_meshmgr_tx_msg_cb(void *app_data, struct nss_cmn_msg *ncm) @@ -257,10 +257,10 @@ static void nss_wifi_meshmgr_tx_msg_cb(v
/* /*
* FIXME: The wmesh_ctx can be invalid if the memory goes away with the caller being timedout. * FIXME: The wmesh_ctx can be invalid if the memory goes away with the caller being timedout.
*/ */
@ -42,7 +40,7 @@ index 498ed35..c8002c8 100644
} }
complete(&wmesh_ctx->complete); complete(&wmesh_ctx->complete);
@@ -289,10 +289,10 @@ static nss_wifi_meshmgr_status_t nss_wifi_meshmgr_tx_msg_sync(struct nss_wifi_me @@ -289,10 +289,10 @@ static nss_wifi_meshmgr_status_t nss_wif
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -55,7 +53,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
return status; return status;
} }
@@ -324,7 +324,7 @@ nss_wifi_meshmgr_status_t nss_wifi_meshmgr_tx_buf(nss_wifi_mesh_handle_t mesh_ha @@ -324,7 +324,7 @@ nss_wifi_meshmgr_status_t nss_wifi_meshm
return NSS_WIFI_MESHMGR_FAILURE; return NSS_WIFI_MESHMGR_FAILURE;
} }
@ -64,7 +62,7 @@ index 498ed35..c8002c8 100644
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
return nss_status; return nss_status;
} }
@@ -548,10 +548,10 @@ nss_wifi_meshmgr_dump_mesh_path_sync(nss_wifi_mesh_handle_t mesh_handle) @@ -548,10 +548,10 @@ nss_wifi_meshmgr_dump_mesh_path_sync(nss
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -77,7 +75,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -643,10 +643,10 @@ nss_wifi_meshmgr_dump_mesh_proxy_path_sync(nss_wifi_mesh_handle_t mesh_handle) @@ -643,10 +643,10 @@ nss_wifi_meshmgr_dump_mesh_proxy_path_sy
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -90,7 +88,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -715,7 +715,7 @@ nss_wifi_meshmgr_assoc_link_vap(nss_wifi_mesh_handle_t mesh_handle, struct nss_w @@ -715,7 +715,7 @@ nss_wifi_meshmgr_assoc_link_vap(nss_wifi
/* /*
* Send the link vap mesage to the NSS synchronously. * Send the link vap mesage to the NSS synchronously.
*/ */
@ -99,7 +97,7 @@ index 498ed35..c8002c8 100644
if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) { if (nss_status != NSS_WIFI_MESHMGR_SUCCESS) {
nss_wifi_meshmgr_warn("%px: Mesh link vap association failed: %d.\n", &wmgr_ctx, nss_status); nss_wifi_meshmgr_warn("%px: Mesh link vap association failed: %d.\n", &wmgr_ctx, nss_status);
} }
@@ -761,10 +761,10 @@ nss_wifi_meshmgr_assoc_link_vap_sync(nss_wifi_mesh_handle_t mesh_handle, struct @@ -761,10 +761,10 @@ nss_wifi_meshmgr_assoc_link_vap_sync(nss
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -112,7 +110,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -886,10 +886,10 @@ nss_wifi_meshmgr_mesh_config_update_sync(nss_wifi_mesh_handle_t mesh_handle, str @@ -886,10 +886,10 @@ nss_wifi_meshmgr_mesh_config_update_sync
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -125,7 +123,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -985,10 +985,10 @@ nss_wifi_meshmgr_mesh_proxy_path_delete_sync(nss_wifi_mesh_handle_t mesh_handle, @@ -985,10 +985,10 @@ nss_wifi_meshmgr_mesh_proxy_path_delete_
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -138,7 +136,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1084,10 +1084,10 @@ nss_wifi_meshmgr_mesh_proxy_path_update_sync(nss_wifi_mesh_handle_t mesh_handle, @@ -1084,10 +1084,10 @@ nss_wifi_meshmgr_mesh_proxy_path_update_
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -151,7 +149,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1183,10 +1183,10 @@ nss_wifi_meshmgr_mesh_proxy_path_add_sync(nss_wifi_mesh_handle_t mesh_handle, st @@ -1183,10 +1183,10 @@ nss_wifi_meshmgr_mesh_proxy_path_add_syn
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -164,7 +162,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1282,10 +1282,10 @@ nss_wifi_meshmgr_mesh_path_delete_sync(nss_wifi_mesh_handle_t mesh_handle, struc @@ -1282,10 +1282,10 @@ nss_wifi_meshmgr_mesh_path_delete_sync(n
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -177,7 +175,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1381,10 +1381,10 @@ nss_wifi_meshmgr_mesh_path_add_sync(nss_wifi_mesh_handle_t mesh_handle, struct n @@ -1381,10 +1381,10 @@ nss_wifi_meshmgr_mesh_path_add_sync(nss_
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -190,7 +188,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
return nss_status; return nss_status;
@@ -1479,10 +1479,10 @@ nss_wifi_meshmgr_mesh_path_update_sync(nss_wifi_mesh_handle_t mesh_handle, struc @@ -1479,10 +1479,10 @@ nss_wifi_meshmgr_mesh_path_update_sync(n
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -203,7 +201,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1578,10 +1578,10 @@ nss_wifi_meshmgr_mesh_path_exception_sync(nss_wifi_mesh_handle_t mesh_handle,str @@ -1578,10 +1578,10 @@ nss_wifi_meshmgr_mesh_path_exception_syn
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -216,7 +214,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1702,10 +1702,10 @@ nss_wifi_meshmgr_config_mesh_exception_sync(nss_wifi_mesh_handle_t mesh_handle,s @@ -1702,10 +1702,10 @@ nss_wifi_meshmgr_config_mesh_exception_s
ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT)); ret = wait_for_completion_timeout(&wmesh_ctx->complete, msecs_to_jiffies(NSS_WIFI_MESH_TX_TIMEOUT));
if (!ret) { if (!ret) {
nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx); nss_wifi_meshmgr_warn("%px: WiFi mesh msg tx failed due to timeout\n", &wmgr_ctx);
@ -229,7 +227,7 @@ index 498ed35..c8002c8 100644
up(&wmesh_ctx->sem); up(&wmesh_ctx->sem);
nss_wifi_meshmgr_ref_dec(wmesh_ctx); nss_wifi_meshmgr_ref_dec(wmesh_ctx);
@@ -1795,7 +1795,7 @@ nss_wifi_mesh_handle_t nss_wifi_meshmgr_if_create_sync(struct net_device *dev, s @@ -1795,7 +1795,7 @@ nss_wifi_mesh_handle_t nss_wifi_meshmgr_
int32_t encap_ifnum, decap_ifnum; int32_t encap_ifnum, decap_ifnum;
uint32_t features = 0; uint32_t features = 0;
nss_wifi_mesh_handle_t mesh_handle; nss_wifi_mesh_handle_t mesh_handle;

View File

@ -14,7 +14,7 @@ Signed-off-by: Robert Marko <robert.marko@sartura.hr>
--- a/Makefile --- a/Makefile
+++ b/Makefile +++ b/Makefile
@@ -481,14 +481,7 @@ NSS_CCFLAGS = -DNSS_DT_SUPPORT=1 -DNSS_F @@ -510,14 +510,7 @@ NSS_CCFLAGS = -DNSS_DT_SUPPORT=1 -DNSS_F
ccflags-y += -I$(obj) ccflags-y += -I$(obj)
endif endif

View File

@ -1,6 +1,6 @@
--- a/exports/nss_wifili_if.h --- a/exports/nss_wifili_if.h
+++ b/exports/nss_wifili_if.h +++ b/exports/nss_wifili_if.h
@@ -1974,7 +1974,7 @@ nss_if_num_t nss_get_available_wifili_ex @@ -1994,7 +1994,7 @@ void nss_wifili_release_external_if(nss_
*/ */
uint8_t nss_wifili_thread_scheme_alloc(struct nss_ctx_instance *nss_ctx, uint8_t nss_wifili_thread_scheme_alloc(struct nss_ctx_instance *nss_ctx,
int32_t radio_ifnum, int32_t radio_ifnum,

View File

@ -27,7 +27,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
#error "Check skb recycle code in this file to match Linux version" #error "Check skb recycle code in this file to match Linux version"
#endif #endif
@@ -2578,7 +2580,7 @@ static inline bool nss_core_skb_can_reus @@ -2580,7 +2582,7 @@ static inline bool nss_core_skb_can_reus
if (unlikely(irqs_disabled())) if (unlikely(irqs_disabled()))
return false; return false;

View File

@ -30,7 +30,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
#include <nss_hal.h> #include <nss_hal.h>
#include <net/dst.h> #include <net/dst.h>
#ifdef CONFIG_BRIDGE_NETFILTER #ifdef CONFIG_BRIDGE_NETFILTER
@@ -450,50 +452,38 @@ static void nss_core_handle_crypto_pkt(s @@ -451,50 +453,38 @@ static void nss_core_handle_crypto_pkt(s
*/ */
static uint32_t nss_soc_mem_info(void) static uint32_t nss_soc_mem_info(void)
{ {

View File

@ -11,7 +11,7 @@
--- a/nss_hal/ipq50xx/nss_hal_pvt.c --- a/nss_hal/ipq50xx/nss_hal_pvt.c
+++ b/nss_hal/ipq50xx/nss_hal_pvt.c +++ b/nss_hal/ipq50xx/nss_hal_pvt.c
@@ -599,7 +599,7 @@ static int __nss_hal_request_irq(struct @@ -598,7 +598,7 @@ static int __nss_hal_request_irq(struct
return err; return err;
} }
@ -22,7 +22,7 @@
if (err) { if (err) {
--- a/nss_hal/ipq60xx/nss_hal_pvt.c --- a/nss_hal/ipq60xx/nss_hal_pvt.c
+++ b/nss_hal/ipq60xx/nss_hal_pvt.c +++ b/nss_hal/ipq60xx/nss_hal_pvt.c
@@ -615,62 +615,62 @@ static int __nss_hal_request_irq(struct @@ -614,62 +614,62 @@ static int __nss_hal_request_irq(struct
irq_set_status_flags(irq, IRQ_DISABLE_UNLAZY); irq_set_status_flags(irq, IRQ_DISABLE_UNLAZY);
if (irq_num == NSS_HAL_N2H_INTR_PURPOSE_EMPTY_BUFFER_SOS) { if (irq_num == NSS_HAL_N2H_INTR_PURPOSE_EMPTY_BUFFER_SOS) {
@ -97,7 +97,7 @@
--- a/nss_hal/ipq806x/nss_hal_pvt.c --- a/nss_hal/ipq806x/nss_hal_pvt.c
+++ b/nss_hal/ipq806x/nss_hal_pvt.c +++ b/nss_hal/ipq806x/nss_hal_pvt.c
@@ -1185,7 +1185,7 @@ static int __nss_hal_request_irq(struct @@ -1182,7 +1182,7 @@ static int __nss_hal_request_irq(struct
} }
int_ctx->irq = npd->irq[irq_num]; int_ctx->irq = npd->irq[irq_num];
@ -108,7 +108,7 @@
} }
--- a/nss_hal/ipq807x/nss_hal_pvt.c --- a/nss_hal/ipq807x/nss_hal_pvt.c
+++ b/nss_hal/ipq807x/nss_hal_pvt.c +++ b/nss_hal/ipq807x/nss_hal_pvt.c
@@ -659,62 +659,62 @@ static int __nss_hal_request_irq(struct @@ -656,62 +656,62 @@ static int __nss_hal_request_irq(struct
irq_set_status_flags(irq, IRQ_DISABLE_UNLAZY); irq_set_status_flags(irq, IRQ_DISABLE_UNLAZY);
if (irq_num == NSS_HAL_N2H_INTR_PURPOSE_EMPTY_BUFFER_SOS) { if (irq_num == NSS_HAL_N2H_INTR_PURPOSE_EMPTY_BUFFER_SOS) {
@ -191,4 +191,4 @@
+ netif_napi_add_weight(&nss_ctx->napi_ndev, &int_ctx->napi, napi_poll_cb, napi_wgt); + netif_napi_add_weight(&nss_ctx->napi_ndev, &int_ctx->napi, napi_poll_cb, napi_wgt);
int_ctx->cause = cause; int_ctx->cause = cause;
err = request_irq(irq, nss_hal_handle_irq, 0, irq_name, int_ctx); err = request_irq(irq, nss_hal_handle_irq, 0, irq_name, int_ctx);
if (err) { if (err) {

View File

@ -100,7 +100,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
ecm-$(ECM_CLASSIFIER_PCC_ENABLE) += ecm_classifier_pcc.o ecm-$(ECM_CLASSIFIER_PCC_ENABLE) += ecm_classifier_pcc.o
ccflags-$(ECM_CLASSIFIER_PCC_ENABLE) += -DECM_CLASSIFIER_PCC_ENABLE ccflags-$(ECM_CLASSIFIER_PCC_ENABLE) += -DECM_CLASSIFIER_PCC_ENABLE
@@ -372,27 +394,36 @@ ccflags-$(ECM_NON_PORTED_SUPPORT_ENABLE) @@ -376,27 +398,36 @@ ccflags-$(ECM_NON_PORTED_SUPPORT_ENABLE)
# ############################################################################# # #############################################################################
# Define ECM_STATE_OUTPUT_ENABLE=y to support XML state output # Define ECM_STATE_OUTPUT_ENABLE=y to support XML state output
# ############################################################################# # #############################################################################
@ -140,7 +140,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
ccflags-$(ECM_TRACKER_DPI_SUPPORT_ENABLE) += -DECM_TRACKER_DPI_SUPPORT_ENABLE ccflags-$(ECM_TRACKER_DPI_SUPPORT_ENABLE) += -DECM_TRACKER_DPI_SUPPORT_ENABLE
# ############################################################################# # #############################################################################
@@ -400,14 +431,18 @@ ccflags-$(ECM_TRACKER_DPI_SUPPORT_ENABLE @@ -404,14 +435,18 @@ ccflags-$(ECM_TRACKER_DPI_SUPPORT_ENABLE
# support for the database keeping lists of connections that are assigned # support for the database keeping lists of connections that are assigned
# on a per TYPE of classifier basis. # on a per TYPE of classifier basis.
# ############################################################################# # #############################################################################
@ -243,7 +243,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
--- a/ecm_interface.c --- a/ecm_interface.c
+++ b/ecm_interface.c +++ b/ecm_interface.c
@@ -1509,6 +1509,7 @@ struct neighbour *ecm_interface_ipv6_nei @@ -1506,6 +1506,7 @@ struct neighbour *ecm_interface_ipv6_nei
*/ */
bool ecm_interface_is_pptp(struct sk_buff *skb, const struct net_device *out) bool ecm_interface_is_pptp(struct sk_buff *skb, const struct net_device *out)
{ {
@ -251,7 +251,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
struct net_device *in; struct net_device *in;
/* /*
@@ -1533,6 +1534,7 @@ bool ecm_interface_is_pptp(struct sk_buf @@ -1530,6 +1531,7 @@ bool ecm_interface_is_pptp(struct sk_buf
} }
dev_put(in); dev_put(in);
@ -259,7 +259,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
return false; return false;
} }
@@ -1545,6 +1547,7 @@ bool ecm_interface_is_pptp(struct sk_buf @@ -1542,6 +1544,7 @@ bool ecm_interface_is_pptp(struct sk_buf
*/ */
bool ecm_interface_is_l2tp_packet_by_version(struct sk_buff *skb, const struct net_device *out, int ver) bool ecm_interface_is_l2tp_packet_by_version(struct sk_buff *skb, const struct net_device *out, int ver)
{ {
@ -267,7 +267,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
uint32_t flag = 0; uint32_t flag = 0;
struct net_device *in; struct net_device *in;
@@ -1577,6 +1580,7 @@ bool ecm_interface_is_l2tp_packet_by_ver @@ -1574,6 +1577,7 @@ bool ecm_interface_is_l2tp_packet_by_ver
} }
dev_put(in); dev_put(in);
@ -275,7 +275,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
return false; return false;
} }
@@ -1589,6 +1593,7 @@ bool ecm_interface_is_l2tp_packet_by_ver @@ -1586,6 +1590,7 @@ bool ecm_interface_is_l2tp_packet_by_ver
*/ */
bool ecm_interface_is_l2tp_pptp(struct sk_buff *skb, const struct net_device *out) bool ecm_interface_is_l2tp_pptp(struct sk_buff *skb, const struct net_device *out)
{ {
@ -283,7 +283,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
struct net_device *in; struct net_device *in;
/* /*
@@ -1611,6 +1616,7 @@ bool ecm_interface_is_l2tp_pptp(struct s @@ -1608,6 +1613,7 @@ bool ecm_interface_is_l2tp_pptp(struct s
} }
dev_put(in); dev_put(in);
@ -291,7 +291,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
return false; return false;
} }
@@ -7127,6 +7133,7 @@ static void ecm_interface_regenerate_con @@ -7124,6 +7130,7 @@ static void ecm_interface_regenerate_con
return; return;
} }
@ -299,7 +299,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
for (dir = 0; dir < ECM_DB_OBJ_DIR_MAX; dir++) { for (dir = 0; dir < ECM_DB_OBJ_DIR_MAX; dir++) {
/* /*
* Re-generate all connections associated with this interface * Re-generate all connections associated with this interface
@@ -7142,6 +7149,7 @@ static void ecm_interface_regenerate_con @@ -7139,6 +7146,7 @@ static void ecm_interface_regenerate_con
ci[dir] = cin; ci[dir] = cin;
} }
} }

View File

@ -1,6 +1,6 @@
--- a/ecm_interface.c --- a/ecm_interface.c
+++ b/ecm_interface.c +++ b/ecm_interface.c
@@ -3606,7 +3606,7 @@ identifier_update: @@ -3603,7 +3603,7 @@ identifier_update:
if (skb && (skb->skb_iif == dev->ifindex)) { if (skb && (skb->skb_iif == dev->ifindex)) {
struct pppol2tp_common_addr info; struct pppol2tp_common_addr info;
@ -9,7 +9,7 @@
DEBUG_TRACE("%px: Net device: %px is MULTILINK PPP - Unknown to the ECM\n", feci, dev); DEBUG_TRACE("%px: Net device: %px is MULTILINK PPP - Unknown to the ECM\n", feci, dev);
type_info.unknown.os_specific_ident = dev_interface_num; type_info.unknown.os_specific_ident = dev_interface_num;
@@ -3616,7 +3616,7 @@ identifier_update: @@ -3613,7 +3613,7 @@ identifier_update:
ii = ecm_interface_unknown_interface_establish(&type_info.unknown, dev_name, dev_interface_num, ae_interface_num, dev_mtu); ii = ecm_interface_unknown_interface_establish(&type_info.unknown, dev_name, dev_interface_num, ae_interface_num, dev_mtu);
return ii; return ii;
} }

View File

@ -1,6 +1,6 @@
--- a/frontends/include/ecm_front_end_common.h --- a/frontends/include/ecm_front_end_common.h
+++ b/frontends/include/ecm_front_end_common.h +++ b/frontends/include/ecm_front_end_common.h
@@ -332,15 +332,19 @@ static inline bool ecm_front_end_ppppoe_ @@ -339,15 +339,19 @@ static inline bool ecm_front_end_ppppoe_
fe_type = ecm_front_end_type_get(); fe_type = ecm_front_end_type_get();
switch (fe_type) { switch (fe_type) {
#ifdef ECM_FRONT_END_NSS_ENABLE #ifdef ECM_FRONT_END_NSS_ENABLE
@ -20,7 +20,7 @@
default: default:
DEBUG_TRACE("front end type: %d\n", fe_type); DEBUG_TRACE("front end type: %d\n", fe_type);
break; break;
@@ -362,15 +366,19 @@ static inline bool ecm_front_end_ppppoe_ @@ -369,15 +373,19 @@ static inline bool ecm_front_end_ppppoe_
fe_type = ecm_front_end_type_get(); fe_type = ecm_front_end_type_get();
switch (fe_type) { switch (fe_type) {
#ifdef ECM_FRONT_END_NSS_ENABLE #ifdef ECM_FRONT_END_NSS_ENABLE