All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/3] additional processing in NL80211_CMD_SET_BEACON
@ 2022-05-16 20:24 Aloka Dixit
  2022-05-16 20:24 ` [PATCH v5 1/3] cfg80211: " Aloka Dixit
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Aloka Dixit @ 2022-05-16 20:24 UTC (permalink / raw)
  To: johannes; +Cc: linux-wireless, Aloka Dixit

FILS discovery and unsolicited broadcast probe response transmissions
are configured as part of NL80211_CMD_START_AP, however both stop
after userspace uses the NL80211_CMD_SET_BEACON command as these
attributes are not processed as part of this command.

- Add the missing implementation in nl80211 and mac80211.
- Modify the local variable in nl80211_set_beacon() and input parameter
to rdev_change_beacon() from type struct cfg80211_beacon_data to
type struct cfg80211_ap_settings to support the new processing.
- Modify ieee80211_change_beacon() to reflect the new input parameter type.
- Modify driver specific functions pointed by change_beacon to
reflect the new input parameter type.

Aloka Dixit (3):
  cfg80211: additional processing in NL80211_CMD_SET_BEACON
  mac80211: process additional data during beacon change
  drivers: modify prototype for beacon change functions

 drivers/net/wireless/ath/ath6kl/cfg80211.c    |  4 +-
 drivers/net/wireless/ath/wil6210/cfg80211.c   |  3 +-
 .../broadcom/brcm80211/brcmfmac/cfg80211.c    |  4 +-
 .../net/wireless/marvell/mwifiex/cfg80211.c   |  3 +-
 .../wireless/microchip/wilc1000/cfg80211.c    |  4 +-
 .../net/wireless/quantenna/qtnfmac/cfg80211.c |  4 +-
 include/net/cfg80211.h                        |  2 +-
 net/mac80211/cfg.c                            | 34 +++++++++---
 net/wireless/nl80211.c                        | 28 ++++++++--
 net/wireless/rdev-ops.h                       |  2 +-
 net/wireless/trace.h                          | 52 +++++++++++--------
 11 files changed, 94 insertions(+), 46 deletions(-)


base-commit: 9335156ac0e174721921c404bd173526c8509124
-- 
2.31.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v5 1/3] cfg80211: additional processing in NL80211_CMD_SET_BEACON
  2022-05-16 20:24 [PATCH v5 0/3] additional processing in NL80211_CMD_SET_BEACON Aloka Dixit
@ 2022-05-16 20:24 ` Aloka Dixit
  2022-05-17  4:45   ` Kalle Valo
  2022-05-16 20:24 ` [PATCH v5 2/3] mac80211: process additional data during beacon change Aloka Dixit
  2022-05-16 20:24 ` [PATCH v5 3/3] drivers: modify prototype for beacon change functions Aloka Dixit
  2 siblings, 1 reply; 7+ messages in thread
From: Aloka Dixit @ 2022-05-16 20:24 UTC (permalink / raw)
  To: johannes; +Cc: linux-wireless, Aloka Dixit

FILS discovery and unsolicited broadcast probe response transmissions
are configured as part of NL80211_CMD_START_AP, however both stop
after userspace uses the NL80211_CMD_SET_BEACON command as these
attributes are not processed in that command.

- Add the missing implementation.
- Modify the local variable in nl80211_set_beacon() and input parameter
to rdev_change_beacon() from type struct cfg80211_beacon_data to
type struct cfg80211_ap_settings to support the new processing.

Signed-off-by: Aloka Dixit <quic_alokad@quicinc.com>
---
 include/net/cfg80211.h  |  2 +-
 net/wireless/nl80211.c  | 28 ++++++++++++++++++----
 net/wireless/rdev-ops.h |  2 +-
 net/wireless/trace.h    | 52 +++++++++++++++++++++++------------------
 4 files changed, 55 insertions(+), 29 deletions(-)

diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 97a5804ccdcf..880ade4a0430 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -4200,7 +4200,7 @@ struct cfg80211_ops {
 	int	(*start_ap)(struct wiphy *wiphy, struct net_device *dev,
 			    struct cfg80211_ap_settings *settings);
 	int	(*change_beacon)(struct wiphy *wiphy, struct net_device *dev,
-				 struct cfg80211_beacon_data *info);
+				 struct cfg80211_ap_settings *info);
 	int	(*stop_ap)(struct wiphy *wiphy, struct net_device *dev);
 
 
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index 740b29481bc6..e738902a9b99 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -5809,7 +5809,8 @@ static int nl80211_set_beacon(struct sk_buff *skb, struct genl_info *info)
 	struct cfg80211_registered_device *rdev = info->user_ptr[0];
 	struct net_device *dev = info->user_ptr[1];
 	struct wireless_dev *wdev = dev->ieee80211_ptr;
-	struct cfg80211_beacon_data params;
+	struct cfg80211_ap_settings *params;
+	struct nlattr *attrs;
 	int err;
 
 	if (dev->ieee80211_ptr->iftype != NL80211_IFTYPE_AP &&
@@ -5822,16 +5823,35 @@ static int nl80211_set_beacon(struct sk_buff *skb, struct genl_info *info)
 	if (!wdev->beacon_interval)
 		return -EINVAL;
 
-	err = nl80211_parse_beacon(rdev, info->attrs, &params);
+	params = kzalloc(sizeof(*params), GFP_KERNEL);
+	if (!params)
+		return -ENOMEM;
+
+	err = nl80211_parse_beacon(rdev, info->attrs, &params->beacon);
 	if (err)
 		goto out;
 
+	attrs = info->attrs[NL80211_ATTR_FILS_DISCOVERY];
+	if (attrs) {
+		err = nl80211_parse_fils_discovery(rdev, attrs, params);
+		if (err)
+			goto out;
+	}
+
+	attrs = info->attrs[NL80211_ATTR_UNSOL_BCAST_PROBE_RESP];
+	if (attrs) {
+		err = nl80211_parse_unsol_bcast_probe_resp(rdev, attrs,	params);
+		if (err)
+			goto out;
+	}
+
 	wdev_lock(wdev);
-	err = rdev_change_beacon(rdev, dev, &params);
+	err = rdev_change_beacon(rdev, dev, params);
 	wdev_unlock(wdev);
 
 out:
-	kfree(params.mbssid_ies);
+	kfree(params->beacon.mbssid_ies);
+	kfree(params);
 	return err;
 }
 
diff --git a/net/wireless/rdev-ops.h b/net/wireless/rdev-ops.h
index 439bcf52369c..131fbe9c3199 100644
--- a/net/wireless/rdev-ops.h
+++ b/net/wireless/rdev-ops.h
@@ -162,7 +162,7 @@ static inline int rdev_start_ap(struct cfg80211_registered_device *rdev,
 
 static inline int rdev_change_beacon(struct cfg80211_registered_device *rdev,
 				     struct net_device *dev,
-				     struct cfg80211_beacon_data *info)
+				     struct cfg80211_ap_settings *info)
 {
 	int ret;
 	trace_rdev_change_beacon(&rdev->wiphy, dev, info);
diff --git a/net/wireless/trace.h b/net/wireless/trace.h
index 228079d7690a..97ca10cbbfee 100644
--- a/net/wireless/trace.h
+++ b/net/wireless/trace.h
@@ -597,44 +597,50 @@ TRACE_EVENT(rdev_start_ap,
 
 TRACE_EVENT(rdev_change_beacon,
 	TP_PROTO(struct wiphy *wiphy, struct net_device *netdev,
-		 struct cfg80211_beacon_data *info),
+		 struct cfg80211_ap_settings *info),
 	TP_ARGS(wiphy, netdev, info),
 	TP_STRUCT__entry(
 		WIPHY_ENTRY
 		NETDEV_ENTRY
-		__dynamic_array(u8, head, info ? info->head_len : 0)
-		__dynamic_array(u8, tail, info ? info->tail_len : 0)
-		__dynamic_array(u8, beacon_ies, info ? info->beacon_ies_len : 0)
+		__dynamic_array(u8, head, info ? info->beacon.head_len : 0)
+		__dynamic_array(u8, tail, info ? info->beacon.tail_len : 0)
+		__dynamic_array(u8, beacon_ies,
+				info ? info->beacon.beacon_ies_len : 0)
 		__dynamic_array(u8, proberesp_ies,
-				info ? info->proberesp_ies_len : 0)
+				info ? info->beacon.proberesp_ies_len : 0)
 		__dynamic_array(u8, assocresp_ies,
-				info ? info->assocresp_ies_len : 0)
-		__dynamic_array(u8, probe_resp, info ? info->probe_resp_len : 0)
+				info ? info->beacon.assocresp_ies_len : 0)
+		__dynamic_array(u8, probe_resp,
+				info ? info->beacon.probe_resp_len : 0)
 	),
 	TP_fast_assign(
 		WIPHY_ASSIGN;
 		NETDEV_ASSIGN;
 		if (info) {
-			if (info->head)
-				memcpy(__get_dynamic_array(head), info->head,
-				       info->head_len);
-			if (info->tail)
-				memcpy(__get_dynamic_array(tail), info->tail,
-				       info->tail_len);
-			if (info->beacon_ies)
+			if (info->beacon.head)
+				memcpy(__get_dynamic_array(head),
+				       info->beacon.head,
+				       info->beacon.head_len);
+			if (info->beacon.tail)
+				memcpy(__get_dynamic_array(tail),
+				       info->beacon.tail,
+				       info->beacon.tail_len);
+			if (info->beacon.beacon_ies)
 				memcpy(__get_dynamic_array(beacon_ies),
-				       info->beacon_ies, info->beacon_ies_len);
-			if (info->proberesp_ies)
+				       info->beacon.beacon_ies,
+				       info->beacon.beacon_ies_len);
+			if (info->beacon.proberesp_ies)
 				memcpy(__get_dynamic_array(proberesp_ies),
-				       info->proberesp_ies,
-				       info->proberesp_ies_len);
-			if (info->assocresp_ies)
+				       info->beacon.proberesp_ies,
+				       info->beacon.proberesp_ies_len);
+			if (info->beacon.assocresp_ies)
 				memcpy(__get_dynamic_array(assocresp_ies),
-				       info->assocresp_ies,
-				       info->assocresp_ies_len);
-			if (info->probe_resp)
+				       info->beacon.assocresp_ies,
+				       info->beacon.assocresp_ies_len);
+			if (info->beacon.probe_resp)
 				memcpy(__get_dynamic_array(probe_resp),
-				       info->probe_resp, info->probe_resp_len);
+				       info->beacon.probe_resp,
+				       info->beacon.probe_resp_len);
 		}
 	),
 	TP_printk(WIPHY_PR_FMT ", " NETDEV_PR_FMT, WIPHY_PR_ARG, NETDEV_PR_ARG)
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v5 2/3] mac80211: process additional data during beacon change
  2022-05-16 20:24 [PATCH v5 0/3] additional processing in NL80211_CMD_SET_BEACON Aloka Dixit
  2022-05-16 20:24 ` [PATCH v5 1/3] cfg80211: " Aloka Dixit
