From: Johan Hovold <johan@kernel.org>
To: linux-usb@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org, Johan Hovold <johan@kernel.org>
Subject: [PATCH v2 04/12] USB: serial: digi_acceleport: always stop write urb on close
Date: Tue, 23 Jun 2026 17:08:18 +0200 [thread overview]
Message-ID: <20260623150826.314727-5-johan@kernel.org> (raw)
In-Reply-To: <20260623150826.314727-1-johan@kernel.org>
Explicitly stop the write urb on close() also if the device is being
unbound instead of relying on core to do it after returning.
Note that the dp_write_urb_in_use flag is cleared by the completion
handler.
Signed-off-by: Johan Hovold <johan@kernel.org>
---
drivers/usb/serial/digi_acceleport.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/usb/serial/digi_acceleport.c b/drivers/usb/serial/digi_acceleport.c
index 83c4bacc2df8..7a52600c09b1 100644
--- a/drivers/usb/serial/digi_acceleport.c
+++ b/drivers/usb/serial/digi_acceleport.c
@@ -1121,7 +1121,6 @@ static void digi_close(struct usb_serial_port *port)
usb_kill_urb(port->read_urb);
mutex_lock(&port->serial->disc_mutex);
- /* if disconnected, just clear flags */
if (port->serial->disconnected)
goto exit;
@@ -1167,14 +1166,11 @@ static void digi_close(struct usb_serial_port *port)
TASK_INTERRUPTIBLE);
schedule_timeout(DIGI_CLOSE_TIMEOUT);
finish_wait(&priv->dp_flush_wait, &wait);
+exit:
+ mutex_unlock(&port->serial->disc_mutex);
/* shutdown any outstanding bulk writes */
usb_kill_urb(port->write_urb);
-exit:
- spin_lock_irq(&priv->dp_port_lock);
- priv->dp_write_urb_in_use = 0;
- spin_unlock_irq(&priv->dp_port_lock);
- mutex_unlock(&port->serial->disc_mutex);
}
--
2.53.0
next prev parent reply other threads:[~2026-06-23 15:09 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-23 15:08 [PATCH v2 00/12] USB: serial: digi_acceleport: registration fix and cleanups Johan Hovold
2026-06-23 15:08 ` [PATCH v2 01/12] USB: serial: digi_acceleport: fix broken rx after throttle Johan Hovold
2026-06-23 15:08 ` [PATCH v2 02/12] USB: serial: digi_acceleport: fix port registration order Johan Hovold
2026-06-23 15:08 ` [PATCH v2 03/12] USB: serial: digi_acceleport: drop unused wait queue Johan Hovold
2026-06-23 15:08 ` Johan Hovold [this message]
2026-06-23 15:08 ` [PATCH v2 05/12] USB: serial: digi_acceleport: add oob port helper Johan Hovold
2026-06-23 15:08 ` [PATCH v2 06/12] USB: serial: digi_acceleport: clean up declarations and whitespace Johan Hovold
2026-06-23 15:08 ` [PATCH v2 07/12] USB: serial: digi_acceleport: drop redundant driver data sanity checks Johan Hovold
2026-06-23 15:08 ` [PATCH v2 08/12] USB: serial: digi_acceleport: stop OOB I/O when not in use Johan Hovold
2026-06-23 15:08 ` [PATCH v2 09/12] USB: serial: digi_acceleport: drop unused in-buf define Johan Hovold
2026-06-23 15:08 ` [PATCH v2 10/12] USB: serial: digi_acceleport: clean up xfer buf length expression Johan Hovold
2026-06-23 15:08 ` [PATCH v2 11/12] USB: serial: digi_acceleport: clean up write completion Johan Hovold
2026-06-23 15:08 ` [PATCH v2 12/12] USB: serial: digi_acceleport: clean up inb command submission Johan Hovold
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260623150826.314727-5-johan@kernel.org \
--to=johan@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox