1. 10 Jan, 2014 15 commits
    • David S. Miller's avatar
      Merge branch 'tcp_metrics_saddr' · 795709af
      David S. Miller authored
      Christoph Paasch says:
      
      ====================
      Make tcp-metrics source-address aware
      
      Currently tcp-metrics only stores per-destination addresses. This brings
      problems, when a host has multiple interfaces (e.g., a smartphone having
      WiFi/3G):
      
      For example, a host contacting a server over WiFi will store the tcp-metrics
      per destination IP. If then the host contacts the same server over 3G, the
      same tcp-metrics will be used, although the path-characteristics are completly
      different (e.g., the ssthresh is probably not the same).
      
      In case of TFO this is not a problem, as the server will provide us a new cookie
      once he saw our SYN+DATA with an incorrect cookie.
      It may be (in case of carrier-grade NAT), that we keep the same public IP but
      have a different private IP. Thus, we better reuse the old cookie even if our
      source-IP has changed. However, this scenario is probably very uncommon, as
      carriers try to provide the same src-IP to the clients behind their CGN.
      
      Patches 1 + 2 add the source-IP to the tcp metrics.
      
      Patches 3 to 5 modify the netlink-api to support the source-IP. From now on,
      when using the command "ip tcp_metrics delete address ADDRESS" all entries
      which match this destination IP will be deleted.
      
      Today's iproute2 will complain when doing "ip tcp_metrics flush PREFIX" if
      several entries are present for the same destination-IP but with different
      source-IPs:
      
      root@client:~/test# ip tcp_metrics
      10.2.1.2 age 3.640sec rtt 16250us rttvar 15000us cwnd 10
      10.2.1.2 age 4.030sec rtt 18750us rttvar 15000us cwnd 10
      root@client:~/test# ip tcp_metrics flush 10.2.1.2/16
      Failed to send flush request
      : No such process
      
      Follow-up patches will modify iproute2 to handle this correctly and allow
      specifying the source-IP in the get/del commands.
      
      v2: Added the patch that allows to selectively get/del of tcp-metrics based
          on src-IP and moved the patch that adds the new netlink attribute before
          the other patches.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      795709af
    • Christoph Paasch's avatar
      tcp: metrics: Allow selective get/del of tcp-metrics based on src IP · 3e7013dd
      Christoph Paasch authored
      We want to be able to get/del tcp-metrics based on the src IP. This
      patch adds the necessary parsing of the netlink attribute and if the
      source address is set, it will match on this one too.
      Signed-off-by: default avatarChristoph Paasch <christoph.paasch@uclouvain.be>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3e7013dd
    • Christoph Paasch's avatar
      tcp: metrics: Delete all entries matching a certain destination · bbf852b9
      Christoph Paasch authored
      As we now can have multiple entries per destination-IP, the "ip
      tcp_metrics delete address ADDRESS" command deletes all of them.
      Signed-off-by: default avatarChristoph Paasch <christoph.paasch@uclouvain.be>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bbf852b9
    • Christoph Paasch's avatar
      tcp: metrics: New netlink attribute for src IP and dumped in netlink reply · 8a59359c
      Christoph Paasch authored
      This patch adds a new netlink attribute for the source-IP and appends it
      to the netlink reply. Now, iproute2 can have access to the source-IP.
      Signed-off-by: default avatarChristoph Paasch <christoph.paasch@uclouvain.be>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8a59359c
    • Christoph Paasch's avatar
      tcp: metrics: Add source-address to tcp-metrics · a5443028
      Christoph Paasch authored
      We add the source-address to the tcp-metrics, so that different metrics
      will be used per source/destination-pair. We use the destination-hash to
      store the metric inside the hash-table. That way, deleting and dumping
      via "ip tcp_metrics" is easy.
      Signed-off-by: default avatarChristoph Paasch <christoph.paasch@uclouvain.be>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a5443028
    • Christoph Paasch's avatar
      tcp: metrics: rename tcpm_addr to tcpm_daddr · 324fd55a
      Christoph Paasch authored
      As we will add also the source-address, we rename all accesses to the
      tcp-metrics address to use "daddr".
      Signed-off-by: default avatarChristoph Paasch <christoph.paasch@uclouvain.be>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      324fd55a
    • David S. Miller's avatar
      Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next · 1a6c1e5b
      David S. Miller authored
      John W. Linville says:
      
      ====================
      Please pull these updates for the 3.14 stream!
      
      For the mac80211 bits, Johannes says:
      
      "Felix adds some helper functions for P2P NoA software tracking, Joe
      fixes alignment (but as this apparently never caused issues I didn't
      send it to 3.13), Kyeyoon/Jouni add QoS-mapping support (a Hotspot 2.0
      feature), Weilong fixed a bunch of checkpatch errors and I get to play
      fire-fighter or so and clean up other people's locking issues. I also
      added nl80211 vendor-specific events, as we'd discussed at the wireless
      summit."
      
      For the iwlwifi bits, Emmanuel says:
      
      "I have here a rework of the interrupt handling to meet RT kernel
      requirements - basically we don't take any lock in the primary interrupt
      handler. This gave me a good reason to clean things up a bit on the way.
      There is also a fix of the QoS mapping along with a few workarounds for
      hardware / firmware issues that are hard to hit.
      Three fixes suggested by static analyzers, and other various stuff.
      Most importantly, I update the Copyright note to include the new year."
      
      For the bluetooth bits, Gustavo says:
      
      "More patches to 3.14. The bulk of changes here is the 6LoWPAN support for
      Bluetooth LE Devices. The commits that touches net/ieee802154/ are already
      acked by David Miller. Other than that we have some RFCOMM fixes and
      improvements plus fixes and clean ups all over the tree."
      
      Beyond that, ath9k, brcmfmac, mwifiex, and wil6210 get their usual
      level of attention.  The wl1251 driver gets a number of updates,
      and there are a handful of other bits here and there.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1a6c1e5b
    • David S. Miller's avatar
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next · ef8570d8
      David S. Miller authored
      Pablo Neira Ayuso says:
      
      ====================
      This batch contains one single patch with the l2tp match
      for xtables, from James Chapman.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ef8570d8
    • John W. Linville's avatar
      Merge branch 'master' of... · 235f9392
      John W. Linville authored
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
      
      Conflicts:
      	net/ieee802154/6lowpan.c
      235f9392
    • Paul Durrant's avatar
      xen-netback: stop vif thread spinning if frontend is unresponsive · 11b57f90
      Paul Durrant authored
      The recent patch to improve guest receive side flow control (ca2f09f2) had a
      slight flaw in the wait condition for the vif thread in that any remaining
      skbs in the guest receive side netback internal queue would prevent the
      thread from sleeping. An unresponsive frontend can lead to a permanently
      non-empty internal queue and thus the thread will spin. In this case the
      thread should really sleep until the frontend becomes responsive again.
      
      This patch adds an extra flag to the vif which is set if the shared ring
      is full and cleared when skbs are drained into the shared ring. Thus,
      if the thread runs, finds the shared ring full and can make no progress the
      flag remains set. If the flag remains set then the thread will sleep,
      regardless of a non-empty queue, until the next event from the frontend.
      Signed-off-by: default avatarPaul Durrant <paul.durrant@citrix.com>
      Cc: Wei Liu <wei.liu2@citrix.com>
      Cc: Ian Campbell <ian.campbell@citrix.com>
      Cc: David Vrabel <david.vrabel@citrix.com>
      Acked-by: default avatarWei Liu <wei.liu2@citrix.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      11b57f90
    • Hariprasad Shenai's avatar
    • Kuninori Morimoto's avatar
      irda: sh_sir: use devm_request_irq() · 4acb4d6c
      Kuninori Morimoto authored
      Huqiu reported current sh_sir driver doesn't
      call free_irq() in spite of using request_irq().
      This patch replaces request_irq() into devm_request_irq()
      to solve this issue
      
      Reported-by: Huqiu Liu<huqiuliu@gmail.com>
      Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4acb4d6c
    • Kuninori Morimoto's avatar
      irda: sh_irda: use devm_request_irq() · 033b06eb
      Kuninori Morimoto authored
      Huqiu reported current sh_irda driver doesn't
      call free_irq() in spite of using request_irq().
      This patch replaces request_irq() into devm_request_irq()
      to solve this issue
      
      Reported-by: Huqiu Liu<huqiuliu@gmail.com>
      Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      033b06eb
    • Kuninori Morimoto's avatar
      irda: fixup SH_SIR position on Kconfig · 90e8c72e
      Kuninori Morimoto authored
      SH_SIR is not Dongle
      Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      90e8c72e
    • David S. Miller's avatar
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nftables · 751fcac1
      David S. Miller authored
      Pablo Neira Ayuso says:
      
      ====================
      nf_tables updates for net-next
      
      The following patchset contains the following nf_tables updates,
      mostly updates from Patrick McHardy, they are:
      
      * Add the "inet" table and filter chain type for this new netfilter
        family: NFPROTO_INET. This special table/chain allows IPv4 and IPv6
        rules, this should help to simplify the burden in the administration
        of dual stack firewalls. This also includes several patches to prepare
        the infrastructure for this new table and a new meta extension to
        match the layer 3 and 4 protocol numbers, from Patrick McHardy.
      
      * Load both IPv4 and IPv6 conntrack modules in nft_ct if the rule is used
        in NFPROTO_INET, as we don't certainly know which one would be used,
        also from Patrick McHardy.
      
      * Do not allow to delete a table that contains sets, otherwise these
        sets become orphan, from Patrick McHardy.
      
      * Hold a reference to the corresponding nf_tables family module when
        creating a table of that family type, to avoid the module deletion
        when in use, from Patrick McHardy.
      
      * Update chain counters before setting the chain policy to ensure that
        we don't leave the chain in inconsistent state in case of errors (aka.
        restore chain atomicity). This also fixes a possible leak if it fails
        to allocate the chain counters if no counters are passed to be restored,
        from Patrick McHardy.
      
      * Don't check for overflows in the table counter if we are just renaming
        a chain, from Patrick McHardy.
      
      * Replay the netlink request after dropping the nfnl lock to load the
        module that supports provides a chain type, from Patrick.
      
      * Fix chain type module references, from Patrick.
      
      * Several cleanups, function renames, constification and code
        refactorizations also from Patrick McHardy.
      
      * Add support to set the connmark, this can be used to set it based on
        the meta mark (similar feature to -j CONNMARK --restore), from
        Kristian Evensen.
      
      * A couple of fixes to the recently added meta/set support and nft_reject,
        and fix missing chain type unregistration if we fail to register our
        the family table/filter chain type, from myself.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      751fcac1
  2. 09 Jan, 2014 25 commits