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

Commit 75001bbc authored by Igor Mitsyanko's avatar Igor Mitsyanko Committed by Kalle Valo
Browse files

qtnfmac: do not initialize per-MAC data multiple times



Several members of pwr-MAC structure are re-initialized several times
together with per-VIF initialization. Fix that and simplify the code.

Signed-off-by: default avatarIgor Mitsyanko <igor.mitsyanko.os@quantenna.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 92246b12
Loading
Loading
Loading
Loading
+13 −10
Original line number Diff line number Diff line
@@ -370,6 +370,7 @@ static void qtnf_mac_scan_timeout(struct work_struct *work)
static struct qtnf_wmac *qtnf_core_mac_alloc(struct qtnf_bus *bus,
					     unsigned int macid)
{
	struct qtnf_vif *vif;
	struct wiphy *wiphy;
	struct qtnf_wmac *mac;
	unsigned int i;
@@ -382,18 +383,20 @@ static struct qtnf_wmac *qtnf_core_mac_alloc(struct qtnf_bus *bus,

	mac->macid = macid;
	mac->bus = bus;

	for (i = 0; i < QTNF_MAX_INTF; i++) {
		memset(&mac->iflist[i], 0, sizeof(struct qtnf_vif));
		mac->iflist[i].wdev.iftype = NL80211_IFTYPE_UNSPECIFIED;
		mac->iflist[i].mac = mac;
		mac->iflist[i].vifid = i;
		qtnf_sta_list_init(&mac->iflist[i].sta_list);
	mutex_init(&mac->mac_lock);
	INIT_DELAYED_WORK(&mac->scan_timeout, qtnf_mac_scan_timeout);
		mac->iflist[i].stats64 =
			netdev_alloc_pcpu_stats(struct pcpu_sw_netstats);
		if (!mac->iflist[i].stats64)

	for (i = 0; i < QTNF_MAX_INTF; i++) {
		vif = &mac->iflist[i];

		memset(vif, 0, sizeof(*vif));
		vif->wdev.iftype = NL80211_IFTYPE_UNSPECIFIED;
		vif->mac = mac;
		vif->vifid = i;
		qtnf_sta_list_init(&vif->sta_list);

		vif->stats64 = netdev_alloc_pcpu_stats(struct pcpu_sw_netstats);
		if (!vif->stats64)
			pr_warn("VIF%u.%u: per cpu stats allocation failed\n",
				macid, i);
	}