Forráskód Böngészése

qcacld-3.0: Do not allocate LRO desc for flow greater than max range

HOST driver supports max LRO_DESC_POOL_SZ flows that can
be submitted to LRO manager. Currently there is no check
for flow greater than LRO_DESC_POOL_SZ and this is resulting
in invalid de-reference of hdd_lro_desc_entry.

Do not allocate LRO desc for flow greater than max range and
use normal rx path for flow greater than LRO_DESC_POOL_SZ.

Change-Id: I7f44c750afc78f5e044c9405dff30e729d3d28f3
CRs-Fixed: 1064624
(cherry picked from commit 2a8773e73b6c00edfcc621b4c1cba3bae677fb66)
Govind Singh 8 éve
szülő
commit
8c54d6cf0c
1 módosított fájl, 5 hozzáadás és 0 törlés
  1. 5 0
      core/hdd/src/wlan_hdd_lro.c

+ 5 - 0
core/hdd/src/wlan_hdd_lro.c

@@ -256,6 +256,11 @@ static int hdd_lro_desc_find(hdd_adapter_t *adapter,
 		return -ENOMEM;
 	}
 
+	if (list_empty(&entry->lro_node)) {
+		hdd_err("Reached max supported lro_desc range\n");
+		return -EINVAL;
+	}
+
 	list_del_init(&entry->lro_node);
 	qdf_spin_unlock_bh(&free_pool.lro_pool_lock);