2017-08-30 18:50:44

by Ganapathi Bhat

[permalink] [raw]
Subject: [PATCH] mwifiex: check for mfg_mode in add_virtual_intf

If driver is loaded with 'mfg_mode' enabled, then the sending
commands are not allowed. So, when mwifiex_send_cmd fails in
mwifiex_add_virtual_intf, driver must check for 'mfg_mode' before
returning error.

Fixes: 7311ea850079 ("mwifiex: fix AP start problem for newly added interface")
Signed-off-by: Ganapathi Bhat <[email protected]>
---
drivers/net/wireless/marvell/mwifiex/cfg80211.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index ffada17..1856205 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -2967,11 +2967,11 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,

ret = mwifiex_send_cmd(priv, HostCmd_CMD_SET_BSS_MODE,
HostCmd_ACT_GEN_SET, 0, NULL, true);
- if (ret)
+ if (ret && !adapter->mfg_mode)
goto err_set_bss_mode;

ret = mwifiex_sta_init_cmd(priv, false, false);
- if (ret)
+ if (ret && !adapter->mfg_mode)
goto err_sta_init;

mwifiex_setup_ht_caps(&wiphy->bands[NL80211_BAND_2GHZ]->ht_cap, priv);
--
1.9.1


2017-08-31 20:21:51

by Brian Norris

[permalink] [raw]
Subject: Re: [PATCH] mwifiex: check for mfg_mode in add_virtual_intf

On Thu, Aug 31, 2017 at 12:16:58AM +0530, Ganapathi Bhat wrote:
> If driver is loaded with 'mfg_mode' enabled, then the sending
> commands are not allowed. So, when mwifiex_send_cmd fails in
> mwifiex_add_virtual_intf, driver must check for 'mfg_mode' before
> returning error.
>
> Fixes: 7311ea850079 ("mwifiex: fix AP start problem for newly added interface")
> Signed-off-by: Ganapathi Bhat <[email protected]>
> ---
> drivers/net/wireless/marvell/mwifiex/cfg80211.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> index ffada17..1856205 100644
> --- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> +++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> @@ -2967,11 +2967,11 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
>
> ret = mwifiex_send_cmd(priv, HostCmd_CMD_SET_BSS_MODE,
> HostCmd_ACT_GEN_SET, 0, NULL, true);
> - if (ret)
> + if (ret && !adapter->mfg_mode)

It doesn't feel like ignoring errors is the best approach here,
especially when it's only a single command that we could easily just
skip.

So, why don't you just skip it, like this?

if (!adapter->mfg_mode) {
ret = mwifiex_send_cmd(...);
if (ret)
goto err_set_bss_mode;
}

> goto err_set_bss_mode;
>
> ret = mwifiex_sta_init_cmd(priv, false, false);
> - if (ret)
> + if (ret && !adapter->mfg_mode)
> goto err_sta_init;

Same here; I think it's safe to just completely skip
mwifiex_sta_init_cmd(), no?

Brian

>
> mwifiex_setup_ht_caps(&wiphy->bands[NL80211_BAND_2GHZ]->ht_cap, priv);
> --
> 1.9.1
>

2017-09-14 14:11:25

by Ganapathi Bhat

[permalink] [raw]
Subject: RE: [EXT] Re: [PATCH] mwifiex: check for mfg_mode in add_virtual_intf

Hi Kalle,

> -----Original Message-----
> From: Kalle Valo [mailto:[email protected]]
> Sent: Tuesday, September 12, 2017 11:33 AM
> To: Brian Norris
> Cc: Ganapathi Bhat; [email protected]; Cathy Luo; Xinming
> Hu; Zhiyuan Yang; James Cao; Mangesh Malusare
> Subject: [EXT] Re: [PATCH] mwifiex: check for mfg_mode in
> add_virtual_intf
>
> External Email
>
> ----------------------------------------------------------------------
> Brian Norris <[email protected]> writes:
>
> > Could have used a 'v2' in the subject, but hopefully that doesn't
> > bother Kalle too much.
>
> It does create more work for me when sorting patches so please always
> try include the version in the subject. But no need to resend.
Sure. I will keep this in mind for future submits.
>
> --
> Kalle Valo

Thanks,
Ganapathi

2017-09-08 19:42:33

by Brian Norris

[permalink] [raw]
Subject: Re: [PATCH] mwifiex: check for mfg_mode in add_virtual_intf

Hi,

Could have used a 'v2' in the subject, but hopefully that doesn't bother
Kalle too much.

