1. 01 12月, 2012 10 次提交
  2. 30 11月, 2012 3 次提交
  3. 29 11月, 2012 27 次提交
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · e9296e89
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
       "Some more fixes trickled in over the past few days:
      
         1) PIM device names can overflow the IFNAMSIZ buffer unless we
            properly limit the allowed indexes, fix from Eric Dumazet.
      
         2) Under heavy load we can OOPS in icmp reply processing due to an
            unchecked inet_putpeer() call.  Fix from Neal Cardwell.
      
         3) SCTP round trip calculations need to use 64-bit math to avoid
            overflows, fix from Schoch Christian.
      
         4) Fix a memory leak and an error return flub in SCTP and IRDA
            triggerable by userspace.  Fix from Tommi Rantala and found by the
            syscall fuzzer (trinity).
      
         5) MLX4 driver gives bogus size to memcpy() call, fix from Amir
            Vadai.
      
         6) Fix length calculation in VHOST descriptor translation, from
            Michael S Tsirkin.
      
         7) Ambassador ATM driver loops forever while loading firmware, fix
            from Dan Carpenter.
      
         8) Over MTU packets in openvswitch warn about wrong device, fix from
            Jesse Gross.
      
         9) Netfilter IPSET's netlink code can overrun a string buffer because
            it's not properly limited to IFNAMSIZ.  Fix from Florian Westphal.
      
        10) PCAN USB driver sets wrong timestamp in SKB, from Oliver Hartkopp.
      
        11) Make sure the RX ifindex always has a valid value in the CAN BCM
            driver, even if we haven't received a frame yet.  Fix also from
            Oliver Hartkopp."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        team: fix hw_features setup
        atm: forever loop loading ambassador firmware
        vhost: fix length for cross region descriptor
        irda: irttp: fix memory leak in irttp_open_tsap() error path
        net: qmi_wwan: add Huawei E173
        net/mlx4_en: Can set maxrate only for TC0
        sctp: Error in calculation of RTTvar
        sctp: fix -ENOMEM result with invalid user space pointer in sendto() syscall
        sctp: fix memory leak in sctp_datamsg_from_user() when copy from user space fails
        net: ipmr: limit MRT_TABLE identifiers
        ipv4: avoid passing NULL to inet_putpeer() in icmpv4_xrlim_allow()
        can: bcm: initialize ifindex for timeouts without previous frame reception
        can: peak_usb: fix hwtstamp assignment
        netfilter: ipset: fix netiface set name overflow
        openvswitch: Store flow key len if ARP opcode is not request or reply.
        openvswitch: Print device when warning about over MTU packets.
      e9296e89
    • D
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jesse/openvswitch · a45085f6
      David S. Miller 提交于
      Two small openswitch fixes from Jesse Gross.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a45085f6
    • M
      net: ethernet: cpsw: fix build warnings for CPSW when CPTS not selected · 3177bf6f
      Mugunthan V N 提交于
      CC      drivers/net/ethernet/ti/cpsw.o
      drivers/net/ethernet/ti/cpsw.c: In function 'cpsw_ndo_ioctl':
      drivers/net/ethernet/ti/cpsw.c:881:20: warning: unused variable 'priv'
      
      The build warning is generated when CPTS is not selected in Kernel Build.
      Fixing by passing the net_device pointer to cpts IOCTL instead of passing priv
      Signed-off-by: NMugunthan V N <mugunthanvnm@ti.com>
      Acked-by: NRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3177bf6f
    • D
      Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next · 83a9d197
      David S. Miller 提交于
      John W. Linville says:
      
      ====================
      This pull request is intended for the 3.8 stream.  It is a bit large
      -- I guess Thanksgiving got me off track!  At least the code got to
      spend some time in linux-next... :-)
      
      This includes the usual batch of pulls for Bluetooth, NFC, and mac80211
      as well as iwlwifi.  Also here is an ath6kl pull, and a new driver
      in the rtlwifi family.  The brcmfmac, brcmsmac, ath9k, and mwl8k get
      their usual levels of attention, and a handful of other updates tag
      along as well.
      
      For more detail on the pulls, please see below...
      
      On Bluetooth, Gustavo says:
      
      "Another set of patches for integration in wireless-next. There are two big set
      of changes in it: Andrei Emeltchenko and Mat Martineau added more patches
      towards a full Bluetooth High Speed support and Johan Hedberg improve the
      single mode support for Bluetooth dongles. Apart from that we have small fixes
      and improvements."
      
      ...and:
      
      "A few patches to 3.8. The majority of the work here is from Andrei on the High
      Speed support. Other than that Johan added support for setting LE advertising
      data. The rest are fixes and clean ups and small improvements like support for
      a new broadcom hardware."
      
      On mac80211, Johannes says:
      
      "This is for mac80211, for -next (3.8). Plenty of changes, as you can see
      below. Some fixes for previous changes like the export.h include, the
      beacon listener fix from Ben Greear, etc. Overall, no exciting new
      features, though hwsim does gain channel context support for people to
      try it out and look at."
      
      ...and...:
      
      "This one contains the mac80211-next material. Apart from a few small new
      features and cleanups I have two fixes for the channel context code. The
      RX_END timestamp support will probably be reworked again as Simon Barber
      noted the calculations weren't really valid, but the discussions there
      are still going on and it's better than what we had before."
      
      ...and:
      
      "Please pull (see below) to get the following changes:
       * a fix & a debug aid in IBSS from Antonio,
       * mesh cleanups from Marco,
       * a few bugfixes for some of my previous patches from Arend and myself,
       * and the big initial VHT support patchset"
      
      And on iwlwifi, Johannes says:
      
      "In addition to the previous four patches that I'm not resending,
      we have a number of cleanups, message reduction, firmware error
      handling improvements (yes yes... we need to fix them instead)
      and various other small things all over."
      
      ...and:
      
      "In his quest to try to understand the current iwlwifi problems (like
      stuck queues etc.) Emmanuel has first cleaned up the PCIe code, I'm
      including his changes in this pull request. Other than that I only have
      a small cleanup from Sachin Kamat to remove a duplicate include and a
      bugfix to turn off MFP if software crypto is enabled, but this isn't
      really interesting as MFP isn't supported right now anyway."
      
      On NFC, Samuel says:
      
      "With this one we have:
      
      - A few HCI improvements in preparation for an upcoming HCI chipset support.
      - A pn544 code cleanup after the old driver was removed.
      - An LLCP improvement for notifying user space when one peer stops ACKing I
        frames."
      
      On ath6kl, Kalle says:
      
      "Major changes this time are firmware recover support to gracefully
      handle if firmware crashes, support for changing regulatory domain and
      support for new ar6004 hardware revision 1.4. Otherwise there are just
      smaller fixes or cleanups from different people."
      
      Thats about it... :-)  Please let me know if there are problems!
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      83a9d197
    • B
      cxgb3: Restore dependency on INET · 9e3262e2
      Ben Hutchings 提交于
      Commit ff33c0e1 ('net: Remove bogus
      dependencies on INET') wrongly removed this dependency.  cxgb3 uses
      the arp_send() function defined in net/ipv4/arp.c.
      Reported-by: Nkbuild test robot <fengguang.wu@intel.com>
      Signed-off-by: NBen Hutchings <bhutchings@solarflare.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9e3262e2
    • J
      team: fix hw_features setup · 3ed71471
      Jiri Pirko 提交于
      Do this in the same way bonding does. This fixed setup resolves performance
      issues when using some cards with certain offloading.
      Signed-off-by: NJiri Pirko <jiri@resnulli.us>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3ed71471
    • D
      atm: forever loop loading ambassador firmware · fcdc90b0
      Dan Carpenter 提交于
      There was a forever loop introduced here when we converted this to
      request_firmware() back in 2008.
      Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
      Acked-by: NChas Williams <chas@cmf.nrl.navy.mil>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fcdc90b0
    • N
      ip6tnl/sit: drop packet if ECN present with not-ECT · f4e0b4c5
      Nicolas Dichtel 提交于
      This patch reports the change made by Stephen Hemminger in ipip and gre[6] in
      commit eccc1bb8 (tunnel: drop packet if ECN present with not-ECT).
      
      Goal is to handle RFC6040, Section 4.2:
      
      Default Tunnel Egress Behaviour.
       o If the inner ECN field is Not-ECT, the decapsulator MUST NOT
            propagate any other ECN codepoint onwards.  This is because the
            inner Not-ECT marking is set by transports that rely on dropped
            packets as an indication of congestion and would not understand or
            respond to any other ECN codepoint [RFC4774].  Specifically:
      
            *  If the inner ECN field is Not-ECT and the outer ECN field is
               CE, the decapsulator MUST drop the packet.
      
            *  If the inner ECN field is Not-ECT and the outer ECN field is
               Not-ECT, ECT(0), or ECT(1), the decapsulator MUST forward the
               outgoing packet with the ECN field cleared to Not-ECT.
      
      The patch takes benefits from common function added in net/inet_ecn.h.
      
      Like it was done for Xin4 tunnels, it adds logging to allow detecting broken
      systems that set ECN bits incorrectly when tunneling (or an intermediate
      router might be changing the header). Errors are also tracked via
      rx_frame_error.
      
      CC: Stephen Hemminger <shemminger@vyatta.com>
      Signed-off-by: NNicolas Dichtel <nicolas.dichtel@6wind.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f4e0b4c5
    • S
      be2net: fix INTx ISR for interrupt behaviour on BE2 · e49cc34f
      Sathya Perla 提交于
      On BE2 chip, an interrupt may be raised even when EQ is in un-armed state.
      As a result be_intx()::events_get() and be_poll:events_get() can race and
      notify an EQ wrongly.
      
      Fix this by counting events only in be_poll(). Commit 0b545a62 fixes
      the same issue in the MSI-x path.
      
      But, on Lancer, INTx can be de-asserted only by notifying num evts. This
      is not an issue as the above BE2 behavior doesn't exist/has never been
      seen on Lancer.
      Signed-off-by: NSathya Perla <sathya.perla@emulex.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e49cc34f
    • P
      ewrk3: remove outdated comment · f33e716f
      Paul Bolle 提交于
      Remove an outdated comment, that should have been removed in the
      patch named "MODULE_PARM conversions" from early 2005.
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f33e716f
    • P
      ewrk3: silence GCC warning · a80e2757
      Paul Bolle 提交于
      Building ewrk3.o triggers this GCC warning:
          drivers/net/ethernet/dec/ewrk3.c: In function '__check_irq':
          drivers/net/ethernet/dec/ewrk3.c:1915:1: warning: return from incompatible pointer type [enabled by default]
      
      This can be trivially fixed by changing the 'irq' parameter from int to
      byte (which is an alias for unsigned char for module parameters).
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a80e2757
    • D
      Merge branch 'for-davem' of git://gitorious.org/linux-can/linux-can-next · f81d3af9
      David S. Miller 提交于
      Marc Kleine-Budde says:
      
      ====================
      this is pull request is for net-next. Contains a patch by Andreas
      Larsson, which enables the sja1000 of driver to work under sparc.
      AnilKumar Ch contributed a patch to improve the c_can support under
      omap, Olivier Sobrie's patch brings support for the CAN/USB dongles
      from Kvaser. In a bunch of patches by me missing MODULE_ALIAS and/or
      MODULE_DEVICE_TABLE entries were added to the CAN drivers.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f81d3af9
    • D
      Merge branch 'master' of git://1984.lsi.us.es/nf · 52f2ede1
      David S. Miller 提交于
      An interface name overflow fix in netfilter via Pablo Neira Ayuso.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      52f2ede1
    • M
      bonding: in balance-rr mode, set curr_active_slave only if it is up · 4e591b93
      Michal Kubeček 提交于
      If all slaves of a balance-rr bond with ARP monitor are enslaved
      with down link state, bond keeps down state even after slaves
      go up.
      
      This is caused by bond_enslave() setting curr_active_slave to
      first slave not taking into account its link state. As
      bond_loadbalance_arp_mon() uses curr_active_slave to identify
      whether slave's down->up transition should update bond's link
      state, bond stays down even if slaves are up (until first slave
      goes from up to down at least once).
      
      Before commit f31c7937 "bonding: start slaves with link down for
      ARP monitor", this was masked by slaves always starting in UP
      state with ARP monitor (and MII monitor not relying on
      curr_active_slave being NULL if there is no slave up).
      Signed-off-by: NMichal Kubecek <mkubecek@suse.cz>
      Signed-off-by: NJay Vosburgh <fubar@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4e591b93
    • M
      vhost: fix length for cross region descriptor · bd97120f
      Michael S. Tsirkin 提交于
      If a single descriptor crosses a region, the
      second chunk length should be decremented
      by size translated so far, instead it includes
      the full descriptor length.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Acked-by: NJason Wang <jasowang@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bd97120f
    • T
      irda: irttp: fix memory leak in irttp_open_tsap() error path · c3b2c258
      Tommi Rantala 提交于
      Cleanup the memory we allocated earlier in irttp_open_tsap() when we hit
      this error path. The leak goes back to at least 1da177e4
      ("Linux-2.6.12-rc2").
      
      Discovered with Trinity (the syscall fuzzer).
      Signed-off-by: NTommi Rantala <tt.rantala@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c3b2c258
    • B
      net: qmi_wwan: add Huawei E173 · ba695af0
      Bjørn Mork 提交于
      The Huawei E173 is a QMI/wwan device which normally appear
      as 12d1:1436 in Linux. The descriptors displayed in that
      mode will be picked up by cdc_ether.  But the modem has
      another mode with a different device ID and a slightly
      different set of descriptors. This is the mode used by
      Windows like this:
      
      3Modem:      USB\VID_12D1&PID_140C&MI_00\6&3A1D2012&0&0000
      Networkcard: USB\VID_12D1&PID_140C&MI_01\6&3A1D2012&0&0001
      Appli.Inter: USB\VID_12D1&PID_140C&MI_02\6&3A1D2012&0&0002
      PC UI Inter: USB\VID_12D1&PID_140C&MI_03\6&3A1D2012&0&0003
      Reported-by: NThomas Schäfer <tschaefer@t-online.de>
      Signed-off-by: NBjørn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ba695af0
    • P
      pkt_sched: QFQ Plus: fair-queueing service at DRR cost · 462dbc91
      Paolo Valente 提交于
      This patch turns QFQ into QFQ+, a variant of QFQ that provides the
      following two benefits: 1) QFQ+ is faster than QFQ, 2) differently
      from QFQ, QFQ+ correctly schedules also non-leaves classes in a
      hierarchical setting. A detailed description of QFQ+, plus a
      performance comparison with DRR and QFQ, can be found in [1].
      
      [1] P. Valente, "Reducing the Execution Time of Fair-Queueing Schedulers"
      http://algo.ing.unimo.it/people/paolo/agg-sched/agg-sched.pdfSigned-off-by: NPaolo Valente <paolo.valente@unimore.it>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      462dbc91
    • S
      smsc75xx: don't enable remote wakeup directly · 351f33d9
      Steve Glendinning 提交于
      As pointed out by Bjorn Mork, the generic "usb" driver sets this
      for us so no need to directly set it in this driver.
      Signed-off-by: NSteve Glendinning <steve.glendinning@shawell.net>
      Cc: Bjorn Mork <bjorn@mork.no>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      351f33d9
    • S
      smsc75xx: add support for USB dynamic autosuspend · b4cdea9c
      Steve Glendinning 提交于
      This patch adds support for USB dynamic autosuspend to the
      smsc75xx driver.  This saves virtually no power in the USB
      device but enables power savings in upstream hosts and
      the host CPU.
      
      Note currently Linux doesn't automatically enable this
      functionality by default for devices so to test this:
      
       echo auto > /sys/bus/usb/devices/2-1.2/power/control
      
      where 2-1.2 is the USB bus address of the LAN7500.
      Signed-off-by: NSteve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b4cdea9c
    • S
      smsc75xx: fix error handling in suspend failure case · eacdd6c2
      Steve Glendinning 提交于
      This patch ensures that if we fail to suspend the LAN7500 device
      we call usbnet_resume before returning failure, instead of
      leaving the usbnet driver in an unusable state.
      Signed-off-by: NSteve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      eacdd6c2
    • S
      smsc75xx: support PHY wakeup source · f329ccdc
      Steve Glendinning 提交于
      This patch enables LAN7500 family devices to wake from suspend
      on either link up or link down events.
      
      It also adds _nopm versions of mdio access functions, so we can
      safely call them from suspend and resume functions
      
      Updated patch to add newlines to printk messages
      Signed-off-by: NSteve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f329ccdc
    • S
      smsc75xx: refactor entering suspend modes · 9deb2757
      Steve Glendinning 提交于
      This patch splits out the logic for entering suspend modes
      to separate functions, to reduce the complexity of the
      smsc75xx_suspend function.
      Signed-off-by: NSteve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9deb2757
    • S
      smsc75xx: check return code from smsc75xx_reset · 33763b79
      Steve Glendinning 提交于
      This patch adds a missing check and error message if smsc75xx_reset
      fails.
      Signed-off-by: NSteve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      33763b79
    • A
      net/mlx4_en: Can set maxrate only for TC0 · 29bb8f4a
      Amir Vadai 提交于
      Had a typo in memcpy.
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      29bb8f4a
    • S
      sctp: Error in calculation of RTTvar · 92d64c26
      Schoch Christian 提交于
      The calculation of RTTVAR involves the subtraction of two unsigned
      numbers which
      may causes rollover and results in very high values of RTTVAR when RTT > SRTT.
      With this patch it is possible to set RTOmin = 1 to get the minimum of RTO at
      4 times the clock granularity.
      
      Change Notes:
      
      v2)
              *Replaced abs() by abs64() and long by __s64, changed patch
      description.
      Signed-off-by: NChristian Schoch <e0326715@student.tuwien.ac.at>
      CC: Vlad Yasevich <vyasevich@gmail.com>
      CC: Sridhar Samudrala <sri@us.ibm.com>
      CC: Neil Horman <nhorman@tuxdriver.com>
      CC: linux-sctp@vger.kernel.org
      Acked-by: NVlad Yasevich <vyasevich@gmail.com>
      Acked-by: NNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      92d64c26
    • T
      sctp: fix -ENOMEM result with invalid user space pointer in sendto() syscall · 6e51fe75
      Tommi Rantala 提交于
      Consider the following program, that sets the second argument to the
      sendto() syscall incorrectly:
      
       #include <string.h>
       #include <arpa/inet.h>
       #include <sys/socket.h>
      
       int main(void)
       {
               int fd;
               struct sockaddr_in sa;
      
               fd = socket(AF_INET, SOCK_STREAM, 132 /*IPPROTO_SCTP*/);
               if (fd < 0)
                       return 1;
      
               memset(&sa, 0, sizeof(sa));
               sa.sin_family = AF_INET;
               sa.sin_addr.s_addr = inet_addr("127.0.0.1");
               sa.sin_port = htons(11111);
      
               sendto(fd, NULL, 1, 0, (struct sockaddr *)&sa, sizeof(sa));
      
               return 0;
       }
      
      We get -ENOMEM:
      
       $ strace -e sendto ./demo
       sendto(3, NULL, 1, 0, {sa_family=AF_INET, sin_port=htons(11111), sin_addr=inet_addr("127.0.0.1")}, 16) = -1 ENOMEM (Cannot allocate memory)
      
      Propagate the error code from sctp_user_addto_chunk(), so that we will
      tell user space what actually went wrong:
      
       $ strace -e sendto ./demo
       sendto(3, NULL, 1, 0, {sa_family=AF_INET, sin_port=htons(11111), sin_addr=inet_addr("127.0.0.1")}, 16) = -1 EFAULT (Bad address)
      
      Noticed while running Trinity (the syscall fuzzer).
      Signed-off-by: NTommi Rantala <tt.rantala@gmail.com>
      Acked-by: NVlad Yasevich <vyasevich@gmail.com>
      Acked-by: NNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6e51fe75