Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e055a6e2 authored by John W. Linville's avatar John W. Linville
Browse files

Merge branch 'ath-current' of git://github.com/kvalo/ath

parents c6bff544 dfa413de
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -795,7 +795,11 @@ int ath10k_core_start(struct ath10k *ar)
	if (status)
		goto err_htc_stop;

	if (test_bit(ATH10K_FW_FEATURE_WMI_10X, ar->fw_features))
		ar->free_vdev_map = (1 << TARGET_10X_NUM_VDEVS) - 1;
	else
		ar->free_vdev_map = (1 << TARGET_NUM_VDEVS) - 1;

	INIT_LIST_HEAD(&ar->arvifs);

	if (!test_bit(ATH10K_FLAG_FIRST_BOOT_DONE, &ar->dev_flags))
+0 −18
Original line number Diff line number Diff line
@@ -312,7 +312,6 @@ static int ath10k_htt_rx_amsdu_pop(struct ath10k_htt *htt,
	int msdu_len, msdu_chaining = 0;
	struct sk_buff *msdu;
	struct htt_rx_desc *rx_desc;
	bool corrupted = false;

	lockdep_assert_held(&htt->rx_ring.lock);

@@ -439,9 +438,6 @@ static int ath10k_htt_rx_amsdu_pop(struct ath10k_htt *htt,
		last_msdu = __le32_to_cpu(rx_desc->msdu_end.info0) &
				RX_MSDU_END_INFO0_LAST_MSDU;

		if (msdu_chaining && !last_msdu)
			corrupted = true;

		if (last_msdu) {
			msdu->next = NULL;
			break;
@@ -456,20 +452,6 @@ static int ath10k_htt_rx_amsdu_pop(struct ath10k_htt *htt,
	if (*head_msdu == NULL)
		msdu_chaining = -1;

	/*
	 * Apparently FW sometimes reports weird chained MSDU sequences with
	 * more than one rx descriptor. This seems like a bug but needs more
	 * analyzing. For the time being fix it by dropping such sequences to
	 * avoid blowing up the host system.
	 */
	if (corrupted) {
		ath10k_warn("failed to pop chained msdus, dropping\n");
		ath10k_htt_rx_free_msdu_chain(*head_msdu);
		*head_msdu = NULL;
		*tail_msdu = NULL;
		msdu_chaining = -EINVAL;
	}

	/*
	 * Don't refill the ring yet.
	 *