1. 27 Mar, 2020 6 commits
  2. 26 Mar, 2020 12 commits
  3. 25 Mar, 2020 16 commits
  4. 24 Mar, 2020 6 commits
    • Andre Przywara's avatar
      net: phy: mdio-bcm-unimac: Fix clock handling · c312c781
      Andre Przywara authored
      The DT binding for this PHY describes an *optional* clock property.
      Due to a bug in the error handling logic, we are actually ignoring this
      clock *all* of the time so far.
      
      Fix this by using devm_clk_get_optional() to handle this clock properly.
      
      Fixes: b78ac6ec ("net: phy: mdio-bcm-unimac: Allow configuring MDIO clock divider")
      Signed-off-by: default avatarAndre Przywara <andre.przywara@arm.com>
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c312c781
    • Raju Rangoju's avatar
      cxgb4/ptp: pass the sign of offset delta in FW CMD · 50e0d28d
      Raju Rangoju authored
      cxgb4_ptp_fineadjtime() doesn't pass the signedness of offset delta
      in FW_PTP_CMD. Fix it by passing correct sign.
      Signed-off-by: default avatarRaju Rangoju <rajur@chelsio.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      50e0d28d
    • Vladimir Oltean's avatar
      net: dsa: tag_8021q: replace dsa_8021q_remove_header with __skb_vlan_pop · e80f40cb
      Vladimir Oltean authored
      Not only did this wheel did not need reinventing, but there is also
      an issue with it: It doesn't remove the VLAN header in a way that
      preserves the L2 payload checksum when that is being provided by the DSA
      master hw.  It should recalculate checksum both for the push, before
      removing the header, and for the pull afterwards. But the current
      implementation is quite dizzying, with pulls followed immediately
      afterwards by pushes, the memmove is done before the push, etc.  This
      makes a DSA master with RX checksumming offload to print stack traces
      with the infamous 'hw csum failure' message.
      
      So remove the dsa_8021q_remove_header function and replace it with
      something that actually works with inet checksumming.
      
      Fixes: d4619336 ("net: dsa: tag_8021q: Create helper function for removing VLAN header")
      Signed-off-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e80f40cb
    • Zh-yuan Ye's avatar
      net: cbs: Fix software cbs to consider packet sending time · 961d0e5b
      Zh-yuan Ye authored
      Currently the software CBS does not consider the packet sending time
      when depleting the credits. It caused the throughput to be
      Idleslope[kbps] * (Port transmit rate[kbps] / |Sendslope[kbps]|) where
      Idleslope * (Port transmit rate / (Idleslope + |Sendslope|)) = Idleslope
      is expected. In order to fix the issue above, this patch takes the time
      when the packet sending completes into account by moving the anchor time
      variable "last" ahead to the send completion time upon transmission and
      adding wait when the next dequeue request comes before the send
      completion time of the previous packet.
      
      changelog:
      V2->V3:
       - remove unnecessary whitespace cleanup
       - add the checks if port_rate is 0 before division
      
      V1->V2:
       - combine variable "send_completed" into "last"
       - add the comment for estimate of the packet sending
      
      Fixes: 585d763a ("net/sched: Introduce Credit Based Shaper (CBS) qdisc")
      Signed-off-by: default avatarZh-yuan Ye <ye.zh-yuan@socionext.com>
      Reviewed-by: default avatarVinicius Costa Gomes <vinicius.gomes@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      961d0e5b
    • Eugene Syromiatnikov's avatar
      Input: avoid BIT() macro usage in the serio.h UAPI header · 52afa505
      Eugene Syromiatnikov authored
      The commit 19ba1eb1 ("Input: psmouse - add a custom serio protocol
      to send extra information") introduced usage of the BIT() macro
      for SERIO_* flags; this macro is not provided in UAPI headers.
      Replace if with similarly defined _BITUL() macro defined
      in <linux/const.h>.
      
      Fixes: 19ba1eb1 ("Input: psmouse - add a custom serio protocol to send extra information")
      Signed-off-by: default avatarEugene Syromiatnikov <esyr@redhat.com>
      Cc: <stable@vger.kernel.org> # v5.0+
      Link: https://lore.kernel.org/r/20200324041341.GA32335@asgard.redhat.comSigned-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      52afa505
    • Leon Romanovsky's avatar
      RDMA/mlx5: Fix access to wrong pointer while performing flush due to error · 950bf4f1
      Leon Romanovsky authored
      The main difference between send and receive SW completions is related to
      separate treatment of WQ queue. For receive completions, the initial index
      to be flushed is stored in "tail", while for send completions, it is in
      deleted "last_poll".
      
        CPU: 54 PID: 53405 Comm: kworker/u161:0 Kdump: loaded Tainted: G           OE    --------- -t - 4.18.0-147.el8.ppc64le #1
        Workqueue: ib-comp-unb-wq ib_cq_poll_work [ib_core]
        NIP:  c000003c7c00a000 LR: c00800000e586af4 CTR: c000003c7c00a000
        REGS: c0000036cc9db940 TRAP: 0400   Tainted: G           OE    --------- -t -  (4.18.0-147.el8.ppc64le)
        MSR:  9000000010009033 <SF,HV,EE,ME,IR,DR,RI,LE>  CR: 24004488  XER: 20040000
        CFAR: c00800000e586af0 IRQMASK: 0
        GPR00: c00800000e586ab4 c0000036cc9dbbc0 c00800000e5f1a00 c0000037d8433800
        GPR04: c000003895a26800 c0000037293f2000 0000000000000201 0000000000000011
        GPR08: c000003895a26c80 c000003c7c00a000 0000000000000000 c00800000ed30438
        GPR12: c000003c7c00a000 c000003fff684b80 c00000000017c388 c00000396ec4be40
        GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
        GPR20: c00000000151e498 0000000000000010 c000003895a26848 0000000000000010
        GPR24: 0000000000000010 0000000000010000 c000003895a26800 0000000000000000
        GPR28: 0000000000000010 c0000037d8433800 c000003895a26c80 c000003895a26800
        NIP [c000003c7c00a000] 0xc000003c7c00a000
        LR [c00800000e586af4] __ib_process_cq+0xec/0x1b0 [ib_core]
        Call Trace:
        [c0000036cc9dbbc0] [c00800000e586ab4] __ib_process_cq+0xac/0x1b0 [ib_core] (unreliable)
        [c0000036cc9dbc40] [c00800000e586c88] ib_cq_poll_work+0x40/0xb0 [ib_core]
        [c0000036cc9dbc70] [c000000000171f44] process_one_work+0x2f4/0x5c0
        [c0000036cc9dbd10] [c000000000172a0c] worker_thread+0xcc/0x760
        [c0000036cc9dbdc0] [c00000000017c52c] kthread+0x1ac/0x1c0
        [c0000036cc9dbe30] [c00000000000b75c] ret_from_kernel_thread+0x5c/0x80
      
      Fixes: 8e3b6883 ("RDMA/mlx5: Delete unreachable handle_atomic code by simplifying SW completion")
      Link: https://lore.kernel.org/r/20200318091640.44069-1-leon@kernel.orgSigned-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@mellanox.com>
      950bf4f1