On Sun, Mar 10, 2013 at 11:27:01PM +0100, Felix Fietkau wrote: > On 2013-03-10 11:16 PM, Karl Beldan wrote: > > On Tue, Mar 05, 2013 at 02:29:11PM +0100, Felix Fietkau wrote: > >> On 2013-03-04 9:45 PM, john wrote: > >> > On Mon, Mar 04, 2013 at 09:12:04PM +0100, Johannes Berg wrote: > >> >> On Mon, 2013-03-04 at 19:27 +0100, Karl Beldan wrote: > >> >> > From: Karl Beldan <karl.beldan@xxxxxxxxxxxxxxxx> > >> >> > > >> >> > Currently it gets it from the sdata. This uses and updates the ad-hoc > >> >> > masks of the ieee80211_tx_rate_control instead of copying them. > >> >> > >> >> Is there any need to update them? > >> >> > >> >> The change for "mask" seems to make it less efficient since it could > >> >> otherwise be put into a register. > >> >> > >> > Totally, this commit spares the 10bytes copy of mcs_mask but adds a less > >> > efficient indirection to mask. > >> > I thought of it but kept the symmetry with mcs_mask. > >> > Apparently you wouldn't mind the dissymmetry so I will re-send using mask > >> > by value, plus I wrote "updates .." where it is more like "lets the > >> > ad-hoc masks get overwritten". > >> It seems to me that all of this could be made more efficient by default > >> if a mcs mask pointer is only passed to rate control if the user > >> actually configured a MCS mask. Also, filtering out rates from the mask > >> that the sta does not support seems a bit unnecessary, since the rate > >> control usually looks at the HT capabilities and the sta's mcs rx mask > >> anyway. > >> > > Filtering is necessary to lookup alternative downgrade/upgrade rates. > Right, but the code could be changed to only do the filtering if > mac80211 needs to look up an alternative downgrade/upgrade rate. > With this I agree. Do you have strong opinions wrt basic rates ? The current code might tx mc/bc with non-basic rates. Karl -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html