diff options
author | David S. Miller <davem@davemloft.net> | 2015-03-02 14:47:12 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-03-02 14:47:12 -0500 |
commit | 70c836a4d15f12aa50195937083b30a6945c2556 (patch) | |
tree | f76867215487fd7626acae395b412056eb8fde74 /net/ieee802154 | |
parent | b4844353c0577bef6db54e5b276ede1acbed5b3d (diff) | |
parent | c91799c50a14137ecee6d60d2f1d9ab8bc895e52 (diff) |
Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next
Johan Hedberg says:
====================
pull request: bluetooth-next 2015-03-02
Here's the first bluetooth-next pull request targeting the 4.1 kernel:
- ieee802154/6lowpan cleanups
- SCO routing to host interface support for the btmrvl driver
- AMP code cleanups
- Fixes to AMP HCI init sequence
- Refactoring of the HCI callback mechanism
- Added shutdown routine for Intel controllers in the btusb driver
- New config option to enable/disable Bluetooth debugfs information
- Fix for early data reception on L2CAP fixed channels
Please let me know if there are any issues pulling. Thanks.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ieee802154')
-rw-r--r-- | net/ieee802154/6lowpan/core.c | 6 | ||||
-rw-r--r-- | net/ieee802154/core.c | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/net/ieee802154/6lowpan/core.c b/net/ieee802154/6lowpan/core.c index 055fbb71ba6f..dfd3c6007f60 100644 --- a/net/ieee802154/6lowpan/core.c +++ b/net/ieee802154/6lowpan/core.c | |||
@@ -126,6 +126,7 @@ static void lowpan_setup(struct net_device *dev) | |||
126 | dev->header_ops = &lowpan_header_ops; | 126 | dev->header_ops = &lowpan_header_ops; |
127 | dev->ml_priv = &lowpan_mlme; | 127 | dev->ml_priv = &lowpan_mlme; |
128 | dev->destructor = free_netdev; | 128 | dev->destructor = free_netdev; |
129 | dev->features |= NETIF_F_NETNS_LOCAL; | ||
129 | } | 130 | } |
130 | 131 | ||
131 | static int lowpan_validate(struct nlattr *tb[], struct nlattr *data[]) | 132 | static int lowpan_validate(struct nlattr *tb[], struct nlattr *data[]) |
@@ -148,10 +149,11 @@ static int lowpan_newlink(struct net *src_net, struct net_device *dev, | |||
148 | 149 | ||
149 | pr_debug("adding new link\n"); | 150 | pr_debug("adding new link\n"); |
150 | 151 | ||
151 | if (!tb[IFLA_LINK]) | 152 | if (!tb[IFLA_LINK] || |
153 | !net_eq(dev_net(dev), &init_net)) | ||
152 | return -EINVAL; | 154 | return -EINVAL; |
153 | /* find and hold real wpan device */ | 155 | /* find and hold real wpan device */ |
154 | real_dev = dev_get_by_index(src_net, nla_get_u32(tb[IFLA_LINK])); | 156 | real_dev = dev_get_by_index(dev_net(dev), nla_get_u32(tb[IFLA_LINK])); |
155 | if (!real_dev) | 157 | if (!real_dev) |
156 | return -ENODEV; | 158 | return -ENODEV; |
157 | if (real_dev->type != ARPHRD_IEEE802154) { | 159 | if (real_dev->type != ARPHRD_IEEE802154) { |
diff --git a/net/ieee802154/core.c b/net/ieee802154/core.c index 18bc7e738507..888d0991c761 100644 --- a/net/ieee802154/core.c +++ b/net/ieee802154/core.c | |||
@@ -225,6 +225,7 @@ static int cfg802154_netdev_notifier_call(struct notifier_block *nb, | |||
225 | switch (state) { | 225 | switch (state) { |
226 | /* TODO NETDEV_DEVTYPE */ | 226 | /* TODO NETDEV_DEVTYPE */ |
227 | case NETDEV_REGISTER: | 227 | case NETDEV_REGISTER: |
228 | dev->features |= NETIF_F_NETNS_LOCAL; | ||
228 | wpan_dev->identifier = ++rdev->wpan_dev_id; | 229 | wpan_dev->identifier = ++rdev->wpan_dev_id; |
229 | list_add_rcu(&wpan_dev->list, &rdev->wpan_dev_list); | 230 | list_add_rcu(&wpan_dev->list, &rdev->wpan_dev_list); |
230 | rdev->devlist_generation++; | 231 | rdev->devlist_generation++; |