|
@@ -672,11 +672,12 @@ static bool iwl_mvm_reorder(struct iwl_mvm *mvm,
|
|
* If there was a significant jump in the nssn - adjust.
|
|
* If there was a significant jump in the nssn - adjust.
|
|
* If the SN is smaller than the NSSN it might need to first go into
|
|
* If the SN is smaller than the NSSN it might need to first go into
|
|
* the reorder buffer, in which case we just release up to it and the
|
|
* the reorder buffer, in which case we just release up to it and the
|
|
- * rest of the function will take of storing it and releasing up to the
|
|
|
|
- * nssn
|
|
|
|
|
|
+ * rest of the function will take care of storing it and releasing up to
|
|
|
|
+ * the nssn
|
|
*/
|
|
*/
|
|
if (!iwl_mvm_is_sn_less(nssn, buffer->head_sn + buffer->buf_size,
|
|
if (!iwl_mvm_is_sn_less(nssn, buffer->head_sn + buffer->buf_size,
|
|
- buffer->buf_size)) {
|
|
|
|
|
|
+ buffer->buf_size) ||
|
|
|
|
+ !ieee80211_sn_less(sn, buffer->head_sn + buffer->buf_size)) {
|
|
u16 min_sn = ieee80211_sn_less(sn, nssn) ? sn : nssn;
|
|
u16 min_sn = ieee80211_sn_less(sn, nssn) ? sn : nssn;
|
|
|
|
|
|
iwl_mvm_release_frames(mvm, sta, napi, buffer, min_sn);
|
|
iwl_mvm_release_frames(mvm, sta, napi, buffer, min_sn);
|