From: David S. Miller Date: Wed, 13 May 2015 18:31:43 +0000 (-0400) Subject: Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net X-Git-Tag: v4.9.8~4072^2~307 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b04096ff33a977c01c8780ca3ee129dbd641bad4;p=platform%2Fkernel%2Flinux-rpi3.git Merge git://git./linux/kernel/git/davem/net Four minor merge conflicts: 1) qca_spi.c renamed the local variable used for the SPI device from spi_device to spi, meanwhile the spi_set_drvdata() call got moved further up in the probe function. 2) Two changes were both adding new members to codel params structure, and thus we had overlapping changes to the initializer function. 3) 'net' was making a fix to sk_release_kernel() which is completely removed in 'net-next'. 4) In net_namespace.c, the rtnl_net_fill() call for GET operations had the command value fixed, meanwhile 'net-next' adjusted the argument signature a bit. This also matches example merge resolutions posted by Stephen Rothwell over the past two days. Signed-off-by: David S. Miller --- b04096ff33a977c01c8780ca3ee129dbd641bad4 diff --cc drivers/net/ethernet/qualcomm/qca_spi.c index c6b7498,6af028d..2f87909 --- a/drivers/net/ethernet/qualcomm/qca_spi.c +++ b/drivers/net/ethernet/qualcomm/qca_spi.c @@@ -909,10 -909,12 +909,12 @@@ qca_spi_probe(struct spi_device *spi return -ENOMEM; } qca->net_dev = qcaspi_devs; - qca->spi_dev = spi_device; + qca->spi_dev = spi; qca->legacy_mode = legacy_mode; - spi_set_drvdata(spi_device, qcaspi_devs); ++ spi_set_drvdata(spi, qcaspi_devs); + - mac = of_get_mac_address(spi_device->dev.of_node); + mac = of_get_mac_address(spi->dev.of_node); if (mac) ether_addr_copy(qca->net_dev->dev_addr, mac); diff --cc include/net/codel.h index 8c0f78f,1e18005..267e702 --- a/include/net/codel.h +++ b/include/net/codel.h @@@ -119,14 -119,14 +119,16 @@@ static inline u32 codel_time_to_us(code /** * struct codel_params - contains codel parameters * @target: target queue size (in time units) + * @ce_threshold: threshold for marking packets with ECN CE * @interval: width of moving time window + * @mtu: device mtu, or minimal queue backlog in bytes. * @ecn: is Explicit Congestion Notification enabled */ struct codel_params { codel_time_t target; + codel_time_t ce_threshold; codel_time_t interval; + u32 mtu; bool ecn; }; @@@ -167,16 -166,14 +169,18 @@@ struct codel_stats u32 maxpacket; u32 drop_count; u32 ecn_mark; + u32 ce_mark; }; +#define CODEL_DISABLED_THRESHOLD INT_MAX + - static void codel_params_init(struct codel_params *params) + static void codel_params_init(struct codel_params *params, + const struct Qdisc *sch) { params->interval = MS2TIME(100); params->target = MS2TIME(5); + params->mtu = psched_mtu(qdisc_dev(sch)); + params->ce_threshold = CODEL_DISABLED_THRESHOLD; params->ecn = false; } diff --cc net/core/net_namespace.c index a665bf4,572af00..cbee75f --- a/net/core/net_namespace.c +++ b/net/core/net_namespace.c @@@ -639,9 -600,8 +639,9 @@@ static int rtnl_net_getid(struct sk_buf goto out; } + id = peernet2id(net, peer); err = rtnl_net_fill(msg, NETLINK_CB(skb).portid, nlh->nlmsg_seq, 0, - RTM_GETNSID, net, id); - RTM_NEWNSID, net, peer, -1); ++ RTM_NEWNSID, net, id); if (err < 0) goto err_out; diff --cc net/mac80211/iface.c index dc2d713,bab5c63..4ee8fea --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c @@@ -816,15 -819,17 +816,17 @@@ static void ieee80211_do_stop(struct ie * (because if we remove a STA after ops->remove_interface() * the driver will have removed the vif info already!) * - * This is relevant only in WDS mode, in all other modes we've - * already removed all stations when disconnecting or similar, - * so warn otherwise. + * In WDS mode a station must exist here and be flushed, for + * AP_VLANs stations may exist since there's nothing else that + * would have removed them, but in other modes there shouldn't + * be any stations. */ flushed = sta_info_flush(sdata); - WARN_ON_ONCE((sdata->vif.type != NL80211_IFTYPE_WDS && flushed > 0) || - (sdata->vif.type == NL80211_IFTYPE_WDS && flushed != 1)); + WARN_ON_ONCE(sdata->vif.type != NL80211_IFTYPE_AP_VLAN && + ((sdata->vif.type != NL80211_IFTYPE_WDS && flushed > 0) || + (sdata->vif.type == NL80211_IFTYPE_WDS && flushed != 1))); - /* don't count this interface for promisc/allmulti while it is down */ + /* don't count this interface for allmulti while it is down */ if (sdata->flags & IEEE80211_SDATA_ALLMULTI) atomic_dec(&local->iff_allmultis);