1. 07 Apr, 2015 1 commit
  2. 06 Apr, 2015 10 commits
    • Linus Torvalds's avatar
      Linux 4.0-rc7 · f22e6e84
      Linus Torvalds authored
      f22e6e84
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 442bb4ba
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) In TCP, don't register an FRTO for cumulatively ACK'd data that was
          previously SACK'd, from Neal Cardwell.
      
       2) Need to hold RNL mutex in ipv4 multicast code namespace cleanup,
          from Cong WANG.
      
       3) Similarly we have to hold RNL mutex for fib_rules_unregister(), also
          from Cong WANG.
      
       4) Revert and rework netns nsid allocation fix, from Nicolas Dichtel.
      
       5) When we encapsulate for a tunnel device, skb->sk still points to the
          user socket.  So this leads to cases where we retraverse the
          ipv4/ipv6 output path with skb->sk being of some other address
          family (f.e. AF_PACKET).  This can cause things to crash since the
          ipv4 output path is dereferencing an AF_PACKET socket as if it were
          an ipv4 one.
      
          The short term fix for 'net' and -stable is to elide these socket
          checks once we've entered an encapsulation sequence by testing
          xmit_recursion.
      
          Longer term we have a better solution wherein we pass the tunnel's
          socket down through the output paths, but that is way too invasive
          for 'net' and -stable.
      
          From Hannes Frederic Sowa.
      
       6) l2tp_init() failure path forgets to unregister per-net ops, from
          Cong WANG.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        net/mlx4_core: Fix error message deprecation for ConnectX-2 cards
        net: dsa: fix filling routing table from OF description
        l2tp: unregister l2tp_net_ops on failure path
        mvneta: dont call mvneta_adjust_link() manually
        ipv6: protect skb->sk accesses from recursive dereference inside the stack
        netns: don't allocate an id for dead netns
        Revert "netns: don't clear nsid too early on removal"
        ip6mr: call del_timer_sync() in ip6mr_free_table()
        net: move fib_rules_unregister() under rtnl lock
        ipv4: take rtnl_lock and mark mrt table as freed on namespace cleanup
        tcp: fix FRTO undo on cumulative ACK of SACKed range
        xen-netfront: transmit fully GSO-sized packets
      442bb4ba
    • Jack Morgenstein's avatar
      net/mlx4_core: Fix error message deprecation for ConnectX-2 cards · fde913e2
      Jack Morgenstein authored
      Commit 1daa4303 ("net/mlx4_core: Deprecate error message at
      ConnectX-2 cards startup to debug") did the deprecation only for port 1
      of the card. Need to deprecate for port 2 as well.
      
      Fixes: 1daa4303 ("net/mlx4_core: Deprecate error message at ConnectX-2 cards startup to debug")
      Signed-off-by: default avatarJack Morgenstein <jackm@dev.mellanox.co.il>
      Signed-off-by: default avatarAmir Vadai <amirv@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      fde913e2
    • Pavel Nakonechny's avatar
      net: dsa: fix filling routing table from OF description · 30303813
      Pavel Nakonechny authored
      According to description in 'include/net/dsa.h', in cascade switches
      configurations where there are more than one interconnected devices,
      'rtable' array in 'dsa_chip_data' structure is used to indicate which
      port on this switch should be used to send packets to that are destined
      for corresponding switch.
      
      However, dsa_of_setup_routing_table() fills 'rtable' with port numbers
      of the _target_ switch, but not current one.
      
      This commit removes redundant devicetree parsing and adds needed port
      number as a function argument. So dsa_of_setup_routing_table() now just
      looks for target switch number by parsing parent of 'link' device node.
      
      To remove possible misunderstandings with the way of determining target
      switch number, a corresponding comment was added to the source code and
      to the DSA device tree bindings documentation file.
      
      This was tested on a custom board with two Marvell 88E6095 switches with
      following corresponding routing tables: { -1, 10 } and { 8, -1 }.
      Signed-off-by: default avatarPavel Nakonechny <pavel.nakonechny@skitlab.ru>
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      30303813
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 9e441639
      Linus Torvalds authored
      Pull input fixes from Dmitry Torokhov:
       "Updates for the input subsystem - two more tweaks for ALPS driver to
        work out kinks after splitting the touchpad, trackstick, and potential
        external PS/2 mouse into separate input devices.
      
        Changes to support ALPS SS4 devices (protocol V8) will be coming in
        4.1..."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: alps - document stick behavior for protocol V2
        Input: alps - report V2 Dualpoint Stick events via the right evdev node
        Input: alps - report interleaved bare PS/2 packets via dev3
      9e441639
    • WANG Cong's avatar
      67e04c29
    • Michael S. Tsirkin's avatar
      virtio: document queue state logic · 60302ff6
      Michael S. Tsirkin authored
      commit d631b94e
          virtio: change comment in transmit
      
      started clarifying the logic behind queue state management,
      but introduced an inaccuracy: TX_BUSY does not cause
      a BUG message.
      
      Clean this up some more, explaining the tradeoffs in detail.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      60302ff6
    • Alexei Starovoitov's avatar
      tc: bpf: add checksum helpers · 91bc4822
      Alexei Starovoitov authored
      Commit 608cd71a ("tc: bpf: generalize pedit action") has added the
      possibility to mangle packet data to BPF programs in the tc pipeline.
      This patch adds two helpers bpf_l3_csum_replace() and bpf_l4_csum_replace()
      for fixing up the protocol checksums after the packet mangling.
      
      It also adds 'flags' argument to bpf_skb_store_bytes() helper to avoid
      unnecessary checksum recomputations when BPF programs adjusting l3/l4
      checksums and documents all three helpers in uapi header.
      
      Moreover, a sample program is added to show how BPF programs can make use
      of the mangle and csum helpers.
      Signed-off-by: default avatarAlexei Starovoitov <ast@plumgrid.com>
      Acked-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      91bc4822
    • Stas Sergeev's avatar
      mvneta: dont call mvneta_adjust_link() manually · ecf7b361
      Stas Sergeev authored
      mvneta_adjust_link() is a callback for of_phy_connect() and should
      not be called directly. The result of calling it directly is as below:
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ecf7b361
    • hannes@stressinduktion.org's avatar
      ipv6: protect skb->sk accesses from recursive dereference inside the stack · f60e5990
      hannes@stressinduktion.org authored
      We should not consult skb->sk for output decisions in xmit recursion
      levels > 0 in the stack. Otherwise local socket settings could influence
      the result of e.g. tunnel encapsulation process.
      
      ipv6 does not conform with this in three places:
      
      1) ip6_fragment: we do consult ipv6_npinfo for frag_size
      
      2) sk_mc_loop in ipv6 uses skb->sk and checks if we should
         loop the packet back to the local socket
      
      3) ip6_skb_dst_mtu could query the settings from the user socket and
         force a wrong MTU
      
      Furthermore:
      In sk_mc_loop we could potentially land in WARN_ON(1) if we use a
      PF_PACKET socket ontop of an IPv6-backed vxlan device.
      
      Reuse xmit_recursion as we are currently only interested in protecting
      tunnel devices.
      
      Cc: Jiri Pirko <jiri@resnulli.us>
      Signed-off-by: default avatarHannes Frederic Sowa <hannes@stressinduktion.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f60e5990
  3. 05 Apr, 2015 3 commits
  4. 04 Apr, 2015 13 commits
  5. 03 Apr, 2015 13 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 1cced501
      Linus Torvalds authored
      Pull input subsystem fixes from Dmitry Torokhov:
       "A fix for ALPS driver for issue introduced in the latest update and a
        tweak for yet another Lenovo box in Synaptics.
      
        There will be more ALPS tweaks coming.."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: define INPUT_PROP_ACCELEROMETER behavior
        Input: synaptics - fix min-max quirk value for E440
        Input: synaptics - add quirk for Thinkpad E440
        Input: ALPS - fix max coordinates for v5 and v7 protocols
        Input: add MT_TOOL_PALM
      1cced501
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 57a9d89d
      Linus Torvalds authored
      Pull block layer fix from Jens Axboe:
       "Just one patch in this pull request, fixing a regression caused by a
        'mathematically correct' change to lcm()"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: fix blk_stack_limits() regression due to lcm() change
      57a9d89d
    • Herbert Xu's avatar
      test_rhashtable: Remove bogus max_size setting · b81b7be6
      Herbert Xu authored
      Now that resizing is completely automatic, we need to remove
      the max_size setting or the test will fail.
      Reported-by: default avatarFengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Acked-by: default avatarThomas Graf <tgraf@suug.ch>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b81b7be6
    • David S. Miller's avatar
      Merge branch 'mvneta-sgmii' · b98d8075
      David S. Miller authored
      Stas Sergeev says:
      
      ====================
      mvneta: SGMII-based in-band link state signaling
      
      Currently the fixed-link DT binding is pre-configured and
      cannot be changed in run-time. This means the cable unplug
      events are not being detected, and the link parameters can't
      be negotiated.
      
      The following patches are needed when mvneta is used
      in fixed-link mode (without MDIO).
      They add an API to fixed_phy that allows to update
      status, and use that API in the mvneta driver when parsing
      the SGMII in-band status.
      
      There is also another implementation that doesn't add any API
      and does everything in mvneta driver locally:
      https://lkml.org/lkml/2015/3/31/327
      I'll let people decide which approach is better.
      No strong opinion on my side.
      ====================
      Signed-off-by: default avatarStas Sergeev <stsp@users.sourceforge.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b98d8075
    • Stas Sergeev's avatar
      mvneta: implement SGMII-based in-band link state signaling · 898b2970
      Stas Sergeev authored
      When MDIO bus is unavailable (common setup for SGMII), the in-band
      signaling must be used to correctly track link state.
      This patch enables the in-band status delivery for link state changes, namely:
      - link up/down
      - link speed
      - duplex full/half
      fixed_phy_update_state() is used to update phy status.
      
      CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
      CC: Florian Fainelli <f.fainelli@gmail.com>
      CC: netdev@vger.kernel.org
      CC: linux-kernel@vger.kernel.org
      Signed-off-by: default avatarStas Sergeev <stsp@users.sourceforge.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      898b2970
    • Stas Sergeev's avatar
      add fixed_phy_update_state() - update state of fixed_phy · a3bebdce
      Stas Sergeev authored
      Currently fixed_phy uses a callback to periodically poll the link state.
      This patch adds the fixed_phy_update_state() API.
      It solves the following problems:
      - On link state interrupt, MAC driver can't update status.
      Instead it needs to provide the callback to periodically query
      the HW about the link state. It is more efficient to update status
      after interrupt.
      - The callback needs to be unregistered before phy_disconnect(),
      or otherwise it will be called with net_dev==NULL. phy_disconnect()
      does not have enough info to unregister the callback automatically.
      - The callback needs to be registered before of_phy_connect() to
      avoid running with outdated state, but of_phy_connect() returns the
      phy_device pointer, which is needed to register the callback. Registering
      it before of_phy_connect() will therefore require a hack to get the
      pointer earlier.
      
      Overall, this addition makes the subsequent patch that implements
      SGMII link status for mvneta, much cleaner.
      
      CC: Florian Fainelli <f.fainelli@gmail.com>
      CC: netdev@vger.kernel.org
      CC: linux-kernel@vger.kernel.org
      Signed-off-by: default avatarStas Sergeev <stsp@users.sourceforge.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a3bebdce
    • Daniel Borkmann's avatar
      ebpf: add skb->priority to offset map for usage in {cls, act}_bpf · bcad5718
      Daniel Borkmann authored
      This adds the ability to read out the skb->priority from an eBPF
      program, so that it can be taken into account from a tc filter
      or action for the use-case where the priority is not being used
      to directly override the filter classification in a qdisc, but
      to tag traffic otherwise for the classifier; the priority can be
      assigned from various places incl. user space, in future we may
      also mangle it from an eBPF program.
      Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Cc: Alexei Starovoitov <ast@plumgrid.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bcad5718
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 567cfea9
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "Misc fixes: a SYSRET single-stepping fix, a dmi-scan robustization
        fix, a reboot quirk and a kgdb fixlet"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        kgdb/x86: Fix reporting of 'si' in kgdb on x86_64
        x86/asm/entry/64: Disable opportunistic SYSRET if regs->flags has TF set
        x86/reboot: Add ASRock Q1900DC-ITX mainboard reboot quirk
        MAINTAINERS: Change the x86 microcode loader maintainer
        firmware: dmi_scan: Prevent dmi_num integer overflow
      567cfea9
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ec2e76b4
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "Two x86 Intel PMU constraint handling fixes"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel: Fix Haswell CYCLE_ACTIVITY.* counter constraints
        perf/x86/intel: Filter branches for PEBS event
      ec2e76b4
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux · ccc20a33
      Linus Torvalds authored
      Pull devicetree fix from Grant Likely:
       "Simple bugfix for bad device tree data on the PA-Semi platform"
      
      * tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux:
        drivers/of: Add empty ranges quirk for PA-Semi
      ccc20a33
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · b010a0f7
      Linus Torvalds authored
      Pull CIFS fixes from Steve French:
       "A set of small cifs fixes fixing a memory leak, kernel oops, and
        infinite loop (and some spotted by Coverity)"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        Fix warning
        Fix another dereference before null check warning
        CIFS: session servername can't be null
        Fix warning on impossible comparison
        Fix coverity warning
        Fix dereference before null check warning
        Don't ignore errors on encrypting password in SMBTcon
        Fix warning on uninitialized buftype
        cifs: potential memory leaks when parsing mnt opts
        cifs: fix use-after-free bug in find_writable_file
        cifs: smb2_clone_range() - exit on unhandled error
      b010a0f7
    • Alexander Duyck's avatar
      jhash: Update jhash_[321]words functions to use correct initval · 2e7056c4
      Alexander Duyck authored
      Looking over the implementation for jhash2 and comparing it to jhash_3words
      I realized that the two hashes were in fact very different.  Doing a bit of
      digging led me to "The new jhash implementation" in which lookup2 was
      supposed to have been replaced with lookup3.
      
      In reviewing the patch I noticed that jhash2 had originally initialized a
      and b to JHASH_GOLDENRATIO and c to initval, but after the patch a, b, and
      c were initialized to initval + (length << 2) + JHASH_INITVAL.  However the
      changes in jhash_3words simply replaced the initialization of a and b with
      JHASH_INITVAL.
      
      This change corrects what I believe was an oversight so that a, b, and c in
      jhash_3words all have the same value added consisting of initval + (length
      << 2) + JHASH_INITVAL so that jhash2 and jhash_3words will now produce the
      same hash result given the same inputs.
      
      Fixes: 60d509c8 ("The new jhash implementation")
      Signed-off-by: default avatarAlexander Duyck <alexander.h.duyck@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2e7056c4
    • David S. Miller's avatar
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue · 5c5e0ad3
      David S. Miller authored
      Jeff Kirsher says:
      
      ====================
      Intel Wired LAN Driver Updates 2015-04-03
      
      This series contains updates to i40e and i40evf only.
      
      Anjali provides a fix for verifying outer UDP receive checksum.  Also
      adds helpful information to display when figuring out the cause of
      HMC errors.
      
      Mitch provides a fix to prevent a malicious or buggy VF driver from
      sending an invalid index into the VSI array which could panic the host.
      Cleans up the code where a function was moved, but the message did
      not follow.  Adds protection to the VLAN filter list, same as the
      MAC filter list, to protect from corruption if the watchdog happens
      to run at the same time as a VLAN filter is being added/deleted.
      
      Jesse changes several memcpy() statements to struct assignments which
      are type safe and preferable.  Fixed a bug when skb allocation fails,
      where we should not continue using the skb pointer.  Also fixed a void
      function in FCoE which should not be returning anything.
      
      Greg fixes both i40e and i40evf to set the Ethernet protocol correctly
      when transmit VLAN offloads are disabled.
      
      Shannon fixes up VLAN messages when ports are added or removed, which
      were giving bogus index info.  Also aligned the message text style
      with other messages in the driver.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5c5e0ad3