Activity log for bug #1859575

Date Who What changed Old value New value Message
2020-01-14 07:46:08 Fred Kimmy bug added bug
2020-01-14 07:46:29 Fred Kimmy nominated for series kunpeng920/ubuntu-18.04
2020-01-14 07:46:29 Fred Kimmy bug task added kunpeng920/ubuntu-18.04
2020-01-14 07:46:29 Fred Kimmy nominated for series kunpeng920/upstream-kernel
2020-01-14 07:46:29 Fred Kimmy bug task added kunpeng920/upstream-kernel
2020-01-14 07:46:29 Fred Kimmy nominated for series kunpeng920/ubuntu-18.04-hwe
2020-01-14 07:46:29 Fred Kimmy bug task added kunpeng920/ubuntu-18.04-hwe
2020-01-14 08:17:43 Ike Panhc description [Bug Description] Currently, hns3_nic_maybe_stop_tx() uses skb_copy() to linearize a SKB if the BD num required by the SKB does not meet the hardware limitation, and it linearizes the SKB by allocating a new linearized SKB and freeing the old SKB, if hns3_nic_maybe_stop_tx() returns -EBUSY because there are no enough space in the ring to send the linearized skb to hardware, the sch_direct_xmit() still hold reference to old SKB and try to retransmit the old SKB when dev_hard_start_xmit() return TX_BUSY, which may cause use after freed problem. [Steps to Reproduce] 1.run IO with high throughput [Actual Results] Oops [Expected Results] IO ok [Reproducibility] Inevitably [Additional information] Hardware: D06 Firmware: NA Kernel: NA [Resolution] This patch fixes it by using __skb_linearize() to linearize the SKB in hns3_nic_maybe_stop_tx(). net: hns3: fix a use after free problem in hns3_nic_maybe_stop_tx() [Bug Description] Currently, hns3_nic_maybe_stop_tx() uses skb_copy() to linearize a SKB if the BD num required by the SKB does not meet the hardware limitation, and it linearizes the SKB by allocating a new linearized SKB and freeing the old SKB, if hns3_nic_maybe_stop_tx() returns -EBUSY because there are no enough space in the ring to send the linearized skb to hardware, the sch_direct_xmit() still hold reference to old SKB and try to retransmit the old SKB when dev_hard_start_xmit() return TX_BUSY, which may cause use after freed problem. [Steps to Reproduce] 1.run IO with high throughput [Actual Results] Oops [Expected Results] IO ok [Reproducibility] Inevitably [Additional information] Hardware: D06 Firmware: NA Kernel: NA [Resolution] This patch fixes it by using __skb_linearize() to linearize the SKB in hns3_nic_maybe_stop_tx(). d1a37dedcfcf net: hns3: fix a use after free problem in hns3_nic_maybe_stop_tx()
2020-01-14 08:17:56 Ike Panhc kunpeng920/upstream-kernel: status New Fix Committed
2020-01-14 08:18:00 Ike Panhc kunpeng920/upstream-kernel: milestone linux-v5.5
2020-01-14 08:18:10 Ike Panhc nominated for series kunpeng920/ubuntu-20.04
2020-01-14 08:18:10 Ike Panhc bug task added kunpeng920/ubuntu-20.04
2020-01-14 08:18:23 Ike Panhc tags ikeradar
2020-01-15 05:50:40 Ike Panhc kunpeng920/ubuntu-18.04: status New Invalid
2020-01-15 05:50:44 Ike Panhc kunpeng920/ubuntu-18.04: status Invalid Won't Fix
2020-01-27 15:12:56 dann frazier kunpeng920/upstream-kernel: status Fix Committed Fix Released
2020-02-09 07:15:17 Ike Panhc kunpeng920/ubuntu-20.04: status New Fix Committed
2020-02-09 07:15:23 Ike Panhc kunpeng920/ubuntu-20.04: milestone ubuntu-20.04-ga
2020-02-09 07:15:31 Ike Panhc kunpeng920/ubuntu-18.04-hwe: status New Fix Committed
2020-02-09 07:15:36 Ike Panhc kunpeng920/ubuntu-18.04-hwe: milestone ubuntu-18.04.5
2020-02-09 07:15:41 Ike Panhc kunpeng920: status New Fix Committed
2020-02-26 09:33:12 Ike Panhc tags ikeradar
2020-04-24 10:53:52 Andrew Cloke kunpeng920/ubuntu-20.04: status Fix Committed Fix Released
2020-08-14 03:30:12 Ike Panhc kunpeng920/ubuntu-18.04-hwe: status Fix Committed Fix Released
2020-08-14 03:30:16 Ike Panhc kunpeng920: status Fix Committed Fix Released