From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Sun, 23 Aug 2026 00:35:36 +0200 Received: from mx1.white.stw.pengutronix.de ([185.203.200.13]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wxuJL-00689y-2i for lore@lore.pengutronix.de; Sun, 23 Aug 2026 00:35:36 +0200 Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) by mx1.white.stw.pengutronix.de (Postfix) with ESMTPS id 1FFF0201923 for ; Sun, 23 Aug 2026 00:35:36 +0200 (CEST) Authentication-Results: mx1.white.stw.pengutronix.de; dkim=pass header.d=lists.infradead.org header.s=bombadil.20210309 header.b=jOKl0XFP; dkim=none ("invalid DKIM record") header.d=cetola.net header.s=default header.b=nG01VeTo; dmarc=none; spf=pass (mx1.white.stw.pengutronix.de: domain of "barebox-bounces+lore=pengutronix.de@lists.infradead.org" designates 2607:7c80:54:3::133 as permitted sender) smtp.mailfrom="barebox-bounces+lore=pengutronix.de@lists.infradead.org" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:To:In-Reply-To:References: Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=oNfOla2gdx8ZSfufKcsi29fBvBFionkJGmdeJsNVyaY=; b=jOKl0XFP/20eB+IOt5Mkps9X3y u9746t1SXu55hUrLrmlaFaDOOGEiI9+HZc8oeaZFHlcME9bdiw3I6bx1q6Hukjf+DwmoL45YecZHd ySV4MAmzfOvNAyZikfkQnH0OSIlTHPOBebdkzhirilv/gQ/zUpokOIJS9qktPHcs0t424k+DUaYL/ fhcgQ4+88SusYP20BJ9s5Gak/9xYiQYH67CDhRsAOQdnpp4W+xhynstUC1lhfOGVd0H8+Rd0/8Evq ws8TBznDg+vCxppzrLXICQcITXY/ki9n81pHmHiJhwQ+AwZfbqFkhEgYEsxRv/P1rjck768fGB5In Uw8DztZQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wxuI1-0000000EqrE-1NVN; Sat, 22 Aug 2026 22:34:13 +0000 Received: from omta38.uswest2.a.cloudfilter.net ([35.89.44.37]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wxuHy-0000000Eqpl-2XkB for barebox@lists.infradead.org; Sat, 22 Aug 2026 22:34:12 +0000 Received: from eig-obgw-6005b.ext.cloudfilter.net ([10.0.30.162]) by cmsmtp with ESMTPS id xoP1wTzJ6v0ndxuHwwj6F2; Sat, 22 Aug 2026 22:34:08 +0000 Received: from box2192.bluehost.com ([50.87.253.143]) by cmsmtp with ESMTPS id xuHvwhpoGvBFRxuHwwfIga; Sat, 22 Aug 2026 22:34:08 +0000 X-Authority-Analysis: v=2.4 cv=DewXqutW c=1 sm=1 tr=0 ts=6a8a23e0 a=j14/dPpTP3/5aO8YB4ELDw==:117 a=j14/dPpTP3/5aO8YB4ELDw==:17 a=IkcTkHD0fZMA:10 a=Sv0fKeRqtYgA:10 a=jNmq5YGq058A:10 a=wTo936TsAAAA:8 a=vW81s0vvC9HlXn2nFKEA:9 a=QEXdDO2ut3YA:10 a=J3I8QpufI4RFOXkfet32:22 a=dWMlSAZEh1Dptg_Be0X5:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=cetola.net; s=default; h=To:In-Reply-To:References:Message-Id:Content-Transfer-Encoding: Content-Type:MIME-Version:Subject:Date:From:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=oNfOla2gdx8ZSfufKcsi29fBvBFionkJGmdeJsNVyaY=; b=nG01VeTogekPg6AzjIJ+nI0Zr9 vrOCIH7l+m+ODgJXpyjKnyOVvsacJWxB17oW3gnMhNkxQY1X/bGilN26fgS5nPB7N1wpIsU1PWENa 4hzhY1iF3eAEyIj/13H1IxvGaCoTGpKTiOzEn5oC82FDJuYzHWuTZrMxtY3vyVT7+USY=; Received: from [71.238.14.13] (port=59294 helo=ishmael.local) by box2192.bluehost.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.99.5) (envelope-from ) id 1wxuHv-00000003pp0-1m8b; Sat, 22 Aug 2026 16:34:07 -0600 From: Stephano Cetola Date: Sat, 22 Aug 2026 15:34:00 -0700 Subject: [PATCH 1/5] usb: xhci: tolerate COMP_CTX_STATE in abort_td's final completion check MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260822-send-xhci-fixes-v1-1-22e1de3be715@cetola.net> References: <20260822-send-xhci-fixes-v1-0-22e1de3be715@cetola.net> In-Reply-To: <20260822-send-xhci-fixes-v1-0-22e1de3be715@cetola.net> To: Sascha Hauer , "open list:BAREBOX" X-Mailer: b4 0.15.2 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - box2192.bluehost.com X-AntiAbuse: Original Domain - lists.infradead.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - cetola.net X-BWhitelist: no X-Source-IP: 71.238.14.13 X-Source-L: No X-Exim-ID: 1wxuHv-00000003pp0-1m8b X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: (ishmael.local) [71.238.14.13]:59294 X-Source-Auth: stephano@cetola.net X-Email-Count: 9 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: Y2V0b2xhbmU7Y2V0b2xhbmU7Ym94MjE5Mi5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfKC8dlx/N/fLBjgj7O2bXXVH/DFpd0KwypNlsboJ9Gj2bKj+wfnENbMXeWnUHtYVYjm0Vz9uOqQ6bXXqtLpYlB/QKgJVwo4tzE80ALYRSfwrl6fABwxe jBV8KCe2lnLAzDT876Fn6lrOtq5biPxYpLqWNGCDM72aYRW6/0tFR3s/8Ia22l8JXZpJe+9zJEpxOVmwaRi2S71KN918GOyaLPo= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260822_153410_692981_32B32F58 X-CRM114-Status: UNSURE ( 5.01 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.4 (/) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: abort_td() issues a Stop Ring command followed by a Set TR Dequeue Pointer command to cancel a pending transfer. The completion check for the Stop Ring command already tolerates COMP_CTX_STATE as an a [...] Content analysis details: (-0.4 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 1.3 RCVD_IN_BL_SPAMCOP_NET RBL: Received via a relay in bl.spamcop.net [Blocked - see ] -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [35.89.44.37 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid 0.1 DKIM_INVALID DKIM or DK signature exists, but is not valid -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 0.0 DMARC_MISSING Missing DMARC policy X-BeenThere: barebox@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "barebox" X-Rspamd-Action: no action X-Rspamd-Server: mx1 X-Stat-Signature: 89xoc1hygqk9dhiaihxkcodizscqqnsj X-Spamd-Result: default: False [-7.41 / 15.00]; BAYES_HAM(-3.00)[99.99%]; DWL_DNSWL_MED(-2.00)[infradead.org:dkim]; KNOWN_LIST_ID(-1.00)[barebox.lists.infradead.org]; RCVD_DKIM_ARC_DNSWL_MED(-0.50)[]; MAILLIST(-0.20)[mailman]; R_SPF_ALLOW(-0.20)[+mx:c]; R_DKIM_ALLOW(-0.20)[lists.infradead.org:s=bombadil.20210309]; RCVD_IN_DNSWL_MED(-0.20)[2607:7c80:54:3::133:from]; MIME_GOOD(-0.10)[text/plain]; HAS_LIST_UNSUB(-0.01)[]; DMARC_NA(0.00)[cetola.net]; FORGED_SENDER_FORWARDING(0.00)[]; RECEIVED_HELO_LOCALHOST(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; DKIM_MIXED(0.00)[]; FORGED_SENDER(0.00)[stephano@cetola.net,barebox-bounces@lists.infradead.org]; R_DKIM_PERMFAIL(0.00)[cetola.net:s=default]; ARC_NA(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FORWARDED(0.00)[barebox@lists.infradead.org]; TO_DN_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; FROM_NEQ_ENVFROM(0.00)[stephano@cetola.net,barebox-bounces@lists.infradead.org]; NEURAL_HAM(-0.00)[-1.000]; MID_RHS_MATCH_FROM(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[71.238.14.13:received]; RCVD_COUNT_FIVE(0.00)[5]; TAGGED_FROM(0.00)[lore=pengutronix.de]; FORGED_SENDER_MAILLIST(0.00)[]; ASN(0.00)[asn:7247, ipnet:2607:7c80:54::/48, country:US]; HAS_X_SOURCE(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[35.89.44.37:received]; HAS_X_ANTIABUSE(0.00)[]; DKIM_TRACE(0.00)[lists.infradead.org:+,cetola.net:~] X-Rspamd-Queue-Id: 1FFF0201923 abort_td() issues a Stop Ring command followed by a Set TR Dequeue Pointer command to cancel a pending transfer. The completion check for the Stop Ring command already tolerates COMP_CTX_STATE as an acceptable outcome alongside COMP_SUCCESS. The completion check for the following Set TR Dequeue Pointer command did not, and hit its BUG_ON when the endpoint had transitioned to a state where that command legitimately returns COMP_CTX_STATE instead. Signed-off-by: Stephano Cetola --- drivers/usb/host/xhci-ring.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c index 00344e8074..bd38f0de91 100644 --- a/drivers/usb/host/xhci-ring.c +++ b/drivers/usb/host/xhci-ring.c @@ -594,9 +594,13 @@ static void abort_td(struct usb_device *udev, int ep_index) if (!event) return; + comp = GET_COMP_CODE(le32_to_cpu(event->event_cmd.status)); + if (comp == COMP_CTX_STATE) + dev_dbg(ctrl->dev, "%s: Set TR Dequeue Pointer got CTX_STATE, endpoint was already in the target state\n", + __func__); BUG_ON(TRB_TO_SLOT_ID(le32_to_cpu(event->event_cmd.flags)) - != udev->slot_id || GET_COMP_CODE(le32_to_cpu( - event->event_cmd.status)) != COMP_SUCCESS); + != udev->slot_id || (comp != COMP_SUCCESS && comp + != COMP_CTX_STATE)); xhci_acknowledge_event(ctrl); } -- 2.55.0