On 2018-11-09 17:19, Johannes Berg wrote:
On Mon, 2018-10-15 at 23:27 +0530, Tamizh chelvam wrote:

+               sta_mon_rssi_config_free(sta);
+               sta->rssi_hyst = rssi_hyst;
+               if (fixed_thold) {
+                       if (n_rssi_tholds > 2) {
+                               ret = -EINVAL;
+                               goto out;
+                       }

This might be slightly wrong, you free and then can still return an
error.

Sure. I'll move the free part after the validation check.

+                       if (n_rssi_tholds == 1) {
+                               sta->rssi_low = rssi_tholds[0];
+                               sta->rssi_high = rssi_tholds[0];
+                       } else {
+                               sta->rssi_low = rssi_tholds[0];
+                               sta->rssi_high = rssi_tholds[1];
+                       }
+               } else {
+                       const s32 *rssi_tholds;
+
+                       rssi_tholds = kmemdup(rssi_tholds,
+                                             n_rssi_tholds * sizeof(s32),
+                                             GFP_KERNEL);
+                       if (!rssi_tholds) {
+                               ret = -ENOMEM;
+                               goto out;
+                       }

Similarly here, I guess you should do the allocation (and other error
checking) before freeing.

ditto, Sure. I'll move the free part after the validation check.

+                       sta->rssi_tholds = rssi_tholds;
+                       sta->n_rssi_tholds = n_rssi_tholds;
+                       ieee80211_update_rssi_config(sta);



+struct sta_mon_rssi_config {
+};

Huh?

oops:( I have kept all configuring parameters in sta_info itself, mistakenly didn't remove this struct:(

The commit log also makes it sounds like mac80211 actually *supports*
this, but clearly that's not the case. However you don't give any data
to the driver either, did you lose a patch along the way? Previously you
had patch 5 ("mac80211: Implement functionality to monitor station's
rssi cross event") and if I remember correctly I said you should squash
some, but now that's not here?


Thanks,
Tamizh.

Reply via email to