Ensure the Data FIN is in sequence before queuing

If the data-fin arrives before other segments it will be queued via
mptcp_queue_skb without testing tp->rcv_nxt. This can end the stream
abruptly or can cause the subflow to be reset.
This version of the patch incorporates suggestions from Christoph Paasch
(tcp_ofo_queue needs to be amended so as not to remove the data-fin).

Signed-off-by: Catalin Nicutar <catalin.nicutar@gmail.com>
Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>
Fix: increase delay for subflow close

Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>
Send reset upon request-sock failure

Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>
Cleanup

Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>
Fix: Send FIN directly when closing subflow immediatly

Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>
UBUNTU: Start new release

Ignore: yes
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
UBUNTU: Bump ABI

Ignore: yes
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
dsa: Change dsa_uses_{dsa, trailer}_tags() into inline functions

BugLink: http://bugs.launchpad.net/bugs/1004148

eth_type_trans() will use these functions if DSA is enabled, which
blocks building DSA as a module.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit cf50dcc24f82a6dc2bce523eec2a979eb1b106e2)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Export functions from core to modules

BugLink: http://bugs.launchpad.net/bugs/1004148

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit ad293b8a218ca13a9ee3e3c98137fa301987577c)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Combine core and tagging code

BugLink: http://bugs.launchpad.net/bugs/1004148

These files have circular dependencies, so if we make DSA modular then
they must be built into the same module.  Therefore, link them
together and merge their respective module init and exit functions.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 7df899c36cf09678bdef1824ce591ef4ac0e9864)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
mv88e6xxx: Combine mv88e6131 and mv88e612_61_65 drivers

BugLink: http://bugs.launchpad.net/bugs/1004148

These drivers share a lot of code, so if we make them modular they
should be built into the same module.  Therefore, link them together
and merge their respective module init and exit functions.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 98e673080bd90b9338428be92dd3597798aac3ed)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Define module author, description, license and aliases for drivers

BugLink: http://bugs.launchpad.net/bugs/1004148

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 3d825ede8c79a4799a6a3c34719551c7c1908b96)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Allow core and drivers to be built as modules

BugLink: http://bugs.launchpad.net/bugs/1004148

Change the kconfig types to tristate and adjust the condition for
declaring net_device::dsa_ptr to allow for this.

Adjust the makefile so that if NET_DSA_MV88E6123_61_65=y and
NET_DSA_MV88E6131=m or vice versa then both drivers are built-in.  We
could leave these options as bool and make NET_DSA_MV88E6XXX a
user-selected option, but that would break existing configurations.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 34a430d7bd26b35ca3a7d3fc83663de8ea6e33f6)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Remove unnecessary exports

BugLink: http://bugs.launchpad.net/bugs/1004148

I mistakenly exported functions from slave.c that are only called from
dsa.c, part of the same module.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Acked-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit fa67a04497c03a1ead12cd896262de14980311e8)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Move all definitions needed by drivers into <net/dsa.h>

BugLink: http://bugs.launchpad.net/bugs/1004148

Any headers included by drivers should be under include/, and
any definitions they use are not really private to the core as
the name "dsa_priv.h" suggests.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Acked-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit c8f0b86996c88081095124d16b869e8d8a1c02c5)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Move switch drivers to new directory drivers/net/dsa

BugLink: http://bugs.launchpad.net/bugs/1004148

Support for specific hardware belongs under drivers/net/ not net/.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Acked-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 3b1588593097b7d71f44c4b7b435bf28924316e0)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
dsa: Add reporting of silicon revision for Marvell 88E6123/88E6161/88E6165 switches.

BugLink: http://bugs.launchpad.net/bugs/1004148

Add reporting of silicon revision during the probe function for Marvell 88E6123/88E6161/88E6165 switches.

Signed-off-by: Chris Healy <cphealy@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit edd664bbba53f771d4a6d4559ed6e1ff48b46406)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
drivers/net: dsa/mv88e6xxx.c files need linux/module.h

BugLink: http://bugs.launchpad.net/bugs/1004148

An implicit instance of module.h leaked back into existence
and was masking the fact that these drivers weren't calling
out the include for itself.  Fix the drivers before we remove
the implicit include path via net/netprio_cgroup.h file.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 2bbba277a554431a426e81f37d5c50ab6216c07d)
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
UBUNTU: [Config] CONFIG_NET_DSA=m

BugLink: http://bugs.launchpad.net/bugs/1004148

The Distributed Switch Architecture is experimental. According
to policy it should not be built-in. Furthermore, this transport
layer module will get loaded by one of the dependent device
drivers under drivers/net/dsa.

Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Acked-by: Herton Krzesinski <herton.krzesinski@canonical.com>
UBUNTU: SAUCE: dell-laptop: rfkill blacklist Dell XPS 13z, 15

BugLink: https://bugs.launchpad.net/bugs/901410

On Dell XPS 13z (L321X) and 15 (L502X), switching off Bluetooth also
disables wifi.  Fix by adding those models to the dell_blacklist table.

Signed-off-by: Mario Limonciello <mario_limonciello@dell.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Acked-by: Seth Forshee <seth.forshee@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>