发布时间: 2024年3月29日
修改时间: 2024年5月27日
In the Linux kernel, the following vulnerability has been resolved:usb: dwc3: core: Do core softreset when switch modeAccording to the programming guide, to switch mode for DRD controller,the driver needs to do the following.To switch from device to host:1. Reset controller with GCTL.CoreSoftReset2. Set GCTL.PrtCapDir(host mode)3. Reset the host with USBCMD.HCRESET4. Then follow up with the initializing host registers sequenceTo switch from host to device:1. Reset controller with GCTL.CoreSoftReset2. Set GCTL.PrtCapDir(device mode)3. Reset the device with DCTL.CSftRst4. Then follow up with the initializing registers sequenceCurrently we re missing step 1) to do GCTL.CoreSoftReset and step 3) ofswitching from host to device. John Stult reported a lockup issue seenwith HiKey960 platform without these steps[1]. Similar issue is observedwith Ferry s testing platform[2].So, apply the required steps along with some fixes to Yu Chen s and JohnStultz s version. The main fixes to their versions are the missing waitfor clocks synchronization before clearing GCTL.CoreSoftReset and onlyapply DCTL.CSftRst when switching from host to device.[1] https://lore.kernel.org/linux-usb/20210108015115.27920-1-john.stultz@linaro.org/[2] https://lore.kernel.org/linux-usb/0ba7a6ba-e6a7-9cd4-0695-64fc927e01f1@gmail.com/
NVD | openEuler | |
---|---|---|
Confidentiality | None | None |
Attack Vector | Local | Local |
CVSS评分 | 5.5 | 4.4 |
Attack Complexity | Low | Low |
Privileges Required | Low | High |
Scope | Unchanged | Unchanged |
Integrity | None | None |
User Interaction | None | None |
Availability | High | High |
公告名 | 概要 | 发布时间 |
---|---|---|
KylinSec-SA-2024-4769 | kernel security update | 2024年3月29日 |
产品 | 包 | 状态 |
---|---|---|
KY3.4-4A | kernel | Fixed |
KY3.4-5A | kernel | Fixed |
KY3.5.1 | kernel | Unaffected |
KY3.5.2 | kernel | Unaffected |