diff options
| author | Jonathan Corbet <corbet@lwn.net> | 2021-10-04 16:44:16 -0600 |
|---|---|---|
| committer | Jonathan Corbet <corbet@lwn.net> | 2021-10-04 16:44:16 -0600 |
| commit | b718f9d919d16fb7b97a890f74d34593d9cecd20 (patch) | |
| tree | ed38d58283ae36e0478bac2e0d244e06dbcc2f1c /drivers/usb/class | |
| parent | 250a0a5ba9d2cfbdb7c77b421ff1e03d630bea46 (diff) | |
| parent | 9e1ff307c779ce1f0f810c7ecce3d95bbae40896 (diff) | |
Merge tag 'v5.15-rc4' into docs-next
This is needed to get a docs fix that entered via the DRM tree; testers
have requested it so that PDF builds in docs-next work again.
Diffstat (limited to 'drivers/usb/class')
| -rw-r--r-- | drivers/usb/class/cdc-acm.c | 7 | ||||
| -rw-r--r-- | drivers/usb/class/cdc-acm.h | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c index 8bbd8e29e60d..4e2f1552f4b7 100644 --- a/drivers/usb/class/cdc-acm.c +++ b/drivers/usb/class/cdc-acm.c @@ -726,7 +726,8 @@ static void acm_port_destruct(struct tty_port *port) { struct acm *acm = container_of(port, struct acm, port); - acm_release_minor(acm); + if (acm->minor != ACM_MINOR_INVALID) + acm_release_minor(acm); usb_put_intf(acm->control); kfree(acm->country_codes); kfree(acm); @@ -1323,8 +1324,10 @@ made_compressed_probe: usb_get_intf(acm->control); /* undone in destruct() */ minor = acm_alloc_minor(acm); - if (minor < 0) + if (minor < 0) { + acm->minor = ACM_MINOR_INVALID; goto err_put_port; + } acm->minor = minor; acm->dev = usb_dev; diff --git a/drivers/usb/class/cdc-acm.h b/drivers/usb/class/cdc-acm.h index 8aef5eb769a0..3aa7f0a3ad71 100644 --- a/drivers/usb/class/cdc-acm.h +++ b/drivers/usb/class/cdc-acm.h @@ -22,6 +22,8 @@ #define ACM_TTY_MAJOR 166 #define ACM_TTY_MINORS 256 +#define ACM_MINOR_INVALID ACM_TTY_MINORS + /* * Requests. */ |
