diff mbox

[V5] brcmfmac: print errors if creating interface fails

Message ID 1464338991-8284-1-git-send-email-arend@broadcom.com (mailing list archive)
State Changes Requested
Delegated to: Kalle Valo
Headers show

Commit Message

Arend van Spriel May 27, 2016, 8:49 a.m. UTC
From: Rafał Miłecki <zajec5@gmail.com>

This is helpful for debugging. Without this all I was getting from "iw"
command on failed creating of P2P interface was:
> command failed: Too many open files in system (-23)

Signed-off-by: Rafal Milecki <zajec5@gmail.com>
[arend@broadcom.com: reduce error prints upon iface creation]
Signed-off-by: Arend van Spriel <arend@broadcom.com>
---
V2: s/in/if/ in commit message
V3: Add one more error message as suggested by Arend
V4: Also update brcmf_cfg80211_add_iface & print error for AP
V5: remove error prints from p2p.c
---
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 12 ++++++++++--
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c      |  2 --
 2 files changed, 10 insertions(+), 4 deletions(-)

Comments

Julian Calaby May 27, 2016, 9:13 a.m. UTC | #1
Hi Arend,

On Fri, May 27, 2016 at 6:49 PM, Arend van Spriel <arend@broadcom.com> wrote:
> From: Rafał Miłecki <zajec5@gmail.com>
>
> This is helpful for debugging. Without this all I was getting from "iw"
> command on failed creating of P2P interface was:
>> command failed: Too many open files in system (-23)
>
> Signed-off-by: Rafal Milecki <zajec5@gmail.com>
> [arend@broadcom.com: reduce error prints upon iface creation]
> Signed-off-by: Arend van Spriel <arend@broadcom.com>
> ---
> V2: s/in/if/ in commit message
> V3: Add one more error message as suggested by Arend
> V4: Also update brcmf_cfg80211_add_iface & print error for AP
> V5: remove error prints from p2p.c
> ---
>  drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 12 ++++++++++--
>  drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c      |  2 --
>  2 files changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
> index d0631b6..64ed003 100644
> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
> @@ -671,18 +671,26 @@ static struct wireless_dev *brcmf_cfg80211_add_iface(struct wiphy *wiphy,
>                 wdev = brcmf_ap_add_vif(wiphy, name, flags, params);
>                 if (!IS_ERR(wdev))
>                         brcmf_cfg80211_update_proto_addr_mode(wdev);
> -               return wdev;
> +               break;
>         case NL80211_IFTYPE_P2P_CLIENT:
>         case NL80211_IFTYPE_P2P_GO:
>         case NL80211_IFTYPE_P2P_DEVICE:
>                 wdev = brcmf_p2p_add_vif(wiphy, name, name_assign_type, type, flags, params);
>                 if (!IS_ERR(wdev))
>                         brcmf_cfg80211_update_proto_addr_mode(wdev);
> -               return wdev;
> +               break;
>         case NL80211_IFTYPE_UNSPECIFIED:
>         default:
>                 return ERR_PTR(-EINVAL);
>         }
> +
> +       if (IS_ERR(wdev))
> +               brcmf_err("add iface %s type %d failed: err=%d\n",
> +                         name, type, PTR_ERR(wdev));
> +       else
> +               brcmf_cfg80211_update_proto_addr_mode(wdev);

Doesn't this now get called twice?

