Description
In the Linux kernel, the following vulnerability has been resolved: usb: typec: Fix error pointer dereference The variable tps->partner is checked for an error pointer and then if it is, it sends an error message but does not return and then immediately dereferenced a few lines below: tps->partner = typec_register_partner(tps->port, &desc); if (IS_ERR(tps->partner)) dev_warn(tps->dev, "%s: failed to register partnet\n", __func__); if (desc.identity) { typec_partner_set_identity(tps->partner); cd321x->cur_partner_identity = st.partner_identity; } Add early return and fix spelling mistake in error message. Detected by Smatch: drivers/usb/typec/tipd/core.c:827 cd321x_update_work() error: 'tps->partner' dereferencing possible ERR_PTR()
Affected products
- Linux / Linux82432bbfb9e83b7e81d04660fe129b99a29b2ac2 – 19951118fb22b5ad512379ee64510fe0e2c40eb3
- Linux / Linux82432bbfb9e83b7e81d04660fe129b99a29b2ac2 – 9e31082f92c913d74fefb4e60cd0284e605ba3a3
- Linux / Linux82432bbfb9e83b7e81d04660fe129b99a29b2ac2 – f2529d08fcb429ea01bb87c326342f41483f8b2f
- Linux / Linux6.18 – 6.18
- Linux / Linux0 – 6.18
- Linux / Linux6.18.33 – 6.18.*
- Linux / Linux7.0.10 – 7.0.*
- Linux / Linux7.1 – *