Merge upstream v3.4.0

This merges upstream's iproute2 version 3.4.0.

The merge incorporates the following commits:

commit db70d91c7859700f9febf9bad8c29681bf9ac711
Author: Stephen Hemminger <shemminger@vyatta.com>
Date:   Mon May 21 14:12:19 2012 -0700

    v3.4.0

commit 9fc56974acc5bef7a2bb0d0402c74f5d7cf6b3d5
Author: Andreas Henriksson <andreas@fatal.se>
Date:   Mon May 21 15:48:06 2012 +0200

    iproute2: trivial fix of ip link syntax in manpage

    Reported by Ivan Vilata i Balaguer <ivan@selidor.net>
    found that the description of the `ip link add` command in the manpage
    is outdated regarding the compulsory `link DEVICE` option.
    For instance, `ip  link help` says:
        Usage: ip link add [link DEV] [ name ] NAME
         ...
    But the manpage still says:
         ip link add link DEVICE [ name ] NAME

    (Trying to provide a `link` option e.g. under an LXC container can frustrate
     the creation of dummy devices which don't need an actual device.)

    The syntax of the "ip link help" output was fixed in commit
    "iproute2: Fix usage and man page for 'ip link'" (a22e92951d).
    This updates the manpage to mark "link DEVICE" as an optional
    argument there as well.

      http://bugs.debian.org/673171

    Signed-off-by: Andreas Henriksson <andreas@fatal.se>

commit e6232cf647b4a2a8861ec5ad3d37973237bd764e
Author: Vijay Subramanian <subramanian.vijay@gmail.com>
Date:   Thu May 3 13:15:46 2012 -0700

    Update man8 Makefile

    Commit (761a1e60 iproute2 - Split up manual page installation )
    introduced man/man8/Makefile but did not add all the man pages.
    This patch adds the missing man pages for installation.

    Signed-off-by: Vijay Subramanian <subramanian.vijay@gmail.com>

commit 6121e1fef859e0063e26f83af0a3e15ab5453017
Author: James Chapman <jchapman@katalix.com>
Date:   Tue May 1 15:25:23 2012 +0100

    iproute2: add ip-l2tp man page

    Add a man page to cover the "ip l2tp" commands. Add a reference to it
    in the main ip page.

    This version removes the unnecessary setting of promiscuous mode
    in the examples.

    Signed-off-by: James Chapman <jchapman@katalix.com>

commit 910b039771dd655e53bccaea6e82735718ab4e61
Author: Shan Wei <shanwei88@gmail.com>
Date:   Thu May 3 16:39:52 2012 +0800

    ss: use new INET_DIAG_SKMEMINFO option to get more memory information for tcp socket

    INET_DIAG_SKMEMINFO is used to monitor socket memory information
    which contains more information than INET_DIAG_MEMINFO.

    -m option is retained for old kernel that don't surpport INET_DIAG_SKMEMINFO.

    Signed-off-by: Shan Wei <davidshan@tencent.com>

commit e2780880761df1ab1e8249653e9a18d19d66ae81
Author: Stephen Hemminger <shemminger@vyatta.com>
Date:   Thu Apr 26 08:06:38 2012 -0700

    Revert "iproute2: allow IPv6 addresses for l2tp local and remote parameters"

    This reverts commit 16eba34485b7275f1b72d6c480d7062127617370.
    Hold off until next release.

commit 16eba34485b7275f1b72d6c480d7062127617370
Author: Chris Elston <celston@katalix.com>
Date:   Fri Apr 20 01:29:42 2012 +0000

    iproute2: allow IPv6 addresses for l2tp local and remote parameters

    Adds support for parsing IPv6 addresses to the parameters local and
    remote in the l2tp commands. Requires netlink attributes L2TP_ATTR_IP6_SADDR
    and L2TP_ATTR_IP6_DADDR, added in a required kernel patch already submitted
    to netdev.

    Also enables printing of IPv6 addresses returned by the L2TP_CMD_TUNNEL_GET
    request.

    Signed-off-by: Chris Elston <celston@katalix.com>
    Signed-off-by: James Chapman <jchapman@katalix.com>

commit 5c434a9e5a5eafec09ec9939b255948843423f80
Author: Christoph J. Thompson <cjsthompson@gmail.com>
Date:   Thu Mar 1 17:46:26 2012 +0100

    iproute2 - Fix up and simplify variables pointing to install directories

    Define where is the are located the iproute2 config files.
    Get rid of trailing slashes for paths in several file.

    Signed-off-by: Christoph J. Thompson <cjsthompson@gmail.com>

commit 761a1e602862b5f26b4e7e748fe51303a628958f
Author: Christoph J. Thompson <cjsthompson@gmail.com>
Date:   Thu Mar 1 17:45:45 2012 +0100

    iproute2 - Split up manual page installation

    Generate manual pages based on where the config files are installed.
    Add missing manual pages for utilities which are links to other binaries.
    Make tc-pfifo.8 a real file that points to tc-bfifo.8 instead of symlink
    which causes problems with compressing manual pages.

    Signed-off-by: Christoph J. Thompson <cjsthompson@gmail.com>

commit c8610020b802a63cbf463b7d31f03a86f4acaa04
Author: Christoph J. Thompson <cjsthompson@gmail.com>
Date:   Thu Mar 1 06:45:17 2012 +0000

    iproute2 - Split up cflags

    Allows setting optimisation flags at compile time without patching the Makefile.

    modified:   Makefile

    Signed-off-by: Christoph J. Thompson <cjsthompson@gmail.com>

commit fb72129b78ac97433bf38da2b233a48358e30fac
Author: Christoph J. Thompson <cjsthompson@gmail.com>
Date:   Thu Mar 1 06:44:43 2012 +0000

    iproute2 - Don't hardcode the path to config files

    Allows using an alternate path for config files.

    Signed-off-by: Christoph J. Thompson <cjsthompson@gmail.com>

commit bd886ebb1ffd84301caa2341b671df9a9e2db4c9
Author: Rose, Gregory V <gregory.v.rose@intel.com>
Date:   Tue Feb 21 10:43:09 2012 +0000

    iproute2: Add netlink attribute to filter dump requests

    Add a new netlink attribute type to the dump request to allow
    filtering of the information returned for the respective matching
    interfaces.  At this time the only filter defined is to request
    virtual function (VF) device info for interfaces that attached VFs.

    It will also be possible to extend the request with other yet to be
    defined netlink attributes in the future.

    Signed-off-by: Greg Rose <gregory.v.rose@intel.com>

commit 29cea29df0dfe45562fd42673e26608d25180eee
Author: Stephen Hemminger <shemminger@vyatta.com>
Date:   Tue Apr 10 09:11:21 2012 -0700

    Merge in 3.3-rc2 kernel headers

commit 9fb6dc2bef427f13ad794cad187cda60be1cc06e
Author: Florian Westphal <fw@strlen.de>
Date:   Sun Apr 8 12:34:14 2012 +0000

    tc: man: choke counts packets, not bytes

commit 930a75f9257a3e00fcfede94de5a4516fe34bd22
Author: Eric Dumazet <eric.dumazet@gmail.com>
Date:   Tue Apr 10 09:00:16 2012 -0700

    Fix ss if INET_DIAG not enabled in kernel

    If kernel doesn't have INET_DIAG and using newish version of iproute
    nothing would be displayed.

commit ff24746cca1ef0c92d46614158e6672acd6b63d3
Author: Stephen Hemminger <shemminger@vyatta.com>
Date:   Tue Apr 10 08:47:55 2012 -0700

    Convert to use rta_getattr_ functions

    User new functions (inspired by libmnl) to do type safe access
    of routeing attributes

commit 49b730d7b237a3c0b2361e77877228199f32cf9c
Author: Jorge Boncompte [DTI2] <jorge@dti2.net>
Date:   Tue Apr 10 08:23:59 2012 -0700

    iproute: show metrics as an unsigned value

    Avoids showing negative metrics.

    Signed-off-by: Jorge Boncompte [DTI2] <jorge@dti2.net>

commit 4ccfb44dfbe4bf34130cf601a2a59152f4eec816
Author: Stephen Hemminger <stephen.hemminger@vyatta.com>
Date:   Thu Apr 5 15:10:19 2012 -0700

    Make link mode case independent

    The link mode is printed in upper case, and following the general
    rule that ip command output should work on input, allow either case.

commit 4f2fdd44b6694f713aa638cc2222a2d7d17dfe5f
Author: Stephen Hemminger <stephen.hemminger@vyatta.com>
Date:   Thu Apr 5 15:08:57 2012 -0700

    Add ability to set link state with ip

    Exposes existing netlink operations to modify link state of devices.

commit ae5555d3342299252b8690ead236694b7dc660c9
Author: João Valverde <jpv950@gmail.com>
Date:   Mon Mar 26 21:00:08 2012 +0100

    ipl2tp: allow setting session interface name

    Hi,

    I've attached a trivial patch for iproute2 to allow naming interfaces
    created with "ip l2tp add session".

    I believe patches should go through the netdev mailing list but this
    patch is so small I figured that would just add noise. Hope that's OK.

    Originally I thought I would need a bigger patch and was going to take a
    stab at implementing something like

    ip l2tp add tunnel L2TP_TUNNEL_ARGS
    ip link add name NAME  [ LINK_OPTS ] type l2tp L2TP_SESSION_ARGS

    (a better interface IMHO) but all the code was there already, all that I
    needed to add was option parsing.

    Thanks,

    João Valverde

    From fd8c3b712527d2e959aeabc6f6b71a9910e7be7e Mon Sep 17 00:00:00 2001
    From: =?UTF-8?q?Jo=C3=A3o=20Valverde?= <joao.valverde@ist.utl.pt>
    Date: Mon, 26 Mar 2012 18:30:56 +0100
    Subject: [PATCH] ipl2tp: allow setting session interface name

Change-Id: I7e56b18a7cebb0600aee3e6502251b996f9cac05