1. 10 9月, 2020 3 次提交
  2. 09 9月, 2020 1 次提交
    • D
      rxrpc: Rewrite the client connection manager · 245500d8
      David Howells 提交于
      Rewrite the rxrpc client connection manager so that it can support multiple
      connections for a given security key to a peer.  The following changes are
      made:
      
       (1) For each open socket, the code currently maintains an rbtree with the
           connections placed into it, keyed by communications parameters.  This
           is tricky to maintain as connections can be culled from the tree or
           replaced within it.  Connections can require replacement for a number
           of reasons, e.g. their IDs span too great a range for the IDR data
           type to represent efficiently, the call ID numbers on that conn would
           overflow or the conn got aborted.
      
           This is changed so that there's now a connection bundle object placed
           in the tree, keyed on the same parameters.  The bundle, however, does
           not need to be replaced.
      
       (2) An rxrpc_bundle object can now manage the available channels for a set
           of parallel connections.  The lock that manages this is moved there
           from the rxrpc_connection struct (channel_lock).
      
       (3) There'a a dummy bundle for all incoming connections to share so that
           they have a channel_lock too.  It might be better to give each
           incoming connection its own bundle.  This bundle is not needed to
           manage which channels incoming calls are made on because that's the
           solely at whim of the client.
      
       (4) The restrictions on how many client connections are around are
           removed.  Instead, a previous patch limits the number of client calls
           that can be allocated.  Ordinarily, client connections are reaped
           after 2 minutes on the idle queue, but when more than a certain number
           of connections are in existence, the reaper starts reaping them after
           2s of idleness instead to get the numbers back down.
      
           It could also be made such that new call allocations are forced to
           wait until the number of outstanding connections subsides.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      245500d8
  3. 08 9月, 2020 3 次提交
    • J
      netfilter: nf_tables: add userdata support for nft_object · b131c964
      Jose M. Guisado Gomez 提交于
      Enables storing userdata for nft_object. Initially this will store an
      optional comment but can be extended in the future as needed.
      
      Adds new attribute NFTA_OBJ_USERDATA to nft_object.
      Signed-off-by: NJose M. Guisado Gomez <guigom@riseup.net>
      Signed-off-by: NPablo Neira Ayuso <pablo@netfilter.org>
      b131c964
    • J
      net: tighten the definition of interface statistics · 0db0c34c
      Jakub Kicinski 提交于
      This patch is born out of an investigation into which IEEE statistics
      correspond to which struct rtnl_link_stats64 members. Turns out that
      there seems to be reasonable consensus on the matter, among many drivers.
      To save others the time (and it took more time than I'm comfortable
      admitting) I'm adding comments referring to IEEE attributes to
      struct rtnl_link_stats64.
      
      Up until now we had two forms of documentation for stats - in
      Documentation/ABI/testing/sysfs-class-net-statistics and the comments
      on struct rtnl_link_stats64 itself. While the former is very cautious
      in defining the expected behavior, the latter feel quite dated and
      may not be easy to understand for modern day driver author
      (e.g. rx_over_errors). At the same time modern systems are far more
      complex and once obvious definitions lost their clarity. For example
      - does rx_packet count at the MAC layer (aFramesReceivedOK)?
      packets processed correctly by hardware? received by the driver?
      or maybe received by the stack?
      
      I tried to clarify the expectations, further clarifications from
      others are very welcome.
      
      The part hardest to untangle is rx_over_errors vs rx_fifo_errors
      vs rx_missed_errors. After much deliberation I concluded that for
      modern HW only two of the counters will make sense. The distinction
      between internal FIFO overflow and packets dropped due to back-pressure
      from the host is likely too implementation (driver and device) specific
      to expose in the standard stats.
      
      Now - which two of those counters we select to use is anyone's pick:
      
      sysfs documentation suggests rx_over_errors counts packets which
      did not fit into buffers due to MTU being too small, which I reused.
      There don't seem to be many modern drivers using it (well, CAN drivers
      seem to love this statistic).
      
      Of the remaining two I picked rx_missed_errors to report device drops.
      bnxt reports it and it's folded into "drop"s in procfs (while
      rx_fifo_errors is an error, and modern devices usually receive the frame
      OK, they just can't admit it into the pipeline).
      
      Of the drivers I looked at only AMD Lance-like and NS8390-like use all
      three of these counters. rx_missed_errors counts missed frames,
      rx_over_errors counts overflow events, and rx_fifo_errors counts frames
      which were truncated because they didn't fit into buffers. This suggests
      that rx_fifo_errors may be the correct stat for truncated packets, but
      I'd think a FIFO stat counting truncated packets would be very confusing
      to a modern reader.
      
      v2:
       - add driver developer notes about ethtool stat count and reset
       - replace Ethernet with IEEE 802.3 to better indicate source of attrs
       - mention byte counters don't count FCS
       - clarify RX counter is from device to host
       - drop "sightly" from sysfs paragraph
       - add examples of ethtool stats
       - s/incoming/received/ s/incoming/transmitted/
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      0db0c34c
    • N
      net: bridge: mcast: add support for src list and filter mode dumping · 5205e919
      Nikolay Aleksandrov 提交于
      Support per port group src list (address and timer) and filter mode
      dumping. Protected by either multicast_lock or rcu.
      
      v3: add IPv6 support
      v2: require RCU or multicast_lock to traverse src groups
      Signed-off-by: NNikolay Aleksandrov <nikolay@cumulusnetworks.com>
      Signed-off-by: NJakub Kicinski <kuba@kernel.org>
      5205e919
  4. 06 9月, 2020 1 次提交
  5. 05 9月, 2020 2 次提交
  6. 04 9月, 2020 1 次提交
  7. 03 9月, 2020 2 次提交
  8. 02 9月, 2020 1 次提交
    • S
      drm/i915: Fix sha_text population code · 9ab57658
      Sean Paul 提交于
      This patch fixes a few bugs:
      
      1- We weren't taking into account sha_leftovers when adding multiple
         ksvs to sha_text. As such, we were or'ing the end of ksv[j - 1] with
         the beginning of ksv[j]
      
      2- In the sha_leftovers == 2 and sha_leftovers == 3 case, bstatus was
         being placed on the wrong half of sha_text, overlapping the leftover
         ksv value
      
      3- In the sha_leftovers == 2 case, we need to manually terminate the
         byte stream with 0x80 since the hardware doesn't have enough room to
         add it after writing M0
      
      The upside is that all of the HDCP supported HDMI repeaters I could
      find on Amazon just strip HDCP anyways, so it turns out to be _really_
      hard to hit any of these cases without an MST hub, which is not (yet)
      supported. Oh, and the sha_leftovers == 1 case works perfectly!
      
      Fixes: ee5e5e7a ("drm/i915: Add HDCP framework + base implementation")
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Ramalingam C <ramalingam.c@intel.com>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Cc: Sean Paul <seanpaul@chromium.org>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: intel-gfx@lists.freedesktop.org
      Cc: <stable@vger.kernel.org> # v4.17+
      Reviewed-by: NRamalingam C <ramalingam.c@intel.com>
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Signed-off-by: NRamalingam C <ramalingam.c@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200818153910.27894-2-sean@poorly.run
      (cherry picked from commit 1f088221)
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      9ab57658
  9. 01 9月, 2020 21 次提交
  10. 29 8月, 2020 5 次提交