media: hi556: Fix memory leak (on error) in hi556_check_hwcfg()
commit ed554da65abd0c561e40d35272d1a61d030fe977 upstream. Commit7d968b5bad("media: hi556: Return -EPROBE_DEFER if no endpoint is found") moved the v4l2_fwnode_endpoint_alloc_parse() call in hi556_check_hwcfg() up, but it did not make the error-exit paths between the old and new call-site use "goto check_hwcfg_error;" to free the bus_cfg on errors. Add the missing "goto check_hwcfg_error;" statements to fix a memleak on early error-exits from hi556_check_hwcfg(). Fixes:7d968b5bad("media: hi556: Return -EPROBE_DEFER if no endpoint is found") Cc: stable@vger.kernel.org Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
df6ef66cc3
commit
f67c3f8452
@@ -1230,12 +1230,13 @@ static int hi556_check_hwcfg(struct device *dev)
|
||||
ret = fwnode_property_read_u32(fwnode, "clock-frequency", &mclk);
|
||||
if (ret) {
|
||||
dev_err(dev, "can't get clock frequency");
|
||||
return ret;
|
||||
goto check_hwcfg_error;
|
||||
}
|
||||
|
||||
if (mclk != HI556_MCLK) {
|
||||
dev_err(dev, "external clock %d is not supported", mclk);
|
||||
return -EINVAL;
|
||||
ret = -EINVAL;
|
||||
goto check_hwcfg_error;
|
||||
}
|
||||
|
||||
if (bus_cfg.bus.mipi_csi2.num_data_lanes != 2) {
|
||||
|
||||
Reference in New Issue
Block a user