On Fri, Apr 11, 2025 at 10:14:44AM -0500, Mario Limonciello wrote:
From: Mario Limonciello mario.limonciello@amd.com
commit a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") introduced a sysfs file to control wake up policy for a given USB4 port that defaulted to disabled.
However when testing commit 4bfeea6ec1c02 ("thunderbolt: Use wake on connect and disconnect over suspend") I found that it was working even without making changes to the power/wakeup file (which defaults to disabled). This is because of a logic error doing a bitwise or of the wake-on-connect flag with device_may_wakeup() which should have been a logical AND.
Adjust the logic so that policy is only applied when wakeup is actually enabled.
Fixes: a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") Signed-off-by: Mario Limonciello mario.limonciello@amd.com
Hi! There have been a couple of reports of a Thunderbolt regression in recent stable kernels, and one reporter has now bisected it to this change:
• https://bugzilla.kernel.org/show_bug.cgi?id=220284 • https://github.com/NixOS/nixpkgs/issues/420730
Both reporters are CCed, and say it starts working after the module is reloaded.
Link: https://lore.kernel.org/r/bug-220284-208809@https.bugzilla.kernel.org%2F/ (for regzbot)
drivers/thunderbolt/usb4.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/thunderbolt/usb4.c b/drivers/thunderbolt/usb4.c index e51d01671d8e7..3e96f1afd4268 100644 --- a/drivers/thunderbolt/usb4.c +++ b/drivers/thunderbolt/usb4.c @@ -440,10 +440,10 @@ int usb4_switch_set_wake(struct tb_switch *sw, unsigned int flags) bool configured = val & PORT_CS_19_PC; usb4 = port->usb4;
if (((flags & TB_WAKE_ON_CONNECT) |
if (((flags & TB_WAKE_ON_CONNECT) && device_may_wakeup(&usb4->dev)) && !configured) val |= PORT_CS_19_WOC;
if (((flags & TB_WAKE_ON_DISCONNECT) |
if (((flags & TB_WAKE_ON_DISCONNECT) && device_may_wakeup(&usb4->dev)) && configured) val |= PORT_CS_19_WOD; if ((flags & TB_WAKE_ON_USB4) && configured)
-- 2.43.0
Alyssa Ross hi@alyssa.is writes:
On Fri, Apr 11, 2025 at 10:14:44AM -0500, Mario Limonciello wrote:
From: Mario Limonciello mario.limonciello@amd.com
commit a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") introduced a sysfs file to control wake up policy for a given USB4 port that defaulted to disabled.
However when testing commit 4bfeea6ec1c02 ("thunderbolt: Use wake on connect and disconnect over suspend") I found that it was working even without making changes to the power/wakeup file (which defaults to disabled). This is because of a logic error doing a bitwise or of the wake-on-connect flag with device_may_wakeup() which should have been a logical AND.
Adjust the logic so that policy is only applied when wakeup is actually enabled.
Fixes: a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") Signed-off-by: Mario Limonciello mario.limonciello@amd.com
Hi! There have been a couple of reports of a Thunderbolt regression in recent stable kernels, and one reporter has now bisected it to this change:
• https://bugzilla.kernel.org/show_bug.cgi?id=220284 • https://github.com/NixOS/nixpkgs/issues/420730
Both reporters are CCed, and say it starts working after the module is reloaded.
Link: https://lore.kernel.org/r/bug-220284-208809@https.bugzilla.kernel.org%2F/ (for regzbot)
Apparently[1] fixed by the first linked patch below, which is currently in the Thunderbolt tree waiting to be pulled into the USB tree.
#regzbot monitor: https://lore.kernel.org/linux-usb/20250619213840.2388646-1-superm1@kernel.or... #regzbot monitor: https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
[1]: https://github.com/NixOS/nixpkgs/issues/420730#issuecomment-3018563631
On 6/30/25 07:32, Alyssa Ross wrote:
Alyssa Ross hi@alyssa.is writes:
On Fri, Apr 11, 2025 at 10:14:44AM -0500, Mario Limonciello wrote:
From: Mario Limonciello mario.limonciello@amd.com
commit a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") introduced a sysfs file to control wake up policy for a given USB4 port that defaulted to disabled.
However when testing commit 4bfeea6ec1c02 ("thunderbolt: Use wake on connect and disconnect over suspend") I found that it was working even without making changes to the power/wakeup file (which defaults to disabled). This is because of a logic error doing a bitwise or of the wake-on-connect flag with device_may_wakeup() which should have been a logical AND.
Adjust the logic so that policy is only applied when wakeup is actually enabled.
Fixes: a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") Signed-off-by: Mario Limonciello mario.limonciello@amd.com
Hi! There have been a couple of reports of a Thunderbolt regression in recent stable kernels, and one reporter has now bisected it to this change:
• https://bugzilla.kernel.org/show_bug.cgi?id=220284 • https://github.com/NixOS/nixpkgs/issues/420730
Both reporters are CCed, and say it starts working after the module is reloaded.
Link: https://lore.kernel.org/r/bug-220284-208809@https.bugzilla.kernel.org%2F/ (for regzbot)
Apparently[1] fixed by the first linked patch below, which is currently in the Thunderbolt tree waiting to be pulled into the USB tree.
#regzbot monitor: https://lore.kernel.org/linux-usb/20250619213840.2388646-1-superm1@kernel.or... #regzbot monitor: https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Hey Greg,
Can you pick up the pull request from Mika from a week and a half ago with this fix for the next 6.16-rc?
https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Thanks,
On Sun, Jul 06, 2025 at 10:46:53AM -0400, Mario Limonciello wrote:
On 6/30/25 07:32, Alyssa Ross wrote:
Alyssa Ross hi@alyssa.is writes:
On Fri, Apr 11, 2025 at 10:14:44AM -0500, Mario Limonciello wrote:
From: Mario Limonciello mario.limonciello@amd.com
commit a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") introduced a sysfs file to control wake up policy for a given USB4 port that defaulted to disabled.
However when testing commit 4bfeea6ec1c02 ("thunderbolt: Use wake on connect and disconnect over suspend") I found that it was working even without making changes to the power/wakeup file (which defaults to disabled). This is because of a logic error doing a bitwise or of the wake-on-connect flag with device_may_wakeup() which should have been a logical AND.
Adjust the logic so that policy is only applied when wakeup is actually enabled.
Fixes: a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") Signed-off-by: Mario Limonciello mario.limonciello@amd.com
Hi! There have been a couple of reports of a Thunderbolt regression in recent stable kernels, and one reporter has now bisected it to this change:
• https://bugzilla.kernel.org/show_bug.cgi?id=220284 • https://github.com/NixOS/nixpkgs/issues/420730
Both reporters are CCed, and say it starts working after the module is reloaded.
Link: https://lore.kernel.org/r/bug-220284-208809@https.bugzilla.kernel.org%2F/ (for regzbot)
Apparently[1] fixed by the first linked patch below, which is currently in the Thunderbolt tree waiting to be pulled into the USB tree.
#regzbot monitor: https://lore.kernel.org/linux-usb/20250619213840.2388646-1-superm1@kernel.or... #regzbot monitor: https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Hey Greg,
Can you pick up the pull request from Mika from a week and a half ago with this fix for the next 6.16-rc?
https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Yes, I was waiting for this last round to go to Linus as the pull request was made against a newer version of Linus's tree than I currently had in my "for linus" branch. I'll go get to that later today.
thanks,
greg k-h
On 7/7/25 2:57 AM, Greg Kroah-Hartman wrote:
On Sun, Jul 06, 2025 at 10:46:53AM -0400, Mario Limonciello wrote:
On 6/30/25 07:32, Alyssa Ross wrote:
Alyssa Ross hi@alyssa.is writes:
On Fri, Apr 11, 2025 at 10:14:44AM -0500, Mario Limonciello wrote:
From: Mario Limonciello mario.limonciello@amd.com
commit a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") introduced a sysfs file to control wake up policy for a given USB4 port that defaulted to disabled.
However when testing commit 4bfeea6ec1c02 ("thunderbolt: Use wake on connect and disconnect over suspend") I found that it was working even without making changes to the power/wakeup file (which defaults to disabled). This is because of a logic error doing a bitwise or of the wake-on-connect flag with device_may_wakeup() which should have been a logical AND.
Adjust the logic so that policy is only applied when wakeup is actually enabled.
Fixes: a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") Signed-off-by: Mario Limonciello mario.limonciello@amd.com
Hi! There have been a couple of reports of a Thunderbolt regression in recent stable kernels, and one reporter has now bisected it to this change:
• https://bugzilla.kernel.org/show_bug.cgi?id=220284 • https://github.com/NixOS/nixpkgs/issues/420730
Both reporters are CCed, and say it starts working after the module is reloaded.
Link: https://lore.kernel.org/r/bug-220284-208809@https.bugzilla.kernel.org%2F/ (for regzbot)
Apparently[1] fixed by the first linked patch below, which is currently in the Thunderbolt tree waiting to be pulled into the USB tree.
#regzbot monitor: https://lore.kernel.org/linux-usb/20250619213840.2388646-1-superm1@kernel.or... #regzbot monitor: https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Hey Greg,
Can you pick up the pull request from Mika from a week and a half ago with this fix for the next 6.16-rc?
https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Yes, I was waiting for this last round to go to Linus as the pull request was made against a newer version of Linus's tree than I currently had in my "for linus" branch. I'll go get to that later today.
thanks,
greg k-h
Greg,
Sorry to be a bugger, but I was surprised I didn't see this come in -rc6 this week, and I went and double checked your "usb-linus" branch [1] and didn't see it there.
Thanks,
[1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/log/?h=usb-li...
On Mon, Jul 14, 2025 at 11:35:39AM -0500, Mario Limonciello wrote:
On 7/7/25 2:57 AM, Greg Kroah-Hartman wrote:
On Sun, Jul 06, 2025 at 10:46:53AM -0400, Mario Limonciello wrote:
On 6/30/25 07:32, Alyssa Ross wrote:
Alyssa Ross hi@alyssa.is writes:
On Fri, Apr 11, 2025 at 10:14:44AM -0500, Mario Limonciello wrote:
From: Mario Limonciello mario.limonciello@amd.com
commit a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") introduced a sysfs file to control wake up policy for a given USB4 port that defaulted to disabled.
However when testing commit 4bfeea6ec1c02 ("thunderbolt: Use wake on connect and disconnect over suspend") I found that it was working even without making changes to the power/wakeup file (which defaults to disabled). This is because of a logic error doing a bitwise or of the wake-on-connect flag with device_may_wakeup() which should have been a logical AND.
Adjust the logic so that policy is only applied when wakeup is actually enabled.
Fixes: a5cfc9d65879c ("thunderbolt: Add wake on connect/disconnect on USB4 ports") Signed-off-by: Mario Limonciello mario.limonciello@amd.com
Hi! There have been a couple of reports of a Thunderbolt regression in recent stable kernels, and one reporter has now bisected it to this change:
• https://bugzilla.kernel.org/show_bug.cgi?id=220284 • https://github.com/NixOS/nixpkgs/issues/420730
Both reporters are CCed, and say it starts working after the module is reloaded.
Link: https://lore.kernel.org/r/bug-220284-208809@https.bugzilla.kernel.org%2F/ (for regzbot)
Apparently[1] fixed by the first linked patch below, which is currently in the Thunderbolt tree waiting to be pulled into the USB tree.
#regzbot monitor: https://lore.kernel.org/linux-usb/20250619213840.2388646-1-superm1@kernel.or... #regzbot monitor: https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Hey Greg,
Can you pick up the pull request from Mika from a week and a half ago with this fix for the next 6.16-rc?
https://lore.kernel.org/linux-usb/20250626154009.GK2824380@black.fi.intel.co...
Yes, I was waiting for this last round to go to Linus as the pull request was made against a newer version of Linus's tree than I currently had in my "for linus" branch. I'll go get to that later today.
thanks,
greg k-h
Greg,
Sorry to be a bugger, but I was surprised I didn't see this come in -rc6 this week, and I went and double checked your "usb-linus" branch [1] and didn't see it there.
Thanks,
[1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/log/?h=usb-li...
It's in there:
$ git lg main..usb-linus * cd0f8649d0e1 - (HEAD -> usb-linus, origin/usb-linus, kroah.org/usb-linus, work-linus) Merge tag 'usb-serial-6.16-rc6' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-linus (6 days ago) <Greg Kroah-Hartman> |\ | * 08f49cdb71f3 - USB: serial: option: add Foxconn T99W640 (3 weeks ago) <Slark Xiao> * 3014168731b7 - usb: gadget: configfs: Fix OOB read on empty string write (6 days ago) <Xinyu Liu> * 67a59f82196c - usb: musb: fix gadget state on disconnect (8 days ago) <Drew Hamilton> * 9fccced2d25b - Merge tag 'thunderbolt-for-v6.16-rc4' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt into usb-linus (8 days ago) <Greg Kroah-Hartman> * 2cdde91c14ec - thunderbolt: Fix bit masking in tb_dp_port_set_hops() (3 weeks ago) <Alok Tiwari> * 58d71d4242ce - thunderbolt: Fix wake on connect at runtime (3 weeks ago) <Mario Limonciello>
I'll get this to Linus for the next -rc.
thanks,
greg k-h
linux-stable-mirror@lists.linaro.org