All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@01.org, Tamizh chelvam <tamizhr@codeaurora.org>
Cc: johannes@sipsolutions.net, linux-wireless@vger.kernel.org,
	kbuild-all@01.org, ath10k@lists.infradead.org
Subject: Re: [PATCHv3 8/9] ath10k: Add new api to support TID specific configuration
Date: Mon, 11 Mar 2019 10:02:07 +0300	[thread overview]
Message-ID: <20190311070207.GA2412@kadam> (raw)
In-Reply-To: <1551895251-22941-9-git-send-email-tamizhr@codeaurora.org>

Hi Tamizh,

url:    https://github.com/0day-ci/linux/commits/Tamizh-chelvam/cfg80211-mac80211-Add-support-for-TID-specific-configuration/20190308-195433
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git master

smatch warnings:
drivers/net/wireless/ath/ath10k/mac.c:8438 ath10k_mac_op_set_tid_config() error: uninitialized symbol 'ret'.

# https://github.com/0day-ci/linux/commit/2eab2d81c36efa0cf08b02bfe2df3f83a2e2d756
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout 2eab2d81c36efa0cf08b02bfe2df3f83a2e2d756
vim +/ret +8438 drivers/net/wireless/ath/ath10k/mac.c

6a7f8911 Anilkumar Kolli 2017-12-05  8306  
2eab2d81 Tamizh chelvam  2019-03-06  8307  static int ath10k_mac_op_set_tid_config(struct ieee80211_hw *hw,
2eab2d81 Tamizh chelvam  2019-03-06  8308  					struct ieee80211_vif *vif,
2eab2d81 Tamizh chelvam  2019-03-06  8309  					struct ieee80211_sta *sta,
2eab2d81 Tamizh chelvam  2019-03-06  8310  					struct ieee80211_tid_config *tid_config)
2eab2d81 Tamizh chelvam  2019-03-06  8311  {
2eab2d81 Tamizh chelvam  2019-03-06  8312  	struct ath10k *ar = hw->priv;
2eab2d81 Tamizh chelvam  2019-03-06  8313  	struct ath10k_vif *arvif = (void *)vif->drv_priv;
2eab2d81 Tamizh chelvam  2019-03-06  8314  	struct ath10k_mac_iter_tid_conf_data data = {};
2eab2d81 Tamizh chelvam  2019-03-06  8315  	struct wmi_per_peer_per_tid_cfg_arg arg = {};
2eab2d81 Tamizh chelvam  2019-03-06  8316  	int ret, i;
2eab2d81 Tamizh chelvam  2019-03-06  8317  	u8 changed;
2eab2d81 Tamizh chelvam  2019-03-06  8318  
2eab2d81 Tamizh chelvam  2019-03-06  8319  	mutex_lock(&ar->conf_mutex);
2eab2d81 Tamizh chelvam  2019-03-06  8320  	arg.vdev_id = arvif->vdev_id;
2eab2d81 Tamizh chelvam  2019-03-06  8321  
2eab2d81 Tamizh chelvam  2019-03-06  8322  	memset(arvif->tid_conf_changed, 0, sizeof(arvif->tid_conf_changed));
2eab2d81 Tamizh chelvam  2019-03-06  8323  
2eab2d81 Tamizh chelvam  2019-03-06  8324  	for (i = 0; i < tid_config->n_tid_conf; i++) {
2eab2d81 Tamizh chelvam  2019-03-06  8325  		if (tid_config->tid_conf[i].tid >= IEEE80211_TID_MAX)
2eab2d81 Tamizh chelvam  2019-03-06  8326  			continue;
                                                                ^^^^^^^^^
We would have to hit this continue over and over and "sta" would have
to be non-NULL for this to be an issue.

2eab2d81 Tamizh chelvam  2019-03-06  8327  
2eab2d81 Tamizh chelvam  2019-03-06  8328  		ath10k_mac_parse_tid_config(ar, sta, vif,
2eab2d81 Tamizh chelvam  2019-03-06  8329  					    &tid_config->tid_conf[i],
2eab2d81 Tamizh chelvam  2019-03-06  8330  					    &arg);
2eab2d81 Tamizh chelvam  2019-03-06  8331  		changed = tid_config->tid_conf[i].tid_conf_mask;
2eab2d81 Tamizh chelvam  2019-03-06  8332  		if (sta) {
2eab2d81 Tamizh chelvam  2019-03-06  8333  			if (!sta->wme) {
2eab2d81 Tamizh chelvam  2019-03-06  8334  				ret = -ENOTSUPP;
2eab2d81 Tamizh chelvam  2019-03-06  8335  				goto exit;
2eab2d81 Tamizh chelvam  2019-03-06  8336  			}
2eab2d81 Tamizh chelvam  2019-03-06  8337  
2eab2d81 Tamizh chelvam  2019-03-06  8338  			if (changed & IEEE80211_TID_CONF_RETRY) {
2eab2d81 Tamizh chelvam  2019-03-06  8339  				if (sta->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK ||
2eab2d81 Tamizh chelvam  2019-03-06  8340  				    vif->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK)
2eab2d81 Tamizh chelvam  2019-03-06  8341  					arg.retry_count = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8342  			}
2eab2d81 Tamizh chelvam  2019-03-06  8343  
2eab2d81 Tamizh chelvam  2019-03-06  8344  			if (changed & IEEE80211_TID_CONF_AMPDU) {
2eab2d81 Tamizh chelvam  2019-03-06  8345  				if (sta->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK ||
2eab2d81 Tamizh chelvam  2019-03-06  8346  				    vif->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK)
2eab2d81 Tamizh chelvam  2019-03-06  8347  					arg.aggr_control = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8348  			}
2eab2d81 Tamizh chelvam  2019-03-06  8349  
2eab2d81 Tamizh chelvam  2019-03-06  8350  			if (changed & IEEE80211_TID_CONF_TX_BITRATE) {
2eab2d81 Tamizh chelvam  2019-03-06  8351  				if (sta->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK ||
2eab2d81 Tamizh chelvam  2019-03-06  8352  				    vif->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK) {
2eab2d81 Tamizh chelvam  2019-03-06  8353  					arg.rate_ctrl = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8354  					arg.rcode_flags = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8355  				}
2eab2d81 Tamizh chelvam  2019-03-06  8356  			}
2eab2d81 Tamizh chelvam  2019-03-06  8357  
2eab2d81 Tamizh chelvam  2019-03-06  8358  			ether_addr_copy(arg.peer_macaddr.addr, sta->addr);
2eab2d81 Tamizh chelvam  2019-03-06  8359  			ret = ath10k_wmi_set_per_peer_per_tid_cfg(ar, &arg);
2eab2d81 Tamizh chelvam  2019-03-06  8360  			if (ret)
2eab2d81 Tamizh chelvam  2019-03-06  8361  				goto exit;
2eab2d81 Tamizh chelvam  2019-03-06  8362  
2eab2d81 Tamizh chelvam  2019-03-06  8363  			/* Store the configured parameters in success case */
2eab2d81 Tamizh chelvam  2019-03-06  8364  			if (changed & IEEE80211_TID_CONF_NOACK) {
2eab2d81 Tamizh chelvam  2019-03-06  8365  				if (tid_config->tid_conf[i].noack ==
2eab2d81 Tamizh chelvam  2019-03-06  8366  						NL80211_TID_CONFIG_DEFAULT) {
2eab2d81 Tamizh chelvam  2019-03-06  8367  					sta->noack[arg.tid] = -1;
2eab2d81 Tamizh chelvam  2019-03-06  8368  				} else {
2eab2d81 Tamizh chelvam  2019-03-06  8369  					sta->noack[arg.tid] = arg.ack_policy;
2eab2d81 Tamizh chelvam  2019-03-06  8370  				}
2eab2d81 Tamizh chelvam  2019-03-06  8371  
2eab2d81 Tamizh chelvam  2019-03-06  8372  				arg.ack_policy = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8373  				arg.aggr_control = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8374  				arg.rate_ctrl = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8375  				arg.rcode_flags = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8376  			}
2eab2d81 Tamizh chelvam  2019-03-06  8377  
2eab2d81 Tamizh chelvam  2019-03-06  8378  			if (changed & IEEE80211_TID_CONF_RETRY) {
2eab2d81 Tamizh chelvam  2019-03-06  8379  				if (tid_config->tid_conf[i].retry_long == -1) {
2eab2d81 Tamizh chelvam  2019-03-06  8380  					sta->retry_long[arg.tid] = -1;
2eab2d81 Tamizh chelvam  2019-03-06  8381  				} else {
2eab2d81 Tamizh chelvam  2019-03-06  8382  					sta->retry_long[arg.tid] = arg.retry_count;
2eab2d81 Tamizh chelvam  2019-03-06  8383  				}
2eab2d81 Tamizh chelvam  2019-03-06  8384  
2eab2d81 Tamizh chelvam  2019-03-06  8385  				arg.retry_count = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8386  			}
2eab2d81 Tamizh chelvam  2019-03-06  8387  
2eab2d81 Tamizh chelvam  2019-03-06  8388  			if (changed & IEEE80211_TID_CONF_AMPDU) {
2eab2d81 Tamizh chelvam  2019-03-06  8389  				if (tid_config->tid_conf[i].ampdu ==
2eab2d81 Tamizh chelvam  2019-03-06  8390  						NL80211_TID_CONFIG_DEFAULT) {
2eab2d81 Tamizh chelvam  2019-03-06  8391  					sta->ampdu[arg.tid] = -1;
2eab2d81 Tamizh chelvam  2019-03-06  8392  				} else {
2eab2d81 Tamizh chelvam  2019-03-06  8393  					sta->ampdu[arg.tid] = arg.aggr_control;
2eab2d81 Tamizh chelvam  2019-03-06  8394  				}
2eab2d81 Tamizh chelvam  2019-03-06  8395  
2eab2d81 Tamizh chelvam  2019-03-06  8396  				arg.aggr_control = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8397  			}
2eab2d81 Tamizh chelvam  2019-03-06  8398  
2eab2d81 Tamizh chelvam  2019-03-06  8399  			if (changed & IEEE80211_TID_CONF_TX_BITRATE) {
2eab2d81 Tamizh chelvam  2019-03-06  8400  				sta->rate_ctrl[arg.tid] = arg.rate_ctrl;
2eab2d81 Tamizh chelvam  2019-03-06  8401  				arg.rate_ctrl = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8402  				arg.rcode_flags = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8403  			}
2eab2d81 Tamizh chelvam  2019-03-06  8404  		} else {
2eab2d81 Tamizh chelvam  2019-03-06  8405  			arvif->tid_conf_changed[arg.tid] |= changed;
2eab2d81 Tamizh chelvam  2019-03-06  8406  
2eab2d81 Tamizh chelvam  2019-03-06  8407  			if (changed & IEEE80211_TID_CONF_NOACK) {
2eab2d81 Tamizh chelvam  2019-03-06  8408  				vif->noack[arg.tid] = arg.ack_policy;
2eab2d81 Tamizh chelvam  2019-03-06  8409  				vif->ampdu[arg.tid] = arg.aggr_control;
2eab2d81 Tamizh chelvam  2019-03-06  8410  				vif->rate_ctrl[arg.tid] = arg.rate_ctrl;
2eab2d81 Tamizh chelvam  2019-03-06  8411  			}
2eab2d81 Tamizh chelvam  2019-03-06  8412  
2eab2d81 Tamizh chelvam  2019-03-06  8413  			if (changed & IEEE80211_TID_CONF_RETRY)
2eab2d81 Tamizh chelvam  2019-03-06  8414  				vif->retry_long[arg.tid] = arg.retry_count;
2eab2d81 Tamizh chelvam  2019-03-06  8415  
2eab2d81 Tamizh chelvam  2019-03-06  8416  			if (changed & IEEE80211_TID_CONF_AMPDU)
2eab2d81 Tamizh chelvam  2019-03-06  8417  				vif->ampdu[arg.tid] = arg.aggr_control;
2eab2d81 Tamizh chelvam  2019-03-06  8418  
2eab2d81 Tamizh chelvam  2019-03-06  8419  			if (changed & IEEE80211_TID_CONF_TX_BITRATE) {
2eab2d81 Tamizh chelvam  2019-03-06  8420  				vif->rate_ctrl[arg.tid] = arg.rate_ctrl;
2eab2d81 Tamizh chelvam  2019-03-06  8421  				vif->rate_code[arg.tid] = arg.rcode_flags;
2eab2d81 Tamizh chelvam  2019-03-06  8422  			}
2eab2d81 Tamizh chelvam  2019-03-06  8423  		}
2eab2d81 Tamizh chelvam  2019-03-06  8424  	}
2eab2d81 Tamizh chelvam  2019-03-06  8425  
2eab2d81 Tamizh chelvam  2019-03-06  8426  	if (sta)
2eab2d81 Tamizh chelvam  2019-03-06  8427  		goto exit;
2eab2d81 Tamizh chelvam  2019-03-06  8428  
2eab2d81 Tamizh chelvam  2019-03-06  8429  	ret = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8430  	data.curr_vif = vif;
2eab2d81 Tamizh chelvam  2019-03-06  8431  	data.ar = ar;
2eab2d81 Tamizh chelvam  2019-03-06  8432  
2eab2d81 Tamizh chelvam  2019-03-06  8433  	ieee80211_iterate_stations_atomic(hw, ath10k_mac_vif_stations_tid_conf,
2eab2d81 Tamizh chelvam  2019-03-06  8434  					  &data);
2eab2d81 Tamizh chelvam  2019-03-06  8435  
2eab2d81 Tamizh chelvam  2019-03-06  8436  exit:
2eab2d81 Tamizh chelvam  2019-03-06  8437  	mutex_unlock(&ar->conf_mutex);
2eab2d81 Tamizh chelvam  2019-03-06 @8438  	return ret;
2eab2d81 Tamizh chelvam  2019-03-06  8439  }
2eab2d81 Tamizh chelvam  2019-03-06  8440  

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@01.org, Tamizh chelvam <tamizhr@codeaurora.org>
Cc: kbuild-all@01.org, johannes@sipsolutions.net,
	ath10k@lists.infradead.org, linux-wireless@vger.kernel.org,
	Tamizh chelvam <tamizhr@codeaurora.org>
