1. 15 6月, 2022 11 次提交
  2. 14 6月, 2022 12 次提交
  3. 13 6月, 2022 11 次提交
    • Y
      net: make __sys_accept4_file() static · c0424532
      Yajun Deng 提交于
      __sys_accept4_file() isn't used outside of the file, make it static.
      
      As the same time, move file_flags and nofile parameters into
      __sys_accept4_file().
      Signed-off-by: NYajun Deng <yajun.deng@linux.dev>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c0424532
    • E
      tcp: sk_forced_mem_schedule() optimization · 219160be
      Eric Dumazet 提交于
      sk_memory_allocated_add() has three callers, and returns
      to them @memory_allocated.
      
      sk_forced_mem_schedule() is one of them, and ignores
      the returned value.
      
      Change sk_memory_allocated_add() to return void.
      
      Change sock_reserve_memory() and __sk_mem_raise_allocated()
      to call sk_memory_allocated().
      
      This removes one cache line miss [1] for RPC workloads,
      as first skbs in TCP write queue and receive queue go through
      sk_forced_mem_schedule().
      
      [1] Cache line holding tcp_memory_allocated.
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Acked-by: NSoheil Hassas Yeganeh <soheil@google.com>
      Reviewed-by: NShakeel Butt <shakeelb@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      219160be
    • P
      net: smsc95xx: add support for Microchip EVB-LAN8670-USB · 4066bf4c
      Parthiban Veerasooran 提交于
      This patch adds support for Microchip's EVB-LAN8670-USB 10BASE-T1S
      ethernet device to the existing smsc95xx driver by adding the new
      USB VID/PID pairs.
      Signed-off-by: NParthiban Veerasooran <Parthiban.Veerasooran@microchip.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4066bf4c
    • Y
      nfp: support 48-bit DMA addressing for NFP3800 · 5f30671d
      Yinjun Zhang 提交于
      48-bit DMA addressing is supported in NFP3800 HW and implemented
      in NFDK firmware, so enable this feature in driver now. Note that
      with this change, NFD3 firmware, which doesn't implement 48-bit
      DMA, cannot be used for NFP3800 any more.
      
      RX free list descriptor, used by both NFD3 and NFDK, is also modified
      to support 48-bit DMA. That's OK because the top bits is always get
      set to 0 when assigned with 40-bit address.
      
      Based on initial work of Jakub Kicinski <jakub.kicinski@netronome.com>.
      Signed-off-by: NYinjun Zhang <yinjun.zhang@corigine.com>
      Signed-off-by: NSimon Horman <simon.horman@corigine.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5f30671d
    • D
      Merge branch 'ipa-refactoring' · 11a1585f
      David S. Miller 提交于
      Alex Elder says:
      
      ====================
      net: ipa: simple refactoring
      
      This series contains some minor code improvements.
      
      The first patch verifies that the configuration is compatible with a
      recently-defined limit.  The second and third rename two fields so
      they better reflect their use in the code.  The next gets rid of an
      empty function by reworking its only caller.
      
      The last two begin to remove the assumption that an event ring is
      associated with a single channel.  Eventually we'll support having
      multiple channels share an event ring but some more needs to be done
      before that can happen.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      11a1585f
    • A
      net: ipa: derive channel from transaction · bcec9ecb
      Alex Elder 提交于
      In gsi_channel_tx_queued(), we report when a transaction gets passed
      to hardware.  Change that function so it takes transaction rather
      than a channel as its argument, and derive the channel from the
      transaction.  Rename the function accordingly.
      
      Delete the header comments above the function definition; the ones
      above the declaration in "gsi_private.h" should suffice.  In
      addition, the comments above gsi_channel_tx_update() do a fine job
      of explaining what's going on.
      Signed-off-by: NAlex Elder <elder@linaro.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bcec9ecb
    • A
      net: ipa: determine channel from event · 7dd9558f
      Alex Elder 提交于
      Each event in an event ring describes the TRE whose completion
      caused the event.  Currently, every event ring is dedicated to a
      single channel, so the channel is easily derived from the event
      ring.
      
      An event ring can actually be shared by more than one channel
      though, and to distinguish events for one channel from another, the
      event structure contains a field indicating which channel the event
      is associated with.
      
      In gsi_event_trans(), use the channel ID in an event to determine
      which channel the event is for.  This makes the channel pointer now
      passed to that function irrelevant; pass the GSI pointer to that
      function instead.
      
      And although it shouldn't happen, warn if an event arrives that
      records a channel ID that's not in use, or if the event does not
      have a transaction associated with it.
      Signed-off-by: NAlex Elder <elder@linaro.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7dd9558f
    • A
      net: ipa: simplify endpoint transaction completion · 983a1a30
      Alex Elder 提交于
      When a GSI transaction completes, ipa_endpoint_trans_complete() is
      eventually called.  That handles TX and RX completions separately,
      but ipa_endpoint_tx_complete() is a no-op.
      
      Instead, have ipa_endpoint_trans_complete() return immediately for a
      TX transaction, and incorporate code from ipa_endpoint_rx_complete()
      to handle RX transactions.
      Signed-off-by: NAlex Elder <elder@linaro.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      983a1a30
    • A
      net: ipa: rename endpoint->trans_tre_max · 317595d2
      Alex Elder 提交于
      The trans_tre_max field of the IPA endpoint structure is only used
      to limit the number of fragments allowed for an SKB being prepared
      for transmission.  Recognizing that, rename the field skb_frag_max,
      and reduce its value by 1.
      Signed-off-by: NAlex Elder <elder@linaro.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      317595d2
    • A
      net: ipa: rename channel->tlv_count · 88e03057
      Alex Elder 提交于
      Each GSI channel has a TLV FIFO of a certain size, specified in the
      configuration data for an AP channel.  That size dictates the
      maximum number of TREs that are allowed in a single transaction.
      
      The only way that value is used after initialization is as a limit
      on the number of TREs in a transaction; calling it "tlv_count"
      isn't helpful, and in fact gsi_channel_trans_tre_max() exists to
      sort of abstract it.
      
      Instead, rename the channel->tlv_count field trans_tre_max, and get
      rid of the helper function.  Update a couple of comments as well.
      Signed-off-by: NAlex Elder <elder@linaro.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      88e03057
    • A
      net: ipa: verify command channel TLV count · 92f78f81
      Alex Elder 提交于
      In commit 8797972a ("net: ipa: remove command info pool"), the
      maximum number of IPA commands that would be sent in a single
      transaction was defined.  That number can't exceed the size of the
      TLV FIFO on the command channel, and we can check that at runtime.
      
      To add this check, pass a new flag to gsi_channel_data_valid() to
      indicate the channel being checked is being used for IPA commands.
      Knowing that we can also verify the channel direction is correct.
      
      Use a new local variable that refers to the command-specific portion
      of the data being checked.
      Signed-off-by: NAlex Elder <elder@linaro.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      92f78f81
  4. 11 6月, 2022 6 次提交