1. 05 11月, 2014 11 次提交
  2. 04 11月, 2014 12 次提交
    • E
      net: add rbnode to struct sk_buff · 56b17425
      Eric Dumazet 提交于
      Yaogong replaces TCP out of order receive queue by an RB tree.
      
      As netem already does a private skb->{next/prev/tstamp} union
      with a 'struct rb_node', lets do this in a cleaner way.
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Cc: Yaogong Wang <wygivan@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      56b17425
    • D
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next · 8ce0c825
      David S. Miller 提交于
      Jeff Kirsher says:
      
      ====================
      Intel Wired LAN Driver Updates 2014-11-03
      
      This series contains updates to i40e and i40evf.
      
      Akeem adds a check for i40e so that flow director flush and reinit are
      not done when flow director is not enabled.
      
      Mitch fixes the i40evf driver to properly handle multiple admin queue
      messages, by reinit the msg_size field each time we go through the loop.
      Without this, we may receive truncated messages due to the firmware
      thinking we have insufficient buffer size.  Also fixes the link checking
      logic to only check the carrier state if the interface is actually
      open, which allows link changes to be reported correctly without spamming
      the VFs.  Updates i40e to inset the VSI ID in the QTX_CTL register
      when configuring queues for VMDq VSIs.
      
      Paul adds support for 10G-base-T in i40evf.
      
      Jesse fixes i40e where the call to irq_dynamic_disable() was turning off
      the interrupt completely when trying to set ITR to 0 (for lowest
      moderation).
      
      Shannon removes debugfs dump stats function, since it was not being
      kept up-to-date and was redundant with the ethtool output.  Also, scales
      back the LAN MSIx usage to force queue/vector sharing and leave some
      vectors for Flow Director, VMDq, etc. when there are more cores than
      vectors available to the PF.  Cleans up the error reporting for
      get_lump() resource tracking errors.  Also adds a check for the
      debug module parameter earlier to be able to catch the early configuration
      phase admin queue messages.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8ce0c825
    • S
      hamradio: 6pack: remove unnecessary check · ec5a0ec1
      Sudip Mukherjee 提交于
      this is check for dev is unnecessary, as we are already checking dev
      after allocating it via alloc_netdev, and jumping to label: out
      if it is NULL.
      Signed-off-by: NSudip Mukherjee <sudip@vectorindia.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ec5a0ec1
    • D
      PPC: bpf_jit_comp: add SKF_AD_PKTTYPE instruction · 4e235761
      Denis Kirjanov 提交于
      Add BPF extension SKF_AD_PKTTYPE to ppc JIT to load
      skb->pkt_type field.
      
      Before:
      [   88.262622] test_bpf: #11 LD_IND_NET 86 97 99 PASS
      [   88.265740] test_bpf: #12 LD_PKTTYPE 109 107 PASS
      
      After:
      [   80.605964] test_bpf: #11 LD_IND_NET 44 40 39 PASS
      [   80.607370] test_bpf: #12 LD_PKTTYPE 9 9 PASS
      
      CC: Alexei Starovoitov<alexei.starovoitov@gmail.com>
      CC: Michael Ellerman<mpe@ellerman.id.au>
      Cc: Matt Evans <matt@ozlabs.org>
      Signed-off-by: NDenis Kirjanov <kda@linux-powerpc.org>
      
      v2: Added test rusults
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4e235761
    • D
      Merge branch 'mlx4-next' · 547f2735
      David S. Miller 提交于
      Or Gerlitz says:
      
      ====================
      Mellanox ethernet driver update Oct-30-2014
      
      The 1st patch from Saeed fixes a bug in the last net-next batch where
      a VF could get access to set port configuration, the next patch from Amir
      fixes a race in the port VPI logic. Next are two performance patches from Ido.
      
      The patch to add checksum complete status on GRE and such packets was
      preceded with a patch that converted the driver to only use napi_gro_receive
      vs. the current code which goes through napi_gro_frags on it's usual track.
      Eric D. has some thoughts and suggestions on that change for which we
      want to take the time and consider, so for the time being dropped that
      patch and the ones that depend on it.
      
      Changes from V0:
        - have the caller to provide the __GFP_COLD hint to the service function
        - dropped the patch that changes the GRO logic and the subsequent dependent
          patches.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      547f2735
    • M
      net/mlx4_core: Add retrieval of CONFIG_DEV parameters · d475c95b
      Matan Barak 提交于
      Add code to issue CONFIG_DEV "get" firmware command.
      
      This command is used in order to obtain certain parameters used for
      supporting various RX checksumming options and vxlan UDP port.
      
      The GET operation is allowed for VFs too.
      Signed-off-by: NMatan Barak <matanb@mellanox.com>
      Signed-off-by: NShani Michaeli <shanim@mellanox.com>
      Signed-off-by: NOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d475c95b
    • I
      net/mlx4_en: Add __GFP_COLD gfp flags in alloc_pages · 1ab25f86
      Ido Shamay 提交于
      Needed in order to get cache cold pages (L3 flushed) for HW scatter.
      
      Otherwise memory may flush those entries when the packet comes from
      PCI, causing back pressure resulting in BW decrease.
      Signed-off-by: NIdo Shamay <idos@mellanox.com>
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1ab25f86
    • I
      net/mlx4_en: Remove RX buffers alignment to IP_ALIGN · 5f6e9800
      Ido Shamay 提交于
      When IP_ALIGN has a non zero value, hardware will write to a non aligned
      address. The only reader from this address is when copying the header
      from the first frag into the linear buffer (further access to the IP
      address will be from the linear buffer, in which the headers are
      aligned). Since the penalty of non align access by the hardware is
      greater than the software memcpy, changing the frag_align to always be 0.
      Signed-off-by: NIdo Shamay <idos@mellanox.com>
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5f6e9800
    • A
      net/mlx4_core: Protect port type setting by mutex · 0a984556
      Amir Vadai 提交于
      We need to protect set_port_type() for concurrency, as the sysfs code could
      call it from mutliple contexts in parallel.
      
      The port_mutex is not enough because we need to protect from concurrent
      modification of 'info' and stopping of the port sensing work.
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0a984556
    • S
      net/mlx4_core: Prevent VF from changing port configuration · 6e806699
      Saeed Mahameed 提交于
      Added wrapper to the ACCESS_REG command for handling guest HW
      registers access, preventing write operations, but do allow reads.
      
      This will prevent SRIOV guests to change port PTYS configuration,
      such as speed/advertised link modes.
      
      Fixes: adbc7ac5 ('net/mlx4_core: Introduce ACCESS_REG CMD [...]')
      Signed-off-by: NSaeed Mahameed <saeedm@mellanox.com>
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6e806699
    • E
      net: less interrupt masking in NAPI · d75b1ade
      Eric Dumazet 提交于
      net_rx_action() can mask irqs a single time to transfert sd->poll_list
      into a private list, for a very short duration.
      
      Then, napi_complete() can avoid masking irqs again,
      and net_rx_action() only needs to mask irq again in slow path.
      
      This patch removes 2 couples of irq mask/unmask per typical NAPI run,
      more if multiple napi were triggered.
      
      Note this also allows to give control back to caller (do_softirq())
      more often, so that other softirq handlers can be called a bit earlier,
      or ksoftirqd can be wakeup earlier under pressure.
      
      This was developed while testing an alternative to RX interrupt
      mitigation to reduce latencies while keeping or improving GRO
      aggregation on fast NIC.
      
      Idea is to test napi->gro_list at the end of a napi->poll() and
      reschedule one NAPI poll, but after servicing a full round of
      softirqs (timers, TX, rcu, ...). This will be allowed only if softirq
      is currently serviced by idle task or ksoftirqd, and resched not needed.
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Cc: Willem de Bruijn <willemb@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d75b1ade
    • E
      net: shrink struct softnet_data · 4cdb1e2e
      Eric Dumazet 提交于
      flow_limit in struct softnet_data is only read from local cpu
      and can be moved to fill a hole, reducing softnet_data size by
      64 bytes on x86_64
      
      While we are at it, move output_queue, output_queue_tailp and
      completion_queue, so that rx / tx paths touch a single cache line.
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4cdb1e2e
  3. 03 11月, 2014 11 次提交
  4. 02 11月, 2014 1 次提交
  5. 01 11月, 2014 5 次提交
    • D
      sunhme: Add DMA mapping error checks. · ec1f1276
      David S. Miller 提交于
      Reported-by: NMeelis Roos <mroos@linux.ee>
      Tested-by: NMeelis Roos <mroos@linux.ee>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ec1f1276
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 9f935675
      Linus Torvalds 提交于
      Pull input updates from Dmitry Torokhov:
       "A bunch of fixes for minor defects reported by Coverity, a few driver
        fixups and revert of i8042.nomux change so that we are once again
        enable active MUX mode if box claims to support it"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Revert "Input: i8042 - disable active multiplexing by default"
        Input: altera_ps2 - use correct type for irq return value
        Input: altera_ps2 - write to correct register when disabling interrupts
        Input: max77693-haptic - fix potential overflow
        Input: psmouse - remove unneeded check in psmouse_reconnect()
        Input: vsxxxaa - fix code dropping bytes from queue
        Input: ims-pcu - fix dead code in ims_pcu_ofn_reg_addr_store()
        Input: opencores-kbd - fix error handling
        Input: wm97xx - adapt parameters to tosa touchscreen.
        Input: i8042 - quirks for Fujitsu Lifebook A544 and Lifebook AH544
        Input: stmpe-keypad - fix valid key line bitmask
        Input: soc_button_array - update calls to gpiod_get*()
      9f935675
    • L
      Merge tag 'pm+acpi-3.18-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · ab01f963
      Linus Torvalds 提交于
      Pull ACPI and power management fixes from Rafael Wysocki:
       "These are fixes received after my previous pull request plus one that
        has been in the works for quite a while, but its previous version
        caused problems to happen, so it's been deferred till now.
      
        Fixed are two recent regressions (MFD enumeration and cpufreq-dt),
        ACPI EC regression introduced in 3.17, system suspend error code path
        regression introduced in 3.15, an older bug related to recovery from
        failing resume from hibernation and a cpufreq-dt driver issue related
        to operation performance points.
      
        Specifics:
      
         - Fix a crash on r8a7791/koelsch during resume from system suspend
           caused by a recent cpufreq-dt commit (Geert Uytterhoeven).
      
         - Fix an MFD enumeration problem introduced by a recent commit adding
           ACPI support to the MFD subsystem that exposed a weakness in the
           ACPI core causing ACPI enumeration to be applied to all devices
           associated with one ACPI companion object, although it should be
           used for one of them only (Mika Westerberg).
      
         - Fix an ACPI EC regression introduced during the 3.17 cycle causing
           some Samsung laptops to misbehave as a result of a workaround
           targeted at some Acer machines.  That includes a revert of a commit
           that went too far and a quirk for the Acer machines in question.
           From Lv Zheng.
      
         - Fix a regression in the system suspend error code path introduced
           during the 3.15 cycle that causes it to fail to take errors from
           asychronous execution of "late" suspend callbacks into account
           (Imre Deak).
      
         - Fix a long-standing bug in the hibernation resume error code path
           that fails to roll back everything correcty on "freeze" callback
           errors and leaves some devices in a "suspended" state causing more
           breakage to happen subsequently (Imre Deak).
      
         - Make the cpufreq-dt driver disable operation performance points
           that are not supported by the VR connected to the CPU voltage plane
           with acceptable tolerance instead of constantly failing voltage
           scaling later on (Lucas Stach)"
      
      * tag 'pm+acpi-3.18-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / EC: Fix regression due to conflicting firmware behavior between Samsung and Acer.
        Revert "ACPI / EC: Add support to disallow QR_EC to be issued before completing previous QR_EC"
        cpufreq: cpufreq-dt: Restore default cpumask_setall(policy->cpus)
        PM / Sleep: fix recovery during resuming from hibernation
        PM / Sleep: fix async suspend_late/freeze_late error handling
        ACPI: Use ACPI companion to match only the first physical device
        cpufreq: cpufreq-dt: disable unsupported OPPs
      ab01f963
    • L
      Merge tag 'pci-v3.18-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 08da742e
      Linus Torvalds 提交于
      Pull PCI fixes from Bjorn Helgaas:
       "These changes, intended for v3.18, fix:
      
        Sysfs
          - Fix "enable" filename change (Greg Kroah-Hartman)
      
            An unintentional sysfs filename change in commit 5136b2da
            ("PCI: convert bus code to use dev_groups"), which appeared in
            v3.13, changed "enable" to "enabled", and this changes it back.
      
            Old users of "enable" are currently broken and will be helped by
            this change.  Anything that started to use "enabled" after v3.13
            will be broken by this change.  If necessary, we can add a symlink
            to make both work, but this patch doesn't do that.
      
        PCI device hotplug
          - Revert duplicate merge (Kamal Mostafa)
      
            A mistaken duplicate merge that added a check twice.  Nothing's
            broken; this just removes the unnecessary code.
      
        Freescale i.MX6
          - Wait for clocks to stabilize after ref_en (Richard Zhu)
      
            An i.MX6 clock problem that prevents mx6 nitrogen boards from booting"
      
      * tag 'pci-v3.18-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        PCI: Rename sysfs 'enabled' file back to 'enable'
        PCI: imx6: Wait for clocks to stabilize after ref_en
        Revert duplicate "PCI: pciehp: Prevent NULL dereference during probe"
      08da742e
    • A
      x86_64, entry: Fix out of bounds read on sysenter · 653bc77a
      Andy Lutomirski 提交于
      Rusty noticed a Really Bad Bug (tm) in my NT fix.  The entry code
      reads out of bounds, causing the NT fix to be unreliable.  But, and
      this is much, much worse, if your stack is somehow just below the
      top of the direct map (or a hole), you read out of bounds and crash.
      
      Excerpt from the crash:
      
      [    1.129513] RSP: 0018:ffff88001da4bf88  EFLAGS: 00010296
      
        2b:*    f7 84 24 90 00 00 00     testl  $0x4000,0x90(%rsp)
      
      That read is deterministically above the top of the stack.  I
      thought I even single-stepped through this code when I wrote it to
      check the offset, but I clearly screwed it up.
      
      Fixes: 8c7aa698 ("x86_64, entry: Filter RFLAGS.NT on entry from userspace")
      Reported-by: NRusty Russell <rusty@ozlabs.org>
      Cc: stable@vger.kernel.org
      Signed-off-by: NAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      653bc77a