usb: core: urb: fix URB structure initialization function
Explicitly initialize URB structure urb_list field in usb_init_urb(). This field can be potentially accessed uninitialized and its initialization is coherent with the usage of list_del_init() in usb_hcd_unlink_urb_from_ep() and usb_giveback_urb_bh() and its explicit initialization in usb_hcd_submit_urb() error path. Signed-off-by: Emiliano Ingrassia <ingrassia@epigenesys.com> Cc: stable <stable@vger.kernel.org> Link: https://lore.kernel.org/r/20191127160355.GA27196@ingrassia.epigenesys.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
5c388abefd
commit
1cd17f7f0d
@@ -45,6 +45,7 @@ void usb_init_urb(struct urb *urb)
|
|||||||
if (urb) {
|
if (urb) {
|
||||||
memset(urb, 0, sizeof(*urb));
|
memset(urb, 0, sizeof(*urb));
|
||||||
kref_init(&urb->kref);
|
kref_init(&urb->kref);
|
||||||
|
INIT_LIST_HEAD(&urb->urb_list);
|
||||||
INIT_LIST_HEAD(&urb->anchor_list);
|
INIT_LIST_HEAD(&urb->anchor_list);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user