Linux IEEE 802.15.4 and 6LoWPAN development
 help / color / mirror / Atom feed
From: Alexander Aring <alex.aring@gmail.com>
To: Varka Bhadram <varkabhadram@gmail.com>
Cc: linux-wpan@vger.kernel.org, Varka Bhadram <varkab@cdac.in>
Subject: Re: [RFC bluetooth-next] cfg802154: pass name_assign_type to rdev_add_virtual_intf()
Date: Tue, 28 Apr 2015 09:37:05 +0200	[thread overview]
Message-ID: <20150428073702.GA700@omega> (raw)
In-Reply-To: <1429691836-29316-1-git-send-email-varkab@cdac.in>

Hi Varka,

On Wed, Apr 22, 2015 at 02:07:16PM +0530, Varka Bhadram wrote:
> This code is based on commit 6bab2e19c5ffd
> ("cfg80211: pass name_assign_type to rdev_add_virtual_intf()")
> 
> This will expose in sysfs whether the ifname of a IEEE-802.15.4
> device is set by userspace or generated by the kernel.
> We are using two types of name_assign_types
>  o NET_NAME_ENUM: Default interface name provided by kernel
>  o NET_NAME_USER: Interface name provided by user.
> 
> Signed-off-by: Varka Bhadram <varkab@cdac.in>
> ---
>  include/net/cfg802154.h      |    2 ++
>  net/ieee802154/nl-phy.c      |    1 +
>  net/ieee802154/nl802154.c    |    1 +
>  net/ieee802154/rdev-ops.h    |   10 +++++++---
>  net/mac802154/cfg.c          |    9 ++++++---
>  net/mac802154/ieee802154_i.h |    1 +
>  net/mac802154/iface.c        |    5 +++--
>  net/mac802154/main.c         |    3 ++-
>  8 files changed, 23 insertions(+), 9 deletions(-)
> 
> diff --git a/include/net/cfg802154.h b/include/net/cfg802154.h
> index eeda676..6ea16c8 100644
> --- a/include/net/cfg802154.h
> +++ b/include/net/cfg802154.h
> @@ -30,11 +30,13 @@ struct wpan_phy_cca;
>  struct cfg802154_ops {
>  	struct net_device * (*add_virtual_intf_deprecated)(struct wpan_phy *wpan_phy,
>  							   const char *name,
> +							   unsigned char name_assign_type,
>  							   int type);
>  	void	(*del_virtual_intf_deprecated)(struct wpan_phy *wpan_phy,
>  					       struct net_device *dev);
>  	int	(*add_virtual_intf)(struct wpan_phy *wpan_phy,
>  				    const char *name,
> +				    unsigned char name_assign_type,
>  				    enum nl802154_iftype type,
>  				    __le64 extended_addr);
>  	int	(*del_virtual_intf)(struct wpan_phy *wpan_phy,
> diff --git a/net/ieee802154/nl-phy.c b/net/ieee802154/nl-phy.c
> index 1b9d25f6..ac3462a 100644
> --- a/net/ieee802154/nl-phy.c
> +++ b/net/ieee802154/nl-phy.c
> @@ -221,6 +221,7 @@ int ieee802154_add_iface(struct sk_buff *skb, struct genl_info *info)
>  	}
>  
>  	dev = rdev_add_virtual_intf_deprecated(wpan_phy_to_rdev(phy), devname,
> +					       NET_NAME_ENUM,
>  					       type);

This isn't always given by kernel.

See [0]. If info->attrs[IEEE802154_ATTR_DEV_TYPE] is given the name
came from user. You need to put some variable on stack and then decide
this in the if else branch.

>  	if (IS_ERR(dev)) {
>  		rc = PTR_ERR(dev);
> diff --git a/net/ieee802154/nl802154.c b/net/ieee802154/nl802154.c
> index a4daf91..a7eb16d 100644
> --- a/net/ieee802154/nl802154.c
> +++ b/net/ieee802154/nl802154.c
> @@ -589,6 +589,7 @@ static int nl802154_new_interface(struct sk_buff *skb, struct genl_info *info)
>  
>  	return rdev_add_virtual_intf(rdev,
>  				     nla_data(info->attrs[NL802154_ATTR_IFNAME]),
> +				     NET_NAME_USER,
>  				     type, extended_addr);

put what you can of these parameters in the previous line. I think
"type" fits sure in this line.



Otherwise this patch looks good. Thanks.

- Alex

[0] http://lxr.free-electrons.com/source/net/ieee802154/nl-phy.c#L188

  parent reply	other threads:[~2015-04-28  7:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-22  8:37 [RFC bluetooth-next] cfg802154: pass name_assign_type to rdev_add_virtual_intf() Varka Bhadram
2015-04-28  3:32 ` Varka Bhadram
2015-04-28  7:37 ` Alexander Aring [this message]
2015-04-28  8:19   ` Varka Bhadram
2015-04-28  8:29     ` Alexander Aring
2015-04-28  8:30       ` Varka Bhadram

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150428073702.GA700@omega \
    --to=alex.aring@gmail.com \
    --cc=linux-wpan@vger.kernel.org \
    --cc=varkab@cdac.in \
    --cc=varkabhadram@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox