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

qcacld-3.0: If NUD Failure not honored, restart the NUD tracking

When NUD FAILED event is sent by kernel, driver checks if this event
needs to be honored or not. If there is any active traffic, driver
will not honor NUD FAILED event and won't issue disconnect.
Currently, when NUD FAILED event is not honored, driver NUD state is
updated to NUD_NONE. This won't allow the further NUD FAILED event
processing in driver if received without NUD PROBE/NUD INCOMPLETE.

Reset the driver NUD state machine when NUD FAILED event
is not honored and restart NUD tracking.

Change-Id: I46826fdf60fc2f3543567c09ddc8574f119efd38
CRs-Fixed: 2583096
Alok Kumar 5 éve
szülő
commit
14affd5647
1 módosított fájl, 3 hozzáadás és 1 törlés
  1. 3 1
      core/hdd/src/wlan_hdd_nud_tracking.c

+ 3 - 1
core/hdd/src/wlan_hdd_nud_tracking.c

@@ -409,7 +409,9 @@ static void hdd_nud_process_failure_event(struct hdd_adapter *adapter)
 			qdf_sched_work(0, &adapter
 					->nud_tracking.nud_event_work);
 		} else {
-			hdd_nud_set_tracking(adapter, NUD_NONE, false);
+			hdd_debug("NUD_START [0x%x]", NUD_INCOMPLETE);
+			hdd_nud_capture_stats(adapter, NUD_INCOMPLETE);
+			hdd_nud_set_tracking(adapter, NUD_INCOMPLETE, true);
 		}
 	} else {
 		hdd_debug("NUD FAILED -> Current State [0x%x]", curr_state);