@ 2022-05-16 20:24 ` Aloka Dixit
  2022-05-16 20:24 ` [PATCH v5 3/3] drivers: modify prototype for beacon change functions Aloka Dixit
  2 siblings, 0 replies; 7+ messages in thread
From: Aloka Dixit @ 2022-05-16 20:24 UTC (permalink / raw)
  To: johannes; +Cc: linux-wireless, Aloka Dixit

Modify the prototype for ieee80211_change_beacon() to accept
struct cfg80211_ap_settings instead of struct cfg80211_beacon_data to
process FILS discovery and unsolicited broadcast probe response
transmission configurations.

Signed-off-by: Aloka Dixit <quic_alokad@quicinc.com>
---
 net/mac80211/cfg.c | 34 +++++++++++++++++++++++++++-------
 1 file changed, 27 insertions(+), 7 deletions(-)

diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index bbec7d778084..1054b6625c53 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -1313,12 +1313,14 @@ static int ieee80211_start_ap(struct wiphy *wiphy, struct net_device *dev,
 }
 
 static int ieee80211_change_beacon(struct wiphy *wiphy, struct net_device *dev,
-				   struct cfg80211_beacon_data *params)
+				   struct cfg80211_ap_settings *params)
 {
 	struct ieee80211_sub_if_data *sdata;
 	struct ieee80211_bss_conf *bss_conf;
+	struct cfg80211_beacon_data *beacon = &params->beacon;
 	struct beacon_data *old;
 	int err;
+	u32 changed;
 
 	sdata = IEEE80211_DEV_TO_SUB_IF(dev);
 	sdata_assert_lock(sdata);
@@ -1333,18 +1335,36 @@ static int ieee80211_change_beacon(struct wiphy *wiphy, struct net_device *dev,
 	if (!old)
 		return -ENOENT;
 
-	err = ieee80211_assign_beacon(sdata, params, NULL, NULL);
+	err = ieee80211_assign_beacon(sdata, beacon, NULL, NULL);
 	if (err < 0)
 		return err;
 
+	changed = err;
+
+	if (params->fils_discovery.max_interval) {
+		err = ieee80211_set_fils_discovery(sdata,
+						   &params->fils_discovery);
+		if (err < 0)
+			return err;
+		changed |= BSS_CHANGED_FILS_DISCOVERY;
+	}
+
+	if (params->unsol_bcast_probe_resp.interval) {
+		err = ieee80211_set_unsol_bcast_probe_resp(sdata,
+							   &params->unsol_bcast_probe_resp);
+		if (err < 0)
+			return err;
+		changed |= BSS_CHANGED_UNSOL_BCAST_PROBE_RESP;
+	}
+
 	bss_conf = &sdata->vif.bss_conf;
-	if (params->he_bss_color_valid &&
-	    params->he_bss_color.enabled != bss_conf->he_bss_color.enabled) {
-		bss_conf->he_bss_color.enabled = params->he_bss_color.enabled;
-		err |= BSS_CHANGED_HE_BSS_COLOR;
+	if (beacon->he_bss_color_valid &&
+	    beacon->he_bss_color.enabled != bss_conf->he_bss_color.enabled) {
+		bss_conf->he_bss_color.enabled = beacon->he_bss_color.enabled;
+		changed |= BSS_CHANGED_HE_BSS_COLOR;
 	}
 
-	ieee80211_bss_info_change_notify(sdata, err);
+	ieee80211_bss_info_change_notify(sdata, changed);
 	return 0;
 }
 
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v5 3/3] drivers: modify prototype for beacon change functions
  2022-05-16 20:24 [PATCH v5 0/3] additional processing in NL80211_CMD_SET_BEACON Aloka Dixit
  2022-05-16 20:24 ` [PATCH v5 1/3] cfg80211: " Aloka Dixit
  2022-05-16 20:24 ` [PATCH v5 2/3] mac80211: process additional data during beacon change Aloka Dixit
@ 2022-05-16 20:24 ` Aloka Dixit
  2 siblings, 0 replies; 7+ messages in thread
From: Aloka Dixit @ 2022-05-16 20:24 UTC (permalink / raw)
  To: johannes; +Cc: linux-wireless, Aloka Dixit

Modify driver specific functions pointed by change_beacon to
to use struct cfg80211_ap_settings instead of
struct cfg80211_beacon_data.

Signed-off-by: Aloka Dixit <quic_alokad@quicinc.com>
---
 drivers/net/wireless/ath/ath6kl/cfg80211.c                  | 4 ++--
 drivers/net/wireless/ath/wil6210/cfg80211.c                 | 3 ++-
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 4 ++--
 drivers/net/wireless/marvell/mwifiex/cfg80211.c             | 3 ++-
 drivers/net/wireless/microchip/wilc1000/cfg80211.c          | 4 ++--
 drivers/net/wireless/quantenna/qtnfmac/cfg80211.c           | 4 ++--
 6 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/drivers/net/wireless/ath/ath6kl/cfg80211.c b/drivers/net/wireless/ath/ath6kl/cfg80211.c
index bd1183830e91..42f289c6d65e 100644
--- a/drivers/net/wireless/ath/ath6kl/cfg80211.c
+++ b/drivers/net/wireless/ath/ath6kl/cfg80211.c
@@ -2954,7 +2954,7 @@ static int ath6kl_start_ap(struct wiphy *wiphy, struct net_device *dev,
 }
 
 static int ath6kl_change_beacon(struct wiphy *wiphy, struct net_device *dev,
-				struct cfg80211_beacon_data *beacon)
+				struct cfg80211_ap_settings *params)
 {
 	struct ath6kl_vif *vif = netdev_priv(dev);
 
@@ -2964,7 +2964,7 @@ static int ath6kl_change_beacon(struct wiphy *wiphy, struct net_device *dev,
 	if (vif->next_mode != AP_NETWORK)
 		return -EOPNOTSUPP;
 
-	return ath6kl_set_ies(vif, beacon);
+	return ath6kl_set_ies(vif, &params->beacon);
 }
 
 static int ath6kl_stop_ap(struct wiphy *wiphy, struct net_device *dev)
diff --git a/drivers/net/wireless/ath/wil6210/cfg80211.c b/drivers/net/wireless/ath/wil6210/cfg80211.c
index 8f2638f5b87b..360137e59f14 100644
--- a/drivers/net/wireless/ath/wil6210/cfg80211.c
+++ b/drivers/net/wireless/ath/wil6210/cfg80211.c
@@ -2082,11 +2082,12 @@ void wil_cfg80211_ap_recovery(struct wil6210_priv *wil)
 
 static int wil_cfg80211_change_beacon(struct wiphy *wiphy,
 				      struct net_device *ndev,
-				      struct cfg80211_beacon_data *bcon)
+				      struct cfg80211_ap_settings *params)
 {
 	struct wil6210_priv *wil = wiphy_to_wil(wiphy);
 	struct wireless_dev *wdev = ndev->ieee80211_ptr;
 	struct wil6210_vif *vif = ndev_to_vif(ndev);
+	struct cfg80211_beacon_data *bcon = &params->beacon;
 	int rc;
 	u32 privacy = 0;
 
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
index 360b103fe898..9be5ddc7d4da 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
@@ -5038,14 +5038,14 @@ static int brcmf_cfg80211_stop_ap(struct wiphy *wiphy, struct net_device *ndev)
 
 static s32
 brcmf_cfg80211_change_beacon(struct wiphy *wiphy, struct net_device *ndev,
-			     struct cfg80211_beacon_data *info)
+			     struct cfg80211_ap_settings *info)
 {
 	struct brcmf_if *ifp = netdev_priv(ndev);
 	s32 err;
 
 	brcmf_dbg(TRACE, "Enter\n");
 
-	err = brcmf_config_ap_mgmt_ie(ifp->vif, info);
+	err = brcmf_config_ap_mgmt_ie(ifp->vif, &info->beacon);
 
 	return err;
 }
diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index 6f23ec34e2e2..856cc8a4d0da 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -1843,10 +1843,11 @@ static int mwifiex_cfg80211_set_cqm_rssi_config(struct wiphy *wiphy,
  */
 static int mwifiex_cfg80211_change_beacon(struct wiphy *wiphy,
 					  struct net_device *dev,
-					  struct cfg80211_beacon_data *data)
+					  struct cfg80211_ap_settings *params)
 {
 	struct mwifiex_private *priv = mwifiex_netdev_get_priv(dev);
 	struct mwifiex_adapter *adapter = priv->adapter;
+	struct cfg80211_beacon_data *data = &params->beacon;
 
 	mwifiex_cancel_scan(adapter);
 
diff --git a/drivers/net/wireless/microchip/wilc1000/cfg80211.c b/drivers/net/wireless/microchip/wilc1000/cfg80211.c
index 8d8378bafd9b..b356009f1d80 100644
--- a/drivers/net/wireless/microchip/wilc1000/cfg80211.c
+++ b/drivers/net/wireless/microchip/wilc1000/cfg80211.c
@@ -1371,11 +1371,11 @@ static int start_ap(struct wiphy *wiphy, struct net_device *dev,
 }
 
 static int change_beacon(struct wiphy *wiphy, struct net_device *dev,
-			 struct cfg80211_beacon_data *beacon)
+			 struct cfg80211_ap_settings *params)
 {
 	struct wilc_vif *vif = netdev_priv(dev);
 
-	return wilc_add_beacon(vif, 0, 0, beacon);
+	return wilc_add_beacon(vif, 0, 0, &params->beacon);
 }
 
 static int stop_ap(struct wiphy *wiphy, struct net_device *dev)
diff --git a/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c b/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c
index 84b15a655eab..518a66cef489 100644
--- a/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c
+++ b/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c
@@ -331,11 +331,11 @@ static int qtnf_mgmt_set_appie(struct qtnf_vif *vif,
 }
 
 static int qtnf_change_beacon(struct wiphy *wiphy, struct net_device *dev,
-			      struct cfg80211_beacon_data *info)
+			      struct cfg80211_ap_settings *info)
 {
 	struct qtnf_vif *vif = qtnf_netdev_get_priv(dev);
 
-	return qtnf_mgmt_set_appie(vif, info);
+	return qtnf_mgmt_set_appie(vif, &info->beacon);
 }
 
 static int qtnf_start_ap(struct wiphy *wiphy, struct net_device *dev,
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v5 1/3] cfg80211: additional processing in NL80211_CMD_SET_BEACON
  2022-05-16 20:24 ` [PATCH v5 1/3] cfg80211: " Aloka Dixit
@ 2022-05-17  4:45   ` Kalle Valo
  2022-05-17 10:50     ` Johannes Berg
  0 siblings, 1 reply; 7+ messages in thread
From: Kalle Valo @ 2022-05-17  4:45 UTC (permalink / raw)
  To: Aloka Dixit; +Cc: johannes, linux-wireless

Aloka Dixit <quic_alokad@quicinc.com> writes:

> FILS discovery and unsolicited broadcast probe response transmissions
> are configured as part of NL80211_CMD_START_AP, however both stop
> after userspace uses the NL80211_CMD_SET_BEACON command as these
> attributes are not processed in that command.
>
> - Add the missing implementation.
> - Modify the local variable in nl80211_set_beacon() and input parameter
> to rdev_change_beacon() from type struct cfg80211_beacon_data to
> type struct cfg80211_ap_settings to support the new processing.
>
> Signed-off-by: Aloka Dixit <quic_alokad@quicinc.com>
> ---
>  include/net/cfg80211.h  |  2 +-
>  net/wireless/nl80211.c  | 28 ++++++++++++++++++----
>  net/wireless/rdev-ops.h |  2 +-
>  net/wireless/trace.h    | 52 +++++++++++++++++++++++------------------
>  4 files changed, 55 insertions(+), 29 deletions(-)
>
> diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
> index 97a5804ccdcf..880ade4a0430 100644
> --- a/include/net/cfg80211.h
> +++ b/include/net/cfg80211.h
> @@ -4200,7 +4200,7 @@ struct cfg80211_ops {
>  	int	(*start_ap)(struct wiphy *wiphy, struct net_device *dev,
>  			    struct cfg80211_ap_settings *settings);
>  	int	(*change_beacon)(struct wiphy *wiphy, struct net_device *dev,
> -				 struct cfg80211_beacon_data *info);
> +				 struct cfg80211_ap_settings *info);

Shouldn't patch 3 folded into patch 1? I don't see how patch 1 as is
would compile without warnings.

-- 
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v5 1/3] cfg80211: additional processing in NL80211_CMD_SET_BEACON
  2022-05-17  4:45   ` Kalle Valo
@ 2022-05-17 10:50     ` Johannes Berg
  2022-05-17 18:53       ` Aloka Dixit
  0 siblings, 1 reply; 7+ messages in thread
From: Johannes Berg @ 2022-05-17 10:50 UTC (permalink / raw)
  To: Kalle Valo, Aloka Dixit; +Cc: linux-wireless

On Tue, 2022-05-17 at 07:45 +0300, Kalle Valo wrote:
> 
> > +++ b/include/net/cfg80211.h
> > @@ -4200,7 +4200,7 @@ struct cfg80211_ops {
> >  	int	(*start_ap)(struct wiphy *wiphy, struct net_device *dev,
> >  			    struct cfg80211_ap_settings *settings);
> >  	int	(*change_beacon)(struct wiphy *wiphy, struct net_device *dev,
> > -				 struct cfg80211_beacon_data *info);
> > +				 struct cfg80211_ap_settings *info);
> 
> Shouldn't patch 3 folded into patch 1? I don't see how patch 1 as is
> would compile without warnings.
> 
Yes, and parts of patch 2 as well.

johannes

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v5 1/3] cfg80211: additional processing in NL80211_CMD_SET_BEACON
  2022-05-17 10:50     ` Johannes Berg
