mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
drm/nouveau: fix error path in nvkm_gsp_fwsec_v2
Function nvkm_gsp_fwsec_v2() sets 'ret' if the kmemdup() call fails, but
it never uses or returns 'ret' after that point. We always need to release
the firmware regardless, so do that and then check for error.
Fixes: 176fdcbddf
("drm/nouveau/gsp/r535: add support for booting GSP-RM")
Cc: stable@vger.kernel.org # v6.7+
Signed-off-by: Timur Tabi <ttabi@nvidia.com>
Link: https://lore.kernel.org/r/20250813001004.2986092-1-ttabi@nvidia.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
This commit is contained in:
parent
e2fe0c54fb
commit
66e82b6e0a
@ -209,11 +209,12 @@ nvkm_gsp_fwsec_v2(struct nvkm_gsp *gsp, const char *name,
|
||||
fw->boot_addr = bld->start_tag << 8;
|
||||
fw->boot_size = bld->code_size;
|
||||
fw->boot = kmemdup(bl->data + hdr->data_offset + bld->code_off, fw->boot_size, GFP_KERNEL);
|
||||
if (!fw->boot)
|
||||
ret = -ENOMEM;
|
||||
|
||||
nvkm_firmware_put(bl);
|
||||
|
||||
if (!fw->boot)
|
||||
return -ENOMEM;
|
||||
|
||||
/* Patch in interface data. */
|
||||
return nvkm_gsp_fwsec_patch(gsp, fw, desc->InterfaceOffset, init_cmd);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user