Subject: Re: [PATCHv3 8/9] ath10k: Add new api to support TID specific configuration
Date: Mon, 11 Mar 2019 10:02:07 +0300	[thread overview]
Message-ID: <20190311070207.GA2412@kadam> (raw)
In-Reply-To: <1551895251-22941-9-git-send-email-tamizhr@codeaurora.org>

Hi Tamizh,

url:    https://github.com/0day-ci/linux/commits/Tamizh-chelvam/cfg80211-mac80211-Add-support-for-TID-specific-configuration/20190308-195433
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git master

smatch warnings:
drivers/net/wireless/ath/ath10k/mac.c:8438 ath10k_mac_op_set_tid_config() error: uninitialized symbol 'ret'.

# https://github.com/0day-ci/linux/commit/2eab2d81c36efa0cf08b02bfe2df3f83a2e2d756
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout 2eab2d81c36efa0cf08b02bfe2df3f83a2e2d756
vim +/ret +8438 drivers/net/wireless/ath/ath10k/mac.c

6a7f8911 Anilkumar Kolli 2017-12-05  8306  
2eab2d81 Tamizh chelvam  2019-03-06  8307  static int ath10k_mac_op_set_tid_config(struct ieee80211_hw *hw,
2eab2d81 Tamizh chelvam  2019-03-06  8308  					struct ieee80211_vif *vif,
2eab2d81 Tamizh chelvam  2019-03-06  8309  					struct ieee80211_sta *sta,
2eab2d81 Tamizh chelvam  2019-03-06  8310  					struct ieee80211_tid_config *tid_config)
2eab2d81 Tamizh chelvam  2019-03-06  8311  {
2eab2d81 Tamizh chelvam  2019-03-06  8312  	struct ath10k *ar = hw->priv;
2eab2d81 Tamizh chelvam  2019-03-06  8313  	struct ath10k_vif *arvif = (void *)vif->drv_priv;
2eab2d81 Tamizh chelvam  2019-03-06  8314  	struct ath10k_mac_iter_tid_conf_data data = {};
2eab2d81 Tamizh chelvam  2019-03-06  8315  	struct wmi_per_peer_per_tid_cfg_arg arg = {};
2eab2d81 Tamizh chelvam  2019-03-06  8316  	int ret, i;
2eab2d81 Tamizh chelvam  2019-03-06  8317  	u8 changed;
2eab2d81 Tamizh chelvam  2019-03-06  8318  
2eab2d81 Tamizh chelvam  2019-03-06  8319  	mutex_lock(&ar->conf_mutex);
2eab2d81 Tamizh chelvam  2019-03-06  8320  	arg.vdev_id = arvif->vdev_id;
2eab2d81 Tamizh chelvam  2019-03-06  8321  
2eab2d81 Tamizh chelvam  2019-03-06  8322  	memset(arvif->tid_conf_changed, 0, sizeof(arvif->tid_conf_changed));
2eab2d81 Tamizh chelvam  2019-03-06  8323  
2eab2d81 Tamizh chelvam  2019-03-06  8324  	for (i = 0; i < tid_config->n_tid_conf; i++) {
2eab2d81 Tamizh chelvam  2019-03-06  8325  		if (tid_config->tid_conf[i].tid >= IEEE80211_TID_MAX)
2eab2d81 Tamizh chelvam  2019-03-06  8326  			continue;
                                                                ^^^^^^^^^
We would have to hit this continue over and over and "sta" would have
to be non-NULL for this to be an issue.

2eab2d81 Tamizh chelvam  2019-03-06  8327  
2eab2d81 Tamizh chelvam  2019-03-06  8328  		ath10k_mac_parse_tid_config(ar, sta, vif,
2eab2d81 Tamizh chelvam  2019-03-06  8329  					    &tid_config->tid_conf[i],
2eab2d81 Tamizh chelvam  2019-03-06  8330  					    &arg);
2eab2d81 Tamizh chelvam  2019-03-06  8331  		changed = tid_config->tid_conf[i].tid_conf_mask;
2eab2d81 Tamizh chelvam  2019-03-06  8332  		if (sta) {
2eab2d81 Tamizh chelvam  2019-03-06  8333  			if (!sta->wme) {
2eab2d81 Tamizh chelvam  2019-03-06  8334  				ret = -ENOTSUPP;
2eab2d81 Tamizh chelvam  2019-03-06  8335  				goto exit;
2eab2d81 Tamizh chelvam  2019-03-06  8336  			}
2eab2d81 Tamizh chelvam  2019-03-06  8337  
2eab2d81 Tamizh chelvam  2019-03-06  8338  			if (changed & IEEE80211_TID_CONF_RETRY) {
2eab2d81 Tamizh chelvam  2019-03-06  8339  				if (sta->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK ||
2eab2d81 Tamizh chelvam  2019-03-06  8340  				    vif->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK)
2eab2d81 Tamizh chelvam  2019-03-06  8341  					arg.retry_count = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8342  			}
2eab2d81 Tamizh chelvam  2019-03-06  8343  
2eab2d81 Tamizh chelvam  2019-03-06  8344  			if (changed & IEEE80211_TID_CONF_AMPDU) {
2eab2d81 Tamizh chelvam  2019-03-06  8345  				if (sta->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK ||
2eab2d81 Tamizh chelvam  2019-03-06  8346  				    vif->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK)
2eab2d81 Tamizh chelvam  2019-03-06  8347  					arg.aggr_control = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8348  			}
2eab2d81 Tamizh chelvam  2019-03-06  8349  
2eab2d81 Tamizh chelvam  2019-03-06  8350  			if (changed & IEEE80211_TID_CONF_TX_BITRATE) {
2eab2d81 Tamizh chelvam  2019-03-06  8351  				if (sta->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK ||
2eab2d81 Tamizh chelvam  2019-03-06  8352  				    vif->noack[arg.tid] == WMI_PEER_TID_CONFIG_NOACK) {
2eab2d81 Tamizh chelvam  2019-03-06  8353  					arg.rate_ctrl = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8354  					arg.rcode_flags = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8355  				}
2eab2d81 Tamizh chelvam  2019-03-06  8356  			}
2eab2d81 Tamizh chelvam  2019-03-06  8357  
2eab2d81 Tamizh chelvam  2019-03-06  8358  			ether_addr_copy(arg.peer_macaddr.addr, sta->addr);
2eab2d81 Tamizh chelvam  2019-03-06  8359  			ret = ath10k_wmi_set_per_peer_per_tid_cfg(ar, &arg);
2eab2d81 Tamizh chelvam  2019-03-06  8360  			if (ret)
2eab2d81 Tamizh chelvam  2019-03-06  8361  				goto exit;
2eab2d81 Tamizh chelvam  2019-03-06  8362  
2eab2d81 Tamizh chelvam  2019-03-06  8363  			/* Store the configured parameters in success case */
2eab2d81 Tamizh chelvam  2019-03-06  8364  			if (changed & IEEE80211_TID_CONF_NOACK) {
2eab2d81 Tamizh chelvam  2019-03-06  8365  				if (tid_config->tid_conf[i].noack ==
2eab2d81 Tamizh chelvam  2019-03-06  8366  						NL80211_TID_CONFIG_DEFAULT) {
2eab2d81 Tamizh chelvam  2019-03-06  8367  					sta->noack[arg.tid] = -1;
2eab2d81 Tamizh chelvam  2019-03-06  8368  				} else {
2eab2d81 Tamizh chelvam  2019-03-06  8369  					sta->noack[arg.tid] = arg.ack_policy;
2eab2d81 Tamizh chelvam  2019-03-06  8370  				}
2eab2d81 Tamizh chelvam  2019-03-06  8371  
2eab2d81 Tamizh chelvam  2019-03-06  8372  				arg.ack_policy = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8373  				arg.aggr_control = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8374  				arg.rate_ctrl = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8375  				arg.rcode_flags = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8376  			}
2eab2d81 Tamizh chelvam  2019-03-06  8377  
2eab2d81 Tamizh chelvam  2019-03-06  8378  			if (changed & IEEE80211_TID_CONF_RETRY) {
2eab2d81 Tamizh chelvam  2019-03-06  8379  				if (tid_config->tid_conf[i].retry_long == -1) {
2eab2d81 Tamizh chelvam  2019-03-06  8380  					sta->retry_long[arg.tid] = -1;
2eab2d81 Tamizh chelvam  2019-03-06  8381  				} else {
2eab2d81 Tamizh chelvam  2019-03-06  8382  					sta->retry_long[arg.tid] = arg.retry_count;
2eab2d81 Tamizh chelvam  2019-03-06  8383  				}
2eab2d81 Tamizh chelvam  2019-03-06  8384  
2eab2d81 Tamizh chelvam  2019-03-06  8385  				arg.retry_count = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8386  			}
2eab2d81 Tamizh chelvam  2019-03-06  8387  
2eab2d81 Tamizh chelvam  2019-03-06  8388  			if (changed & IEEE80211_TID_CONF_AMPDU) {
2eab2d81 Tamizh chelvam  2019-03-06  8389  				if (tid_config->tid_conf[i].ampdu ==
2eab2d81 Tamizh chelvam  2019-03-06  8390  						NL80211_TID_CONFIG_DEFAULT) {
2eab2d81 Tamizh chelvam  2019-03-06  8391  					sta->ampdu[arg.tid] = -1;
2eab2d81 Tamizh chelvam  2019-03-06  8392  				} else {
2eab2d81 Tamizh chelvam  2019-03-06  8393  					sta->ampdu[arg.tid] = arg.aggr_control;
2eab2d81 Tamizh chelvam  2019-03-06  8394  				}
2eab2d81 Tamizh chelvam  2019-03-06  8395  
2eab2d81 Tamizh chelvam  2019-03-06  8396  				arg.aggr_control = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8397  			}
2eab2d81 Tamizh chelvam  2019-03-06  8398  
2eab2d81 Tamizh chelvam  2019-03-06  8399  			if (changed & IEEE80211_TID_CONF_TX_BITRATE) {
2eab2d81 Tamizh chelvam  2019-03-06  8400  				sta->rate_ctrl[arg.tid] = arg.rate_ctrl;
2eab2d81 Tamizh chelvam  2019-03-06  8401  				arg.rate_ctrl = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8402  				arg.rcode_flags = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8403  			}
2eab2d81 Tamizh chelvam  2019-03-06  8404  		} else {
2eab2d81 Tamizh chelvam  2019-03-06  8405  			arvif->tid_conf_changed[arg.tid] |= changed;
2eab2d81 Tamizh chelvam  2019-03-06  8406  
2eab2d81 Tamizh chelvam  2019-03-06  8407  			if (changed & IEEE80211_TID_CONF_NOACK) {
2eab2d81 Tamizh chelvam  2019-03-06  8408  				vif->noack[arg.tid] = arg.ack_policy;
2eab2d81 Tamizh chelvam  2019-03-06  8409  				vif->ampdu[arg.tid] = arg.aggr_control;
2eab2d81 Tamizh chelvam  2019-03-06  8410  				vif->rate_ctrl[arg.tid] = arg.rate_ctrl;
2eab2d81 Tamizh chelvam  2019-03-06  8411  			}
2eab2d81 Tamizh chelvam  2019-03-06  8412  
2eab2d81 Tamizh chelvam  2019-03-06  8413  			if (changed & IEEE80211_TID_CONF_RETRY)
2eab2d81 Tamizh chelvam  2019-03-06  8414  				vif->retry_long[arg.tid] = arg.retry_count;
2eab2d81 Tamizh chelvam  2019-03-06  8415  
2eab2d81 Tamizh chelvam  2019-03-06  8416  			if (changed & IEEE80211_TID_CONF_AMPDU)
2eab2d81 Tamizh chelvam  2019-03-06  8417  				vif->ampdu[arg.tid] = arg.aggr_control;
2eab2d81 Tamizh chelvam  2019-03-06  8418  
2eab2d81 Tamizh chelvam  2019-03-06  8419  			if (changed & IEEE80211_TID_CONF_TX_BITRATE) {
2eab2d81 Tamizh chelvam  2019-03-06  8420  				vif->rate_ctrl[arg.tid] = arg.rate_ctrl;
2eab2d81 Tamizh chelvam  2019-03-06  8421  				vif->rate_code[arg.tid] = arg.rcode_flags;
2eab2d81 Tamizh chelvam  2019-03-06  8422  			}
2eab2d81 Tamizh chelvam  2019-03-06  8423  		}
2eab2d81 Tamizh chelvam  2019-03-06  8424  	}
2eab2d81 Tamizh chelvam  2019-03-06  8425  
2eab2d81 Tamizh chelvam  2019-03-06  8426  	if (sta)
2eab2d81 Tamizh chelvam  2019-03-06  8427  		goto exit;
2eab2d81 Tamizh chelvam  2019-03-06  8428  
2eab2d81 Tamizh chelvam  2019-03-06  8429  	ret = 0;
2eab2d81 Tamizh chelvam  2019-03-06  8430  	data.curr_vif = vif;
2eab2d81 Tamizh chelvam  2019-03-06  8431  	data.ar = ar;
2eab2d81 Tamizh chelvam  2019-03-06  8432  
2eab2d81 Tamizh chelvam  2019-03-06  8433  	ieee80211_iterate_stations_atomic(hw, ath10k_mac_vif_stations_tid_conf,
2eab2d81 Tamizh chelvam  2019-03-06  8434  					  &data);
2eab2d81 Tamizh chelvam  2019-03-06  8435  
2eab2d81 Tamizh chelvam  2019-03-06  8436  exit:
2eab2d81 Tamizh chelvam  2019-03-06  8437  	mutex_unlock(&ar->conf_mutex);
2eab2d81 Tamizh chelvam  2019-03-06 @8438  	return ret;
2eab2d81 Tamizh chelvam  2019-03-06  8439  }
2eab2d81 Tamizh chelvam  2019-03-06  8440  

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

  reply	other threads:[~2019-03-11  7:02 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-06 18:00 [PATCHv3 0/9] cfg80211/mac80211: Add support for TID specific configuration Tamizh chelvam
2019-03-06 18:00 ` Tamizh chelvam
2019-03-06 18:00 ` [PATCHv3 1/9] nl80211: New netlink command " Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-26  7:00   ` Dan Carpenter
2019-03-26  7:00     ` Dan Carpenter
2019-03-06 18:00 ` [PATCHv3 2/9] nl80211: Add new netlink attribute for TID speicific retry count Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-06 18:00 ` [PATCHv3 3/9] nl80211: Add netlink attribute for AMPDU aggregation enable/disable Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-06 18:00 ` [PATCHv3 4/9] nl80211: Add netlink attribute to enable/disable RTS_CTS Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-06 18:00 ` [PATCHv3 5/9] nl80211: Add netlink attribute to configure TID specific tx rate Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-06 18:00 ` [PATCHv3 6/9] mac80211: Add api to support configuring TID specific configuration Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-08 16:54   ` kbuild test robot
2019-03-08 16:54     ` kbuild test robot
2019-03-06 18:00 ` [PATCHv3 7/9] ath10k: Add wmi command support for station specific TID config Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-06 18:00 ` [PATCHv3 8/9] ath10k: Add new api to support TID specific configuration Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-11  7:02   ` Dan Carpenter [this message]
2019-03-11  7:02     ` Dan Carpenter
2019-03-06 18:00 ` [PATCHv3 9/9] ath10k: Add extended TID configuration support Tamizh chelvam
2019-03-06 18:00   ` Tamizh chelvam
2019-03-08 19:30 ` [PATCHv3 0/9] cfg80211/mac80211: Add support for TID specific configuration Sergey Matyukevich
2019-03-08 19:30   ` Sergey Matyukevich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190311070207.GA2412@kadam \
    --to=dan.carpenter@oracle.com \
    --cc=ath10k@lists.infradead.org \
    --cc=johannes@sipsolutions.net \
    --cc=kbuild-all@01.org \
    --cc=kbuild@01.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=tamizhr@codeaurora.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.