1. 11 10月, 2013 1 次提交
    • V
      bridge: update mdb expiration timer upon reports. · f144febd
      Vlad Yasevich 提交于
      commit 9f00b2e7
      	bridge: only expire the mdb entry when query is received
      changed the mdb expiration timer to be armed only when QUERY is
      received.  Howerver, this causes issues in an environment where
      the multicast server socket comes and goes very fast while a client
      is trying to send traffic to it.
      
      The root cause is a race where a sequence of LEAVE followed by REPORT
      messages can race against QUERY messages generated in response to LEAVE.
      The QUERY ends up starting the expiration timer, and that timer can
      potentially expire after the new REPORT message has been received signaling
      the new join operation.  This leads to a significant drop in multicast
      traffic and possible complete stall.
      
      The solution is to have REPORT messages update the expiration timer
      on entries that already exist.
      
      CC: Cong Wang <xiyou.wangcong@gmail.com>
      CC: Herbert Xu <herbert@gondor.apana.org.au>
      CC: Stephen Hemminger <stephen@networkplumber.org>
      Signed-off-by: NVlad Yasevich <vyasevic@redhat.com>
      Acked-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f144febd
  2. 10 10月, 2013 10 次提交
    • M
      can: at91-can: fix device to driver data mapping for platform devices · 5abbeea5
      Marc Kleine-Budde 提交于
      In commit:
      
          3078cde7 can: at91_can: add dt support
      
      device tree support was added to the at91_can driver. In this commit the
      mapping of device to driver data was mixed up. This results in the sam9x5
      parameters being used for the sam9263 and the workaround for the broken mailbox
      0 on the sam9263 not being activated.
      
      This patch fixes the broken platform_device_id table.
      
      Cc: linux-stable <stable@vger.kernel.org>
      Cc: Ludovic Desroches <ludovic.desroches@atmel.com>
      Signed-off-by: NMarc Kleine-Budde <mkl@pengutronix.de>
      5abbeea5
    • M
      can: flexcan: fix mx28 detection by rearanging OF match table · e3587842
      Marc Kleine-Budde 提交于
      The current implemetation of of_match_device() relies that the of_device_id
      table in the driver is sorted from most specific to least specific compatible.
      
      Without this patch the mx28 is detected as the less specific p1010. This leads
      to a p1010 specific workaround is activated on the mx28, which is not needed.
      
      Cc: linux-stable <stable@vger.kernel.org>
      Signed-off-by: NMarc Kleine-Budde <mkl@pengutronix.de>
      e3587842
    • M
      can: flexcan: flexcan_chip_start: fix regression, mark one MB for TX and abort pending TX · d5a7b406
      Marc Kleine-Budde 提交于
      In patch
      
          0d1862ea can: flexcan: fix flexcan_chip_start() on imx6
      
      the loop in flexcan_chip_start() that iterates over all mailboxes after the
      soft reset of the CAN core was removed. This loop put all mailboxes (even the
      ones marked as reserved 1...7) into EMPTY/INACTIVE mode. On mailboxes 8...63,
      this aborts any pending TX messages.
      
      After a cold boot there is random garbage in the mailboxes, which leads to
      spontaneous transmit of CAN frames during first activation. Further if the
      interface was disabled with a pending message (usually due to an error
      condition on the CAN bus), this message is retransmitted after enabling the
      interface again.
      
      This patch fixes the regression by:
      1) Limiting the maximum number of used mailboxes to 8, 0...7 are used by the RX
      FIFO, 8 is used by TX.
      2) Marking the TX mailbox as EMPTY/INACTIVE, so that any pending TX of that
      mailbox is aborted.
      
      Cc: linux-stable <stable@vger.kernel.org>
      Cc: Lothar Waßmann <LW@KARO-electronics.de>
      Signed-off-by: NMarc Kleine-Budde <mkl@pengutronix.de>
      d5a7b406
    • D
      Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless · 87b0a0b5
      David S. Miller 提交于
      John W. Linville says:
      
      ===================
      Please pull this batch of fixes intended for 3.12...
      
      Most of the bits are for iwlwifi -- Johannes says:
      
      "I have a fix for WoWLAN/D3, a PCIe device fix, we're removing a
      warning, there's a fix for RF-kill while scanning (which goes together
      with a mac80211 fix) and last but not least we have many new PCI IDs."
      
      Also for iwlwifi is a patch from Johannes to correct some merge damage
      that crept into the tree before the last merge window.
      
      On top of that, Felix Fietkau sends an ath9k patch to avoid a Tx
      scheduling hang when changing channels to do a scan.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      87b0a0b5
    • D
      Merge branch 'gianfar' · 9ed8111d
      David S. Miller 提交于
      Merge in gianfar driver bug fixes from Claudiu Manoil.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9ed8111d
    • C
      gianfar: Enable eTSEC-20 erratum w/a for P2020 Rev1 · 53fad773
      Claudiu Manoil 提交于
      Enable workaround for P2020/P2010 erratum eTSEC 20,
      "Excess delays when transmitting TOE=1 large frames".
      The impact is that frames lager than 2500-bytes for which
      TOE (i.e. TCP/IP hw accelerations like Tx csum) is enabled
      may see excess delay before start of transmission.
      This erratum was fixed in Rev 2.0.
      Signed-off-by: NClaudiu Manoil <claudiu.manoil@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      53fad773
    • C
      gianfar: Use mpc85xx support for errata detection · 2969b1f7
      Claudiu Manoil 提交于
      Use the macros and defines from mpc85xx.h to simplify
      and prevent errors in identifying a mpc85xx based SoC
      for errata detection.
      This should help enabling (and identifying) workarounds
      for various mpc85xx based chips and revisions.
      For instance, express MPC8548 Rev.2 as:
      (SVR_SOC_VER(svr) == SVR_8548) && (SVR_REV(svr) == 0x20)
      instead of:
      (pvr == 0x80210020 && mod == 0x8030 && rev == 0x0020)
      Signed-off-by: NClaudiu Manoil <claudiu.manoil@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2969b1f7
    • C
      gianfar: Enable eTSEC-A002 erratum w/a for all parts · ad3660c2
      Claudiu Manoil 提交于
      A002 is still in "no plans to fix" state, and applies to all
      the current P1/P2 parts as well, so it's resonable to enable
      its workaround by default, for all the soc's with etsec.
      The impact of not enabling this workaround for affected parts
      is that under certain conditons (runt frames or even frames
      with RX error detected at PHY level) during controller reset,
      the controller might fail to indicate Rx reset (GRS) completion.
      Signed-off-by: NClaudiu Manoil <claudiu.manoil@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ad3660c2
    • D
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec · f6063850
      David S. Miller 提交于
      Steffen Klassert says:
      
      ====================
      1) We used the wrong netlink attribute to verify the
         lenght of the replay window on async events. Fix this by
         using the right netlink attribute.
      
      2) Policy lookups can not match the output interface on forwarding.
         Add the needed informations to the flow informations.
      
      3) We update the pmtu when we receive a ICMPV6_DEST_UNREACH message
         on IPsec with ipv6. This is wrong and leads to strange fragmented
         packets, only ICMPV6_PKT_TOOBIG messages should update the pmtu.
         Fix this by removing the ICMPV6_DEST_UNREACH check from the IPsec
         protocol error handlers.
      
      4) The legacy IPsec anti replay mechanism supports anti replay
         windows up to 32 packets. If a user requests for a bigger
         anti replay window, we use 32 packets but pretend that we use
         the requested window size. Fix from Fan Du.
      
      5) If asynchronous events are enabled and replay_maxdiff is set to
         zero, we generate an async event for every received packet instead
         of checking whether a timeout occurred. Fix from Thomas Egerer.
      
      6) Policies need a refcount when the state resolution timer is armed.
         Otherwise the timer can fire after the policy is deleted.
      
      7) We might dreference a NULL pointer if the hold_queue is empty,
         add a check to avoid this.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f6063850
    • F
      net: secure_seq: Fix warning when CONFIG_IPV6 and CONFIG_INET are not selected · cb03db9d
      Fabio Estevam 提交于
      net_secret() is only used when CONFIG_IPV6 or CONFIG_INET are selected.
      
      Building a defconfig with both of these symbols unselected (Using the ARM
      at91sam9rl_defconfig, for example) leads to the following build warning:
      
      $ make at91sam9rl_defconfig
      #
      # configuration written to .config
      #
      
      $ make net/core/secure_seq.o
      scripts/kconfig/conf --silentoldconfig Kconfig
        CHK     include/config/kernel.release
        CHK     include/generated/uapi/linux/version.h
        CHK     include/generated/utsrelease.h
      make[1]: `include/generated/mach-types.h' is up to date.
        CALL    scripts/checksyscalls.sh
        CC      net/core/secure_seq.o
      net/core/secure_seq.c:17:13: warning: 'net_secret_init' defined but not used [-Wunused-function]
      
      Fix this warning by protecting the definition of net_secret() with these
      symbols.
      Reported-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cb03db9d
  3. 09 10月, 2013 22 次提交
  4. 08 10月, 2013 7 次提交