@ 2022-05-17 18:53       ` Aloka Dixit
  0 siblings, 0 replies; 7+ messages in thread
From: Aloka Dixit @ 2022-05-17 18:53 UTC (permalink / raw)
  To: Johannes Berg, Kalle Valo; +Cc: linux-wireless

On 5/17/2022 3:50 AM, Johannes Berg wrote:
> On Tue, 2022-05-17 at 07:45 +0300, Kalle Valo wrote:
>>
>>> +++ b/include/net/cfg80211.h
>>> @@ -4200,7 +4200,7 @@ struct cfg80211_ops {
>>>   	int	(*start_ap)(struct wiphy *wiphy, struct net_device *dev,
>>>   			    struct cfg80211_ap_settings *settings);
>>>   	int	(*change_beacon)(struct wiphy *wiphy, struct net_device *dev,
>>> -				 struct cfg80211_beacon_data *info);
>>> +				 struct cfg80211_ap_settings *info);
>>
>> Shouldn't patch 3 folded into patch 1? I don't see how patch 1 as is
>> would compile without warnings.
>>
> Yes, and parts of patch 2 as well.
> 
> johannes


Little confused now between above comments and the following one:
https://patchwork.kernel.org/project/linux-wireless/patch/20220509225237.15955-1-quic_alokad@quicinc.com/

Even if all driver changes from patch #3 are put with patch #1, it still 
won't compile successfully without patch #2. Hence I had added all files 
in a single patch for v4.

I'm now thinking that what you meant is split the actual FILS discovery 
processing in a separate patch but keep the API changes (cfg80211, 
mac80211 and drivers) in the first patch file.

Will do that in the next version.

Thanks

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-05-17 18:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-16 20:24 [PATCH v5 0/3] additional processing in NL80211_CMD_SET_BEACON Aloka Dixit
2022-05-16 20:24 ` [PATCH v5 1/3] cfg80211: " Aloka Dixit
2022-05-17  4:45   ` Kalle Valo
2022-05-17 10:50     ` Johannes Berg
2022-05-17 18:53       ` Aloka Dixit
2022-05-16 20:24 ` [PATCH v5 2/3] mac80211: process additional data during beacon change Aloka Dixit
2022-05-16 20:24 ` [PATCH v5 3/3] drivers: modify prototype for beacon change functions Aloka Dixit

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.