On Fri, Sep 08, 2017 at 02:02:43AM +0530, Ganapathi Bhat wrote:
> If driver is loaded with 'mfg_mode' enabled, then the sending
> commands are not allowed. So, skip sending commands, to firmware
> in mwifiex_add_virtual_intf if 'mfg_mode' is enabled.
>
> Fixes: 7311ea850079 ("mwifiex: fix AP start problem for newly added interface")
> Signed-off-by: Ganapathi Bhat <[email protected]>
> ---
> v2: addressed Brian's comments.
> ---
> drivers/net/wireless/marvell/mwifiex/cfg80211.c | 19 +++++++++++--------
> 1 file changed, 11 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> index 32c5074..ad1ebd8 100644
> --- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> +++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> @@ -2959,18 +2959,21 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
> }
>
> mwifiex_init_priv_params(priv, dev);
> - mwifiex_set_mac_address(priv, dev);
>
> priv->netdev = dev;
>
> - ret = mwifiex_send_cmd(priv, HostCmd_CMD_SET_BSS_MODE,
> - HostCmd_ACT_GEN_SET, 0, NULL, true);
> - if (ret)
> - goto err_set_bss_mode;
> + if (!adapter->mfg_mode) {
> + mwifiex_set_mac_address(priv, dev);
>
> - ret = mwifiex_sta_init_cmd(priv, false, false);
> - if (ret)
> - goto err_sta_init;
> + ret = mwifiex_send_cmd(priv, HostCmd_CMD_SET_BSS_MODE,
> + HostCmd_ACT_GEN_SET, 0, NULL, true);
> + if (ret)
> + goto err_set_bss_mode;
> +
> + ret = mwifiex_sta_init_cmd(priv, false, false);
> + if (ret)
> + goto err_sta_init;
> + }

Seems better to me.

Reviewed-by: Brian Norris <[email protected]>

>
> mwifiex_setup_ht_caps(&wiphy->bands[NL80211_BAND_2GHZ]->ht_cap, priv);
> if (adapter->is_hw_11ac_capable)
> --
> 1.9.1
>

2017-09-07 20:41:26

by Ganapathi Bhat

[permalink] [raw]
Subject: RE: [EXT] Re: [PATCH] mwifiex: check for mfg_mode in add_virtual_intf

Hi Brian,

>
> ----------------------------------------------------------------------
> On Thu, Aug 31, 2017 at 12:16:58AM +0530, Ganapathi Bhat wrote:
> > If driver is loaded with 'mfg_mode' enabled, then the sending
> commands
> > are not allowed. So, when mwifiex_send_cmd fails in
> > mwifiex_add_virtual_intf, driver must check for 'mfg_mode' before
> > returning error.
> >
> > Fixes: 7311ea850079 ("mwifiex: fix AP start problem for newly added
> > interface")
> > Signed-off-by: Ganapathi Bhat <[email protected]>
> > ---
> > drivers/net/wireless/marvell/mwifiex/cfg80211.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> > b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> > index ffada17..1856205 100644
> > --- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> > +++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
> > @@ -2967,11 +2967,11 @@ struct wireless_dev
> > *mwifiex_add_virtual_intf(struct wiphy *wiphy,
> >
> > ret = mwifiex_send_cmd(priv, HostCmd_CMD_SET_BSS_MODE,
> > HostCmd_ACT_GEN_SET, 0, NULL, true);
> > - if (ret)
> > + if (ret && !adapter->mfg_mode)
>
> It doesn't feel like ignoring errors is the best approach here,
> especially when it's only a single command that we could easily just
> skip.
Got it.
>
> So, why don't you just skip it, like this?
>
> if (!adapter->mfg_mode) {
Yes. This is better.
> ret = mwifiex_send_cmd(...);
> if (ret)
> goto err_set_bss_mode;
> }
>
> > goto err_set_bss_mode;
> >
> > ret = mwifiex_sta_init_cmd(priv, false, false);
> > - if (ret)
> > + if (ret && !adapter->mfg_mode)
> > goto err_sta_init;
>
> Same here; I think it's safe to just completely skip
> mwifiex_sta_init_cmd(), no?
Yes. I have sent v2 of these changes.
>
> Brian
>
> >
> > mwifiex_setup_ht_caps(&wiphy->bands[NL80211_BAND_2GHZ]->ht_cap,
> > priv);
> > --
> > 1.9.1
> >

Thanks,
Ganapathi

2017-09-12 06:03:30

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] mwifiex: check for mfg_mode in add_virtual_intf

Brian Norris <[email protected]> writes:

> Could have used a 'v2' in the subject, but hopefully that doesn't bother
> Kalle too much.

It does create more work for me when sorting patches so please always
try include the version in the subject. But no need to resend.

--
Kalle Valo