1. 07 12月, 2015 5 次提交
    • O
      net/mlx4_core: Use both physical ports to set the VF link state · e34305c8
      Or Gerlitz 提交于
      In HA mode, the link state for VFs for which the policy is "auto"
      (i.e. follow the physical link state) should be ORed from both ports.
      Signed-off-by: NOr Gerlitz <ogerlitz@mellanox.com>
      Reviewed-by: NJack Morgenstein <jackm@dev.mellanox.co.il>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e34305c8
    • J
      VSOCK: fix returnvar.cocci warnings · 0d76d6e8
      Julia Lawall 提交于
      Remove unneeded variable used to store return value.
      
      Generated by: scripts/coccinelle/misc/returnvar.cocci
      
      CC: Asias He <asias@redhat.com>
      Signed-off-by: NFengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: NJulia Lawall <julia.lawall@lip6.fr>
      Reviewed-by: NStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0d76d6e8
    • B
      net: qmi_wwan: should hold RTNL while changing netdev type · 6c730080
      Bjørn Mork 提交于
      The notifier calls were thrown in as a last-minute fix for an
      imagined "this device could be part of a bridge" problem. That
      revealed a certain lack of locking.  Not to mention testing...
      
      Avoid this splat:
      
      RTNL: assertion failed at net/core/dev.c (1639)
      CPU: 0 PID: 4293 Comm: bash Not tainted 4.4.0-rc3+ #358
      Hardware name: LENOVO 2776LEG/2776LEG, BIOS 6EET55WW (3.15 ) 12/19/2011
       0000000000000000 ffff8800ad253d60 ffffffff8122f7cf ffff8800ad253d98
       ffff8800ad253d88 ffffffff813833ab 0000000000000002 ffff880230f48560
       ffff880230a12900 ffff8800ad253da0 ffffffff813833da 0000000000000002
      Call Trace:
       [<ffffffff8122f7cf>] dump_stack+0x4b/0x63
       [<ffffffff813833ab>] call_netdevice_notifiers_info+0x3d/0x59
       [<ffffffff813833da>] call_netdevice_notifiers+0x13/0x15
       [<ffffffffa09be227>] raw_ip_store+0x81/0x193 [qmi_wwan]
       [<ffffffff8131e149>] dev_attr_store+0x20/0x22
       [<ffffffff811d858b>] sysfs_kf_write+0x49/0x50
       [<ffffffff811d8027>] kernfs_fop_write+0x10a/0x151
       [<ffffffff8117249a>] __vfs_write+0x26/0xa5
       [<ffffffff81085ed4>] ? percpu_down_read+0x53/0x7f
       [<ffffffff81174c9e>] ? __sb_start_write+0x5f/0xb0
       [<ffffffff81174c9e>] ? __sb_start_write+0x5f/0xb0
       [<ffffffff81172c37>] vfs_write+0xa3/0xe7
       [<ffffffff811734ad>] SyS_write+0x50/0x7e
       [<ffffffff8145c517>] entry_SYSCALL_64_fastpath+0x12/0x6f
      
      Fixes: 32f7adf6 ("net: qmi_wwan: support "raw IP" mode")
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6c730080
    • S
      Revert "i40e: remove CONFIG_I40E_VXLAN" · 6633d381
      Singhai, Anjali 提交于
      This reverts commit 8fe26999.
      The case where VXLAN is a module and i40e driver is inbuilt
      will not be handled properly with this change since i40e
      will have an undefined symbol vxlan_get_rx_port in it.
      
      v2: Add a signed-off-by.
      Signed-off-by: NAnjali Singhai Jain <anjali.singhai@intel.com>
      Acked-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6633d381
    • D
      Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue · b48565f5
      David S. Miller 提交于
      Jeff Kirsher says:
      
      ====================
      100GbE Intel Wired LAN Driver Updates 2015-12-05
      
      This series contains updates to fm10k only.
      
      Jacob provides the remaining fm10k patches in the series.  First change
      ensures that all the logic regarding the setting of netdev features is
      consolidated in one place of the driver.  Fixed an issue where an assumption
      was being made on how many queues are available, especially when init_hw_vf()
      errors out.  Fixed up an number of issues with init_hw() where failures
      were not being handled properly or at all, so update the driver to check
      returned error codes and respond appropriately.  Fixed up typecasting
      issues found where either the incorrect typecast size was used or
      explicitly typecast values.  Added additional debugging statistics and
      rename statistic to better reflect its true value.  Added support for
      ITR scaling based on PCIe link speed for fm10k.  Fixed up code comment
      where "hardware" was misspelled.
      
      v2: Dropped patches #1 and #10 from original submission, patch #1 was from
          Nick Krause and due to his past kernel interactions, dropping his patch.
          Patch #10 had questions and concerns from Tom Herbert which cannot be
          addressed at this time since the author (Jacob Keller) is currently on
          sabbatical, so dropping this patch for now until we can properly address
          Tom's questions and concerns.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b48565f5
  2. 06 12月, 2015 30 次提交
  3. 05 12月, 2015 5 次提交
    • D
      Merge branch 'qmi_wwan_MDM9x30' · 2141eaf0
      David S. Miller 提交于
      Bjørn Mork says:
      
      ====================
      net: qmi_wwan: MDM9x30 support
      
      We add new device IDs all the time, often without any testing on
      actual hardware. This is usually OK as long as the device is similar
      to already supported devices, using the same chipset and firmware
      basis.  But the Sierra Wireless MC7455 is an example of a new chipset
      generation. Adding it based on assumed similarity with its ancestors
      proved too optimistic.
      
      This series adds the missing bits and pieces necessary to support LTE
      Advanced modems based on the Qualcomm MDM9x30 chipset. A big thanks to
      Sierra Wireless for providing MC7455 samples for testing
      
      The most important change is the "raw-ip" support. The series also
      adds a necessary control request, removes an unsupported device ID,
      and adds a driver specific entry in MAINTAINERS.
      
      A few random notes about "raw-ip":
      
      "I rather have these all running in raw IP mode. The 802.3 framing is
      utterly stupid." - Marcel Holtmann in Jan 2012 [1]
      
      Marcel was right.  I should have listened to him. What more can I say?
      
      The 802.3 framing has provided a steady supply of firmware bugs for
      many years. We've added driver workarounds for many of these, but
      there are still known bugs where the workaround is so yucky that we
      have refused to apply it. But all that is over now.  The latest
      generation Qualcomm chips no longer supports 802.3 framing at all.
      
      I had two open questions regarding the "raw-ip" userspace API:
      
      1) Should we continue faking an ethernet device, even if we don't use
         the L2 headers on the USB link anymore?
      
         There was a vote in favour of the "headerless" device. This is the
         honest representation of the hardware/firmware interface.
      
      2) What input should the driver base its framing on?
      
         Snooping or directly manipulating QMI is considered out of the
         question. We delegated all QMI handling to userspace from the
         beginning.
      
         We have so far required userspace to configure the firmware for
         "802.3" framing, or fail if that proved impossible.  This
         requirement is now changed.  Userspace must now inform the driver
         if it negotiates "raw-ip" framing.  Two alternative interfaces were
         proposed:
          - ethtool private driver flag, or
          - sysfs file
      
         The NetworkManager/ModemManager developers were in favour of the
         sysfs alternative.
      
      These questions (or any other you migh have :) are of course still
      open.  This patch set presents the solutions I currently prefer,
      considering the above.
      
      All comments are appreciated, even simple '+1' ones.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2141eaf0
    • B
      MAINTAINERS: add qmi_wwan driver entry · 4521b477
      Bjørn Mork 提交于
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4521b477
    • B
      net: qmi_wwan: document the qmi/raw_ip sysfs file · 40dd0d94
      Bjørn Mork 提交于
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      40dd0d94
    • B
      net: qmi_wwan: support "raw IP" mode · 32f7adf6
      Bjørn Mork 提交于
      QMI wwan devices have traditionally emulated ethernet devices
      by default. But they have always had the capability of operating
      without any L2 header at all, transmitting and receiving "raw"
      IP packets over the USB link.  This firmware feature used to be
      configurable through the QMI management protocol.
      
      Traditionally there was no way to verify the firmware mode
      without attempting to change it.  And the firmware would often
      disallow changes anyway, i.e. due to a session already being
      established.  In some cases, this could be a hidden firmware
      internal session, completely outside host control.  For these
      reasons, sticking with the "well known" default mode was safest.
      
      But newer generations of QMI hardware and firmware have moved
      towards defaulting to "raw IP" mode instead, followed by an
      increasing number of bugs in the already buggy "802.3" firmware
      implementation. At the same time, the QMI management protocol
      gained the ability to detect the current mode.  This has enabled
      the userspace QMI management application to verify the current
      firmware mode without trying to modify it.
      
      Following this development, the latest QMI hardware and firmware
      (the MDM9x30 generation) has dropped support for "802.3" mode
      entirely. Support for "raw IP" framing in the driver is therefore
      necessary for these devices, and to a certain degree to work
      around problems with the previous generation,
      
      This patch adds support for "raw IP" framing for QMI devices,
      changing the netdev from an ethernet device to an ARPHRD_NONE
      p-t-p device when "raw IP" framing is enabled.
      
      The firmware setup is fully delegated to the QMI userspace
      management application, through simple tunneling of the QMI
      protocol. The driver will therefore not know which mode has been
      "negotiated" between firmware and userspace. Allowing userspace
      to inform the driver of the result through a sysfs switch is
      considered a better alternative than to change the well established
      clean delegation of firmware management to userspace.
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      32f7adf6
    • B
      usbnet: allow mini-drivers to consume L2 headers · 81e0ce79
      Bjørn Mork 提交于
      Assume the minidriver has taken care of all L2 header parsing
      if it sets skb->protocol.  This allows the minidriver to
      support non-ethernet L2 headers, and even operate without
      any L2 header at all.
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Acked-by: NOliver Neukum <oneukum@suse.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      81e0ce79