Thanks,
Arend van Spriel May 27, 2016, 9:15 a.m. UTC | #2
On 27-5-2016 11:13, Julian Calaby wrote:
> Hi Arend,
> 
> On Fri, May 27, 2016 at 6:49 PM, Arend van Spriel <arend@broadcom.com> wrote:
>> From: Rafał Miłecki <zajec5@gmail.com>
>>
>> This is helpful for debugging. Without this all I was getting from "iw"
>> command on failed creating of P2P interface was:
>>> command failed: Too many open files in system (-23)
>>
>> Signed-off-by: Rafal Milecki <zajec5@gmail.com>
>> [arend@broadcom.com: reduce error prints upon iface creation]
>> Signed-off-by: Arend van Spriel <arend@broadcom.com>
>> ---
>> V2: s/in/if/ in commit message
>> V3: Add one more error message as suggested by Arend
>> V4: Also update brcmf_cfg80211_add_iface & print error for AP
>> V5: remove error prints from p2p.c
>> ---
>>  drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 12 ++++++++++--
>>  drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c      |  2 --
>>  2 files changed, 10 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
>> index d0631b6..64ed003 100644
>> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
>> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
>> @@ -671,18 +671,26 @@ static struct wireless_dev *brcmf_cfg80211_add_iface(struct wiphy *wiphy,
>>                 wdev = brcmf_ap_add_vif(wiphy, name, flags, params);
>>                 if (!IS_ERR(wdev))
>>                         brcmf_cfg80211_update_proto_addr_mode(wdev);
>> -               return wdev;
>> +               break;
>>         case NL80211_IFTYPE_P2P_CLIENT:
>>         case NL80211_IFTYPE_P2P_GO:
>>         case NL80211_IFTYPE_P2P_DEVICE:
>>                 wdev = brcmf_p2p_add_vif(wiphy, name, name_assign_type, type, flags, params);
>>                 if (!IS_ERR(wdev))
>>                         brcmf_cfg80211_update_proto_addr_mode(wdev);
>> -               return wdev;
>> +               break;
>>         case NL80211_IFTYPE_UNSPECIFIED:
>>         default:
>>                 return ERR_PTR(-EINVAL);
>>         }
>> +
>> +       if (IS_ERR(wdev))
>> +               brcmf_err("add iface %s type %d failed: err=%d\n",
>> +                         name, type, PTR_ERR(wdev));
>> +       else
>> +               brcmf_cfg80211_update_proto_addr_mode(wdev);
> 
> Doesn't this now get called twice?

I already had it fixed in my editor, but forgot the 'git commit' step
:-( Anyway, I noticed it reading back the patch email and hence there is
already a V6.

Regards,
Arend

> Thanks,
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
index d0631b6..64ed003 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
@@ -671,18 +671,26 @@  static struct wireless_dev *brcmf_cfg80211_add_iface(struct wiphy *wiphy,
 		wdev = brcmf_ap_add_vif(wiphy, name, flags, params);
 		if (!IS_ERR(wdev))
 			brcmf_cfg80211_update_proto_addr_mode(wdev);
-		return wdev;
+		break;
 	case NL80211_IFTYPE_P2P_CLIENT:
 	case NL80211_IFTYPE_P2P_GO:
 	case NL80211_IFTYPE_P2P_DEVICE:
 		wdev = brcmf_p2p_add_vif(wiphy, name, name_assign_type, type, flags, params);
 		if (!IS_ERR(wdev))
 			brcmf_cfg80211_update_proto_addr_mode(wdev);
-		return wdev;
+		break;
 	case NL80211_IFTYPE_UNSPECIFIED:
 	default:
 		return ERR_PTR(-EINVAL);
 	}
+
+	if (IS_ERR(wdev))
+		brcmf_err("add iface %s type %d failed: err=%d\n",
+			  name, type, PTR_ERR(wdev));
+	else
+		brcmf_cfg80211_update_proto_addr_mode(wdev);
+
+	return wdev;
 }
 
 static void brcmf_scan_config_mpc(struct brcmf_if *ifp, int mpc)
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c
index a70cda6..a812381 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c
@@ -2030,8 +2030,6 @@  static int brcmf_p2p_request_p2p_if(struct brcmf_p2p_info *p2p,
 
 	err = brcmf_fil_iovar_data_set(ifp, "p2p_ifadd", &if_request,
 				       sizeof(if_request));
-	if (err)
-		return err;
 
 	return err;
 }