| { |
| "containers": { |
| "cna": { |
| "providerMetadata": { |
| "orgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038" |
| }, |
| "descriptions": [ |
| { |
| "lang": "en", |
| "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nusb: dwc3: core: remove lock of otg mode during gadget suspend/resume to avoid deadlock\n\nWhen config CONFIG_USB_DWC3_DUAL_ROLE is selected, and trigger system\nto enter suspend status with below command:\necho mem > /sys/power/state\nThere will be a deadlock issue occurring. Detailed invoking path as\nbelow:\ndwc3_suspend_common()\n spin_lock_irqsave(&dwc->lock, flags); <-- 1st\n dwc3_gadget_suspend(dwc);\n dwc3_gadget_soft_disconnect(dwc);\n spin_lock_irqsave(&dwc->lock, flags); <-- 2nd\nThis issue is exposed by commit c7ebd8149ee5 (\"usb: dwc3: gadget: Fix\nNULL pointer dereference in dwc3_gadget_suspend\") that removes the code\nof checking whether dwc->gadget_driver is NULL or not. It causes the\nfollowing code is executed and deadlock occurs when trying to get the\nspinlock. In fact, the root cause is the commit 5265397f9442(\"usb: dwc3:\nRemove DWC3 locking during gadget suspend/resume\") that forgot to remove\nthe lock of otg mode. So, remove the redundant lock of otg mode during\ngadget suspend/resume." |
| } |
| ], |
| "affected": [ |
| { |
| "product": "Linux", |
| "vendor": "Linux", |
| "defaultStatus": "unaffected", |
| "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", |
| "programFiles": [ |
| "drivers/usb/dwc3/core.c" |
| ], |
| "versions": [ |
| { |
| "version": "2fa487a9466760a4fb6f147aed6219379dabfc2e", |
| "lessThan": "7026576e89094aa9a0062aa6d10cba18aa99944c", |
| "status": "affected", |
| "versionType": "git" |
| }, |
| { |
| "version": "5265397f94424eaea596026fd34dc7acf474dcec", |
| "lessThan": "d77e2b5104c51d3668b9717c825a4a06998efe63", |
| "status": "affected", |
| "versionType": "git" |
| }, |
| { |
| "version": "5265397f94424eaea596026fd34dc7acf474dcec", |
| "lessThan": "17e2956633ca560b95f1cbbb297cfc2adf650649", |
| "status": "affected", |
| "versionType": "git" |
| }, |
| { |
| "version": "5265397f94424eaea596026fd34dc7acf474dcec", |
| "lessThan": "f1274cfab183e69a7c7bafffcb4f50703c876276", |
| "status": "affected", |
| "versionType": "git" |
| }, |
| { |
| "version": "5265397f94424eaea596026fd34dc7acf474dcec", |
| "lessThan": "7838de15bb700c2898a7d741db9b1f3cbc86c136", |
| "status": "affected", |
| "versionType": "git" |
| } |
| ] |
| }, |
| { |
| "product": "Linux", |
| "vendor": "Linux", |
| "defaultStatus": "affected", |
| "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", |
| "programFiles": [ |
| "drivers/usb/dwc3/core.c" |
| ], |
| "versions": [ |
| { |
| "version": "6.1", |
| "status": "affected" |
| }, |
| { |
| "version": "0", |
| "lessThan": "6.1", |
| "status": "unaffected", |
| "versionType": "semver" |
| }, |
| { |
| "version": "5.15.162", |
| "lessThanOrEqual": "5.15.*", |
| "status": "unaffected", |
| "versionType": "semver" |
| }, |
| { |
| "version": "6.1.97", |
| "lessThanOrEqual": "6.1.*", |
| "status": "unaffected", |
| "versionType": "semver" |
| }, |
| { |
| "version": "6.6.37", |
| "lessThanOrEqual": "6.6.*", |
| "status": "unaffected", |
| "versionType": "semver" |
| }, |
| { |
| "version": "6.9.8", |
| "lessThanOrEqual": "6.9.*", |
| "status": "unaffected", |
| "versionType": "semver" |
| }, |
| { |
| "version": "6.10", |
| "lessThanOrEqual": "*", |
| "status": "unaffected", |
| "versionType": "original_commit_for_fix" |
| } |
| ] |
| } |
| ], |
| "cpeApplicability": [ |
| { |
| "nodes": [ |
| { |
| "operator": "OR", |
| "negate": false, |
| "cpeMatch": [ |
| { |
| "vulnerable": true, |
| "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", |
| "versionStartIncluding": "5.15.128", |
| "versionEndExcluding": "5.15.162" |
| }, |
| { |
| "vulnerable": true, |
| "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", |
| "versionStartIncluding": "6.1", |
| "versionEndExcluding": "6.1.97" |
| }, |
| { |
| "vulnerable": true, |
| "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", |
| "versionStartIncluding": "6.1", |
| "versionEndExcluding": "6.6.37" |
| }, |
| { |
| "vulnerable": true, |
| "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", |
| "versionStartIncluding": "6.1", |
| "versionEndExcluding": "6.9.8" |
| }, |
| { |
| "vulnerable": true, |
| "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", |
| "versionStartIncluding": "6.1", |
| "versionEndExcluding": "6.10" |
| } |
| ] |
| } |
| ] |
| } |
| ], |
| "references": [ |
| { |
| "url": "https://git.kernel.org/stable/c/7026576e89094aa9a0062aa6d10cba18aa99944c" |
| }, |
| { |
| "url": "https://git.kernel.org/stable/c/d77e2b5104c51d3668b9717c825a4a06998efe63" |
| }, |
| { |
| "url": "https://git.kernel.org/stable/c/17e2956633ca560b95f1cbbb297cfc2adf650649" |
| }, |
| { |
| "url": "https://git.kernel.org/stable/c/f1274cfab183e69a7c7bafffcb4f50703c876276" |
| }, |
| { |
| "url": "https://git.kernel.org/stable/c/7838de15bb700c2898a7d741db9b1f3cbc86c136" |
| } |
| ], |
| "title": "usb: dwc3: core: remove lock of otg mode during gadget suspend/resume to avoid deadlock", |
| "x_generator": { |
| "engine": "bippy-1.2.0" |
| } |
| } |
| }, |
| "cveMetadata": { |
| "assignerOrgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038", |
| "cveID": "CVE-2024-42085", |
| "requesterUserId": "gregkh@kernel.org", |
| "serial": "1", |
| "state": "PUBLISHED" |
| }, |
| "dataType": "CVE_RECORD", |
| "dataVersion": "5.0" |
| } |