Search Linux Wireless

Re: [RFC 3/4] mac80211: Apply per-peer NoAck tid bitmap configuration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2018-03-27 18:24, Johannes Berg wrote:
On Tue, 2018-03-27 at 14:12 +0530, Vasanthakumar Thiagarajan wrote:

+u16 ieee80211_get_noack_map(struct ieee80211_sub_if_data *sdata, const u8 *mac)
+{
+	struct sta_info *sta;
+	u16 noack_map = 0;
+
+	/* Retrieve per-station noack_map config for the receiver, if any */
+
+	rcu_read_lock();
+
+	sta = sta_info_get(sdata, mac);
+	if (!sta) {
+		rcu_read_unlock();
+		return noack_map;
+	}
+
+	noack_map = sta->noack_map;
+
+	rcu_read_unlock();
+
+	if (!noack_map)
+		noack_map = sdata->noack_map;

So this has an interesting corner case - should it be possible to have a default noack_map that's non-zero, but override it with 0 for a specific
peer? It seems that it should be, which makes this code wrong.

I think 0 as the Noack configuration from user can also be a valid one in the case where user does not want any NoAck policy to be used for a particular station even when a non-zero NoAck configuration is set for ndev level. In this case, the logic may need to be modified so that the default non-zero configuration (something like -1) could be used to determine that the station has been never configured with any NoAck
policy and use ndev level configuration. Does this sound reasonable?

Vasanth




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux