1. 16 4月, 2020 9 次提交
    • T
      tipc: fix incorrect increasing of link window · edadedf1
      Tuong Lien 提交于
      In commit 16ad3f40 ("tipc: introduce variable window congestion
      control"), we allow link window to change with the congestion avoidance
      algorithm. However, there is a bug that during the slow-start if packet
      retransmission occurs, the link will enter the fast-recovery phase, set
      its window to the 'ssthresh' which is never less than 300, so the link
      window suddenly increases to that limit instead of decreasing.
      
      Consequently, two issues have been observed:
      
      - For broadcast-link: it can leave a gap between the link queues that a
      new packet will be inserted and sent before the previous ones, i.e. not
      in-order.
      
      - For unicast: the algorithm does not work as expected, the link window
      jumps to the slow-start threshold whereas packet retransmission occurs.
      
      This commit fixes the issues by avoiding such the link window increase,
      but still decreasing if the 'ssthresh' is lowered.
      
      Fixes: 16ad3f40 ("tipc: introduce variable window congestion control")
      Acked-by: NJon Maloy <jmaloy@redhat.com>
      Signed-off-by: NTuong Lien <tuong.t.lien@dektech.com.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      edadedf1
    • C
      Documentation: Fix tcp_challenge_ack_limit default value · 5309960e
      Cambda Zhu 提交于
      The default value of tcp_challenge_ack_limit has been changed from
      100 to 1000 and this patch fixes its documentation.
      Signed-off-by: NCambda Zhu <cambda@linux.alibaba.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5309960e
    • J
      net: tulip: make early_486_chipsets static · ae5a44bb
      Jason Yan 提交于
      Fix the following sparse warning:
      
      drivers/net/ethernet/dec/tulip/tulip_core.c:1280:28: warning: symbol
      'early_486_chipsets' was not declared. Should it be static?
      Reported-by: NHulk Robot <hulkci@huawei.com>
      Signed-off-by: NJason Yan <yanaijie@huawei.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ae5a44bb
    • J
      dt-bindings: net: ethernet-phy: add desciption for ethernet-phy-id1234.d400 · c8322754
      Johan Jonker 提交于
      The description below is already in use in
      'rk3228-evb.dts', 'rk3229-xms6.dts' and 'rk3328.dtsi'
      but somehow never added to a document, so add
      "ethernet-phy-id1234.d400", "ethernet-phy-ieee802.3-c22"
      for ethernet-phy nodes on Rockchip platforms to
      'ethernet-phy.yaml'.
      Signed-off-by: NJohan Jonker <jbx6244@gmail.com>
      Acked-by: NFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c8322754
    • C
      ipv6: remove redundant assignment to variable err · 672e2477
      Colin Ian King 提交于
      The variable err is being initialized with a value that is never read
      and it is being updated later with a new value.  The initialization is
      redundant and can be removed.
      
      Addresses-Coverity: ("Unused value")
      Signed-off-by: NColin Ian King <colin.king@canonical.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      672e2477
    • J
      net/rds: Use ERR_PTR for rds_message_alloc_sgs() · 7dba9203
      Jason Gunthorpe 提交于
      Returning the error code via a 'int *ret' when the function returns a
      pointer is very un-kernely and causes gcc 10's static analysis to choke:
      
      net/rds/message.c: In function ‘rds_message_map_pages’:
      net/rds/message.c:358:10: warning: ‘ret’ may be used uninitialized in this function [-Wmaybe-uninitialized]
        358 |   return ERR_PTR(ret);
      
      Use a typical ERR_PTR return instead.
      Signed-off-by: NJason Gunthorpe <jgg@mellanox.com>
      Acked-by: NSantosh Shilimkar <santosh.shilimkar@oracle.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7dba9203
    • V
      net: mscc: ocelot: fix untagged packet drops when enslaving to vlan aware bridge · 87b0f983
      Vladimir Oltean 提交于
      To rehash a previous explanation given in commit 1c44ce56 ("net:
      mscc: ocelot: fix vlan_filtering when enslaving to bridge before link is
      up"), the switch driver operates the in a mode where a single VLAN can
      be transmitted as untagged on a particular egress port. That is the
      "native VLAN on trunk port" use case.
      
      The configuration for this native VLAN is driven in 2 ways:
       - Set the egress port rewriter to strip the VLAN tag for the native
         VID (as it is egress-untagged, after all).
       - Configure the ingress port to drop untagged and priority-tagged
         traffic, if there is no native VLAN. The intention of this setting is
         that a trunk port with no native VLAN should not accept untagged
         traffic.
      
      Since both of the above configurations for the native VLAN should only
      be done if VLAN awareness is requested, they are actually done from the
      ocelot_port_vlan_filtering function, after the basic procedure of
      toggling the VLAN awareness flag of the port.
      
      But there's a problem with that simplistic approach: we are trying to
      juggle with 2 independent variables from a single function:
       - Native VLAN of the port - its value is held in port->vid.
       - VLAN awareness state of the port - currently there are some issues
         here, more on that later*.
      The actual problem can be seen when enslaving the switch ports to a VLAN
      filtering bridge:
       0. The driver configures a pvid of zero for each port, when in
          standalone mode. While the bridge configures a default_pvid of 1 for
          each port that gets added as a slave to it.
       1. The bridge calls ocelot_port_vlan_filtering with vlan_aware=true.
          The VLAN-filtering-dependent portion of the native VLAN
          configuration is done, considering that the native VLAN is 0.
       2. The bridge calls ocelot_vlan_add with vid=1, pvid=true,
          untagged=true. The native VLAN changes to 1 (change which gets
          propagated to hardware).
       3. ??? - nobody calls ocelot_port_vlan_filtering again, to reapply the
          VLAN-filtering-dependent portion of the native VLAN configuration,
          for the new native VLAN of 1. One can notice that after toggling "ip
          link set dev br0 type bridge vlan_filtering 0 && ip link set dev br0
          type bridge vlan_filtering 1", the new native VLAN finally makes it
          through and untagged traffic finally starts flowing again. But
          obviously that shouldn't be needed.
      
      So it is clear that 2 independent variables need to both re-trigger the
      native VLAN configuration. So we introduce the second variable as
      ocelot_port->vlan_aware.
      
      *Actually both the DSA Felix driver and the Ocelot driver already had
      each its own variable:
       - Ocelot: ocelot_port_private->vlan_aware
       - Felix: dsa_port->vlan_filtering
      but the common Ocelot library needs to work with a single, common,
      variable, so there is some refactoring done to move the vlan_aware
      property from the private structure into the common ocelot_port
      structure.
      
      Fixes: 97bb69e1 ("net: mscc: ocelot: break apart ocelot_vlan_port_apply")
      Signed-off-by: NVladimir Oltean <vladimir.oltean@nxp.com>
      Reviewed-by: NHoratiu Vultur <horatiu.vultur@microchip.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      87b0f983
    • D
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf · 78b87711
      David S. Miller 提交于
      Daniel Borkmann says:
      
      ====================
      pull-request: bpf 2020-04-15
      
      The following pull-request contains BPF updates for your *net* tree.
      
      We've added 10 non-merge commits during the last 3 day(s) which contain
      a total of 11 files changed, 238 insertions(+), 95 deletions(-).
      
      The main changes are:
      
      1) Fix offset overflow for BPF_MEM BPF_DW insn mapping on arm32 JIT,
         from Luke Nelson and Xi Wang.
      
      2) Prevent mprotect() to make frozen & mmap()'ed BPF map writeable
         again, from Andrii Nakryiko and Jann Horn.
      
      3) Fix type of old_fd in bpf_xdp_set_link_opts to int in libbpf and add
         selftests, from Toke Høiland-Jørgensen.
      
      4) Fix AF_XDP to check that headroom cannot be larger than the available
         space in the chunk, from Magnus Karlsson.
      
      5) Fix reset of XDP prog when expected_fd is set, from David Ahern.
      
      6) Fix a segfault in bpftool's struct_ops command when BTF is not
         available, from Daniel T. Lee.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      78b87711
    • D
      Merge tag 'mac80211-for-net-2020-04-15' of... · 6058ee09
      David S. Miller 提交于
      Merge tag 'mac80211-for-net-2020-04-15' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211
      
      Johannes Berg says:
      
      ====================
      A couple of fixes:
       * FTM responder policy netlink validation fix
         (but the only user validates again later)
       * kernel-doc fixes
       * a fix for a race in mac80211 radio registration vs. userspace
       * a mesh channel switch fix
       * a fix for a syzbot reported kasprintf() issue
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6058ee09
  2. 15 4月, 2020 26 次提交
  3. 14 4月, 2020 4 次提交
  4. 13 4月, 2020 1 次提交