ASoc: PCM6240: Return directly after a failed devm_kzalloc() in pcmdevice_i2c_probe()
[ Upstream commit3722873d49] The value “-ENOMEM” was assigned to the local variable “ret” in one if branch after a devm_kzalloc() call failed at the beginning. This error code will trigger then a pcmdevice_remove() call with a passed null pointer so that an undesirable dereference will be performed. Thus return the appropriate error code directly. Fixes:1324eafd37("ASoc: PCM6240: Create PCM6240 Family driver code") Signed-off-by: Hao Ge <gehao@kylinos.cn> Link: https://patch.msgid.link/20240617020954.17252-1-hao.ge@linux.dev Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
e158d5ecd0
commit
fa6f16eff7
@@ -2087,10 +2087,8 @@ static int pcmdevice_i2c_probe(struct i2c_client *i2c)
|
||||
#endif
|
||||
|
||||
pcm_dev = devm_kzalloc(&i2c->dev, sizeof(*pcm_dev), GFP_KERNEL);
|
||||
if (!pcm_dev) {
|
||||
ret = -ENOMEM;
|
||||
goto out;
|
||||
}
|
||||
if (!pcm_dev)
|
||||
return -ENOMEM;
|
||||
|
||||
pcm_dev->chip_id = (id != NULL) ? id->driver_data : 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user