1
From: luying1 <luying1@xiaomi.com>
1
From: Ying Lu <luying1@xiaomi.com>
2
2
3
The patchset fix the issue caused by the following modifications:
3
The patchset fix the issue caused by the following modifications:
4
commit 04e906839a053f092ef53f4fb2d610983412b904
4
commit 04e906839a053f092ef53f4fb2d610983412b904
5
(usbnet: fix cyclical race on disconnect with work queue)
5
(usbnet: fix cyclical race on disconnect with work queue)
6
6
...
...
14
attempt to access skb->next, triggering a NULL pointer dereference (Kernel Panic).
14
attempt to access skb->next, triggering a NULL pointer dereference (Kernel Panic).
15
15
16
Fix issue:
16
Fix issue:
17
adding the usbnet_going_away check in usb_submit_urb to synchronize the validation logic.
17
adding the usbnet_going_away check in usb_submit_urb to synchronize the validation logic.
18
18
19
Changes in v4
20
-use the correct "Cc:" tag format.
19
21
20
luying1 (1):
22
Changes in v3
23
-use the correct "Fixes:" tag format.
24
25
Changes in v2
26
-Use the formal name instead of an email alias.
27
28
Ying Lu (1):
21
usbnet:fix NPE during rx_complete
29
usbnet:fix NPE during rx_complete
22
30
23
drivers/net/usb/usbnet.c | 6 +++---
31
drivers/net/usb/usbnet.c | 6 +++---
24
1 file changed, 3 insertions(+), 3 deletions(-)
32
1 file changed, 3 insertions(+), 3 deletions(-)
25
33
26
--
34
--
27
2.40.1
35
2.49.0
28
36
diff view generated by jsdifflib
1
From: luying1 <luying1@xiaomi.com>
1
From: Ying Lu <luying1@xiaomi.com>
2
2
3
Missing usbnet_going_away Check in Critical Path.
3
Missing usbnet_going_away Check in Critical Path.
4
The usb_submit_urb function lacks a usbnet_going_away
4
The usb_submit_urb function lacks a usbnet_going_away
5
validation, whereas __usbnet_queue_skb includes this check.
5
validation, whereas __usbnet_queue_skb includes this check.
6
6
...
...
11
Subsequent processes:
11
Subsequent processes:
12
(e.g., rx_complete → defer_bh → __skb_unlink(skb, list))
12
(e.g., rx_complete → defer_bh → __skb_unlink(skb, list))
13
attempt to access skb->next, triggering a NULL pointer
13
attempt to access skb->next, triggering a NULL pointer
14
dereference (Kernel Panic).
14
dereference (Kernel Panic).
15
15
16
Signed-off-by: luying1 <luying1@xiaomi.com>
16
Fixes: 04e906839a05 ("usbnet: fix cyclical race on disconnect with work queue")
17
Cc: stable@vger.kernel.org
18
Signed-off-by: Ying Lu <luying1@xiaomi.com>
17
---
19
---
18
drivers/net/usb/usbnet.c | 6 +++---
20
drivers/net/usb/usbnet.c | 6 +++---
19
1 file changed, 3 insertions(+), 3 deletions(-)
21
1 file changed, 3 insertions(+), 3 deletions(-)
20
22
21
diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
23
diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
...
...
41
+            __usbnet_queue_skb(&dev->rxq, skb, rx_start);
43
+            __usbnet_queue_skb(&dev->rxq, skb, rx_start);
42
        }
44
        }
43
    } else {
45
    } else {
44
        netif_dbg(dev, ifdown, dev->net, "rx: stopped\n");
46
        netif_dbg(dev, ifdown, dev->net, "rx: stopped\n");
45
--
47
--
46
2.40.1
48
2.49.0
47
49
diff view generated by jsdifflib