FAILED: patch "[PATCH] usb: typec: class: Invalidate USB device pointers on partner" failed to apply to 6.12-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 6.12-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.12.y
git checkout FETCH_HEAD
git cherry-pick -x 66e1a887273c6b89f09bc11a40d0a71d5a081a8e
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2025042838-staple-purr-ea46@gregkh' --subject-prefix 'PATCH 6.12.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 66e1a887273c6b89f09bc11a40d0a71d5a081a8e Mon Sep 17 00:00:00 2001
From: Andrei Kuchynski <[email protected]>
Date: Fri, 21 Mar 2025 14:37:27 +0000
Subject: [PATCH] usb: typec: class: Invalidate USB device pointers on partner
unregistration
To avoid using invalid USB device pointers after a Type-C partner disconnects, this patch clears the pointers upon partner unregistration. This ensures a clean state for future connections.
drivers/usb/typec/class.c +6 -2
@@ -1086,10 +1086,14 @@ void typec_unregister_partner(struct typec_partner *partner) port =to_typec_port (partner->dev.parent);mutex_lock (&port->partner_link_lock); -if (port->usb2_dev) +if (port->usb2_dev) {typec_partner_unlink_device (partner, port->usb2_dev); -if (port->usb3_dev) + port->usb2_dev =NULL ; + } +if (port->usb3_dev) {typec_partner_unlink_device (partner, port->usb3_dev); + port->usb3_dev =NULL ; + }device_unregister (&partner->dev);mutex_unlock (&port->partner_link_lock);
PATCH 1/1 usb: typec: class: Invalidate USB device pointers on partner unregistration
To avoid using invalid USB device pointers after a Type-C partner disconnects, this patch clears the pointers upon partner unregistration. This ensures a clean state for future connections.
--- drivers/usb/typec/class.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
drivers/usb/typec/class.c +6 -2
@@ -966,10 +966,14 @@ void typec_unregister_partner(struct typec_partner *partner) port =to_typec_port (partner->dev.parent);mutex_lock (&port->partner_link_lock); -if (port->usb2_dev) +if (port->usb2_dev) {typec_partner_unlink_device (partner, port->usb2_dev); -if (port->usb3_dev) + port->usb2_dev =NULL ; + } +if (port->usb3_dev) {typec_partner_unlink_device (partner, port->usb3_dev); + port->usb3_dev =NULL ; + }device_unregister (&partner->dev);mutex_unlock (&port->partner_link_lock);
Signature · 1 line
2.49.0.906.g1f30a19c02-goog