1. 30 Mar, 2016 26 commits
  2. 20 Mar, 2016 4 commits
  3. 19 Mar, 2016 10 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next · 1200b680
      Linus Torvalds authored
      Pull networking updates from David Miller:
       "Highlights:
      
         1) Support more Realtek wireless chips, from Jes Sorenson.
      
         2) New BPF types for per-cpu hash and arrap maps, from Alexei
            Starovoitov.
      
         3) Make several TCP sysctls per-namespace, from Nikolay Borisov.
      
         4) Allow the use of SO_REUSEPORT in order to do per-thread processing
         of incoming TCP/UDP connections.  The muxing can be done using a
         BPF program which hashes the incoming packet.  From Craig Gallek.
      
         5) Add a multiplexer for TCP streams, to provide a messaged based
            interface.  BPF programs can be used to determine the message
            boundaries.  From Tom Herbert.
      
         6) Add 802.1AE MACSEC support, from Sabrina Dubroca.
      
         7) Avoid factorial complexity when taking down an inetdev interface
            with lots of configured addresses.  We were doing things like
            traversing the entire address less for each address removed, and
            flushing the entire netfilter conntrack table for every address as
            well.
      
         8) Add and use SKB bulk free infrastructure, from Jesper Brouer.
      
         9) Allow offloading u32 classifiers to hardware, and implement for
            ixgbe, from John Fastabend.
      
        10) Allow configuring IRQ coalescing parameters on a per-queue basis,
            from Kan Liang.
      
        11) Extend ethtool so that larger link mode masks can be supported.
            From David Decotigny.
      
        12) Introduce devlink, which can be used to configure port link types
            (ethernet vs Infiniband, etc.), port splitting, and switch device
            level attributes as a whole.  From Jiri Pirko.
      
        13) Hardware offload support for flower classifiers, from Amir Vadai.
      
        14) Add "Local Checksum Offload".  Basically, for a tunneled packet
            the checksum of the outer header is 'constant' (because with the
            checksum field filled into the inner protocol header, the payload
            of the outer frame checksums to 'zero'), and we can take advantage
            of that in various ways.  From Edward Cree"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1548 commits)
        bonding: fix bond_get_stats()
        net: bcmgenet: fix dma api length mismatch
        net/mlx4_core: Fix backward compatibility on VFs
        phy: mdio-thunder: Fix some Kconfig typos
        lan78xx: add ndo_get_stats64
        lan78xx: handle statistics counter rollover
        RDS: TCP: Remove unused constant
        RDS: TCP: Add sysctl tunables for sndbuf/rcvbuf on rds-tcp socket
        net: smc911x: convert pxa dma to dmaengine
        team: remove duplicate set of flag IFF_MULTICAST
        bonding: remove duplicate set of flag IFF_MULTICAST
        net: fix a comment typo
        ethernet: micrel: fix some error codes
        ip_tunnels, bpf: define IP_TUNNEL_OPTS_MAX and use it
        bpf, dst: add and use dst_tclassid helper
        bpf: make skb->tc_classid also readable
        net: mvneta: bm: clarify dependencies
        cls_bpf: reset class and reuse major in da
        ldmvsw: Checkpatch sunvnet.c and sunvnet_common.c
        ldmvsw: Add ldmvsw.c driver code
        ...
      1200b680
    • Linus Torvalds's avatar
      Merge branch 'for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 6b5f04b6
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
       "cgroup changes for v4.6-rc1.  No userland visible behavior changes in
        this pull request.  I'll send out a separate pull request for the
        addition of cgroup namespace support.
      
         - The biggest change is the revamping of cgroup core task migration
           and controller handling logic.  There are quite a few places where
           controllers and tasks are manipulated.  Previously, many of those
           places implemented custom operations for each specific use case
           assuming specific starting conditions.  While this worked, it makes
           the code fragile and difficult to follow.
      
           The bulk of this pull request restructures these operations so that
           most related operations are performed through common helpers which
           implement recursive (subtrees are always processed consistently)
           and idempotent (they make cgroup hierarchy converge to the target
           state rather than performing operations assuming specific starting
           conditions).  This makes the code a lot easier to understand,
           verify and extend.
      
         - Implicit controller support is added.  This is primarily for using
           perf_event on the v2 hierarchy so that perf can match cgroup v2
           path without requiring the user to do anything special.  The kernel
           portion of perf_event changes is acked but userland changes are
           still pending review.
      
         - cgroup_no_v1= boot parameter added to ease testing cgroup v2 in
           certain environments.
      
         - There is a regression introduced during v4.4 devel cycle where
           attempts to migrate zombie tasks can mess up internal object
           management.  This was fixed earlier this week and included in this
           pull request w/ stable cc'd.
      
         - Misc non-critical fixes and improvements"
      
      * 'for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (44 commits)
        cgroup: avoid false positive gcc-6 warning
        cgroup: ignore css_sets associated with dead cgroups during migration
        Documentation: cgroup v2: Trivial heading correction.
        cgroup: implement cgroup_subsys->implicit_on_dfl
        cgroup: use css_set->mg_dst_cgrp for the migration target cgroup
        cgroup: make cgroup[_taskset]_migrate() take cgroup_root instead of cgroup
        cgroup: move migration destination verification out of cgroup_migrate_prepare_dst()
        cgroup: fix incorrect destination cgroup in cgroup_update_dfl_csses()
        cgroup: Trivial correction to reflect controller.
        cgroup: remove stale item in cgroup-v1 document INDEX file.
        cgroup: update css iteration in cgroup_update_dfl_csses()
        cgroup: allocate 2x cgrp_cset_links when setting up a new root
        cgroup: make cgroup_calc_subtree_ss_mask() take @this_ss_mask
        cgroup: reimplement rebind_subsystems() using cgroup_apply_control() and friends
        cgroup: use cgroup_apply_enable_control() in cgroup creation path
        cgroup: combine cgroup_mutex locking and offline css draining
        cgroup: factor out cgroup_{apply|finalize}_control() from cgroup_subtree_control_write()
        cgroup: introduce cgroup_{save|propagate|restore}_control()
        cgroup: make cgroup_drain_offline() and cgroup_apply_control_{disable|enable}() recursive
        cgroup: factor out cgroup_apply_control_enable() from cgroup_subtree_control_write()
        ...
      6b5f04b6
    • Eric Dumazet's avatar
      bonding: fix bond_get_stats() · fe30937b
      Eric Dumazet authored
      bond_get_stats() can be called from rtnetlink (with RTNL held)
      or from /proc/net/dev seq handler (with RCU held)
      
      The logic added in commit 5f0c5f73 ("bonding: make global bonding
      stats more reliable") kind of assumed only one cpu could run there.
      
      If multiple threads are reading /proc/net/dev, stats can be really
      messed up after a while.
      
      A second problem is that some fields are 32bit, so we need to properly
      handle the wrap around problem.
      
      Given that RTNL is not always held, we need to use
      bond_for_each_slave_rcu().
      
      Fixes: 5f0c5f73 ("bonding: make global bonding stats more reliable")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Andy Gospodarek <gospo@cumulusnetworks.com>
      Cc: Jay Vosburgh <j.vosburgh@gmail.com>
      Cc: Veaceslav Falico <vfalico@gmail.com>
      Reviewed-by: default avatarNikolay Aleksandrov <nikolay@cumulusnetworks.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      fe30937b
    • Eric Dumazet's avatar
      net: bcmgenet: fix dma api length mismatch · eee57723
      Eric Dumazet authored
      When un-mapping skb->data in __bcmgenet_tx_reclaim(),
      we must use the length that was used in original dma_map_single(),
      instead of skb->len that might be bigger (includes the frags)
      
      We simply can store skb_len into tx_cb_ptr->dma_len and use it
      at unmap time.
      
      Fixes: 1c1008c7 ("net: bcmgenet: add main driver file")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      eee57723
    • Eli Cohen's avatar
      net/mlx4_core: Fix backward compatibility on VFs · 76e39ccf
      Eli Cohen authored
      Commit 85743f1e ("net/mlx4_core: Set UAR page size to 4KB regardless
      of system page size") introduced dependency where old VF drivers without
      this fix fail to load if the PF driver runs with this commit.
      
      To resolve this add a module parameter which disables that functionality
      by default.  If both the PF and VFs are running with a driver with that
      commit the administrator may set the module param to true.
      
      The module parameter is called enable_4k_uar.
      
      Fixes: 85743f1e ('net/mlx4_core: Set UAR page size to 4KB ...')
      Signed-off-by: default avatarEli Cohen <eli@mellanox.com>
      Tested-by: default avatarAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      76e39ccf
    • Linus Torvalds's avatar
      Merge branch 'for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · fcab86ad
      Linus Torvalds authored
      Pull libata updates from Tejun Heo:
      
       - ahci grew runtime power management support so that the controller can
         be turned off if no devices are attached.
      
       - sata_via isn't dead yet.  It got hotplug support and more refined
         workaround for certain WD drives.
      
       - Misc cleanups.  There's a merge from for-4.5-fixes to avoid confusing
         conflicts in ahci PCI ID table.
      
      * 'for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        ata: ahci_xgene: dereferencing uninitialized pointer in probe
        AHCI: Remove obsolete Intel Lewisburg SATA RAID device IDs
        ata: sata_rcar: Use ARCH_RENESAS
        sata_via: Implement hotplug for VT6421
        sata_via: Apply WD workaround only when needed on VT6421
        ahci: Add runtime PM support for the host controller
        ahci: Add functions to manage runtime PM of AHCI ports
        ahci: Convert driver to use modern PM hooks
        ahci: Cache host controller version
        scsi: Drop runtime PM usage count after host is added
        scsi: Set request queue runtime PM status back to active on resume
        block: Add blk_set_runtime_active()
        ata: ahci_mvebu: add support for Armada 3700 variant
        libata: fix unbalanced spin_lock_irqsave/spin_unlock_irq() in ata_scsi_park_show()
        libata: support AHCI on OCTEON platform
      fcab86ad
    • Linus Torvalds's avatar
      Merge branch 'for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · ef504fa5
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
       "Three trivial workqueue changes"
      
      * 'for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: Fix comment for work_on_cpu()
        sched/core: Get rid of 'cpu' argument in wq_worker_sleeping()
        workqueue: Replace usage of init_name with dev_set_name()
      ef504fa5
    • Andreas Färber's avatar
      phy: mdio-thunder: Fix some Kconfig typos · e2ad1f97
      Andreas Färber authored
      Drop two extra occurrences of "on" in option title and help text.
      
      Fixes: 379d7ac7 ("phy: mdio-thunder: Add driver for Cavium Thunder SoC MDIO buses.")
      Cc: David Daney <david.daney@cavium.com>
      Signed-off-by: default avatarAndreas Färber <afaerber@suse.de>
      Acked-by: default avatarDavid Daney <david.daney@cavium.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e2ad1f97
    • Woojung Huh's avatar
      lan78xx: add ndo_get_stats64 · a59f8c5b
      Woojung Huh authored
      Add lan78xx_get_stats64 of ndo_get_stats64 to report
      all statistics counters including errors from HW statistics.
      
      Read from HW when auto suspend is disabled, use saved counter when
      auto suspend is enabled because periodic call to ndo_get_stats64
      prevents USB auto suspend.
      Signed-off-by: default avatarWoojung Huh <woojung.huh@microchip.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a59f8c5b
    • Woojung Huh's avatar
      lan78xx: handle statistics counter rollover · 20ff5565
      Woojung Huh authored
      Update to handle statistics counter rollover.
      Check statistics counter periodically and compensate it when
      counter value rolls over at max (20 or 32bits).
      
      Simple mechanism adjusts monitoring timer to allow USB auto suspend.
      Signed-off-by: default avatarWoojung Huh <woojung.huh@microchip.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      20ff5565