Pull USB / Thunderbolt fixes from Greg KH: "Here are some USB fixes for 6.4-rc3, as well as a driver core fix that resolves a memory leak that shows up in USB devices easier than other subsystems. Included in here are: - driver core memory leak as reported and tested by syzbot and developers - dwc3 driver fixes for reported problems - xhci driver fixes for reported problems - USB gadget driver reverts to resolve regressions - usbtmc driver fix for syzbot reported problem - thunderbolt driver fixes for reported issues - other small USB fixes All of these, except for the driver core fix, have been in linux-next with no reported problems. The driver core fix was tested and verified to solve the issue by syzbot and the original reporter" * tag 'usb-6.4-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: driver core: class: properly reference count class_dev_iter() xhci: Fix incorrect tracking of free space on transfer rings xhci-pci: Only run d3cold avoidance quirk for s2idle usb-storage: fix deadlock when a scsi command timeouts more than once usb: dwc3: fix a test for error in dwc3_core_init() usb: typec: tps6598x: Fix fault at module removal usb: gadget: u_ether: Fix host MAC address case usb: typec: altmodes/displayport: fix pin_assignment_show Revert "usb: gadget: udc: core: Invoke usb_gadget_connect only when started" Revert "usb: gadget: udc: core: Prevent redundant calls to pullup" usb: gadget: drop superfluous ':' in doc string usb: dwc3: debugfs: Resume dwc3 before accessing registers USB: UHCI: adjust zhaoxin UHCI controllers OverCurrent bit value usb: dwc3: fix gadget mode suspend interrupt handler issue usb: dwc3: gadget: Improve dwc3_gadget_suspend() and dwc3_gadget_resume() USB: usbtmc: Fix direction for 0-length ioctl control messages thunderbolt: Clear registers properly when auto clear isn't in use
Showing the changes to include/linux (2 of 19 files). Show all
Unified · Split
| @@ -74,6 +74,7 @@ struct class { · 73 unmodified lines | |||
| 74 | struct class_dev_iter { | 74 | struct class_dev_iter { |
| 75 | struct klist_iter ki; | 75 | struct klist_iter ki; |
| 76 | const struct device_type *type; | 76 | const struct device_type *type; |
| 77 | struct subsys_private *sp; | ||
| 77 | }; | 78 | }; |
| 78 | 79 | ||
| 79 | int __must_check class_register(const struct class *class); | 80 | int __must_check class_register(const struct class *class); |
| @@ -443,7 +443,7 @@ static inline struct usb_composite_driver *to_cdriver( · 442 unmodified lines | |||
| 443 | * @bcd_webusb_version: 0x0100 by default, WebUSB specification version | 443 | * @bcd_webusb_version: 0x0100 by default, WebUSB specification version |
| 444 | * @b_webusb_vendor_code: 0x0 by default, vendor code for WebUSB | 444 | * @b_webusb_vendor_code: 0x0 by default, vendor code for WebUSB |
| 445 | * @landing_page: empty by default, landing page to announce in WebUSB | 445 | * @landing_page: empty by default, landing page to announce in WebUSB |
| 446 | * @use_webusb:: false by default, interested gadgets set it | 446 | * @use_webusb: false by default, interested gadgets set it |
| 447 | * @os_desc_config: the configuration to be used with OS descriptors | 447 | * @os_desc_config: the configuration to be used with OS descriptors |
| 448 | * @setup_pending: true when setup request is queued but not completed | 448 | * @setup_pending: true when setup request is queued but not completed |
| 449 | * @os_desc_pending: true when os_desc request is queued but not completed | 449 | * @os_desc_pending: true when os_desc request is queued but not completed |