linux/drivers/base
Gaosheng Cui 789a72498d firmware_loader: Fix possible resource leak in fw_log_firmware_info()
[ Upstream commit 369a9c046c ]

The alg instance should be released under the exception path, otherwise
there may be resource leak here.

To mitigate this, free the alg instance with crypto_free_shash when kmalloc
fails.

Fixes: 02fe26f253 ("firmware_loader: Add debug message with checksum for FW file")
Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
Reviewed-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Reviewed-by: Russ Weight <russ.weight@linux.dev>
Link: https://lore.kernel.org/r/20241016110335.3677924-1-cuigaosheng1@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2024-12-09 10:32:37 +01:00
..
firmware_loader firmware_loader: Fix possible resource leak in fw_log_firmware_info() 2024-12-09 10:32:37 +01:00
power pmdomain: core: Harden inter-column space in debug summary 2024-10-04 16:29:08 +02:00
regmap regmap: irq: Set lockdep class for hierarchical IRQ domains 2024-12-09 10:31:56 +01:00
test drivers: base: test: Add missing MODULE_* macros to root device tests 2023-08-16 19:01:29 +02:00
arch_numa.c arm64: irq: set the correct node for VMAP stack 2024-02-05 20:14:14 +00:00
arch_topology.c arch_topology: Remove early cacheinfo error message if -ENOENT 2023-04-14 10:13:38 +01:00
attribute_container.c driver core: attribute_container: fix W=1 warnings 2021-05-14 13:37:10 +02:00
auxiliary.c driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
base.h module: don't ignore sysfs_create_link() failures 2024-06-12 11:12:17 +02:00
bus.c driver core: bus: Return -EIO instead of 0 when show/store invalid bus attribute 2024-10-17 15:24:21 +02:00
cacheinfo.c drivers: base: cacheinfo: Update cpu_map_populated during CPU Hotplug 2023-05-31 20:36:47 +01:00
class.c class: fix use-after-free in class_register() 2024-01-25 15:35:41 -08:00
component.c drivers: base: component: fix memory leak with using debugfs_lookup() 2023-02-08 13:33:10 +01:00
container.c driver core: Remove redundant license text 2017-12-07 18:36:44 +01:00
core.c cxl/port: Fix use-after-free, permit out-of-order decoder shutdown 2024-11-08 16:28:24 +01:00
cpu.c x86/rfds: Mitigate Register File Data Sampling (RFDS) 2024-03-15 10:48:22 -04:00
dd.c driver core: Release all resources during unbind before updating device links 2023-11-28 17:20:05 +00:00
devcoredump.c devcoredump: Send uevent once devcd is ready 2023-12-13 18:45:33 +01:00
devres.c devres: Initialize an uninitialized struct member 2024-09-12 11:11:35 +02:00
devtmpfs.c driver core: clean up the logic to determine which /sys/dev/ directory to use 2023-03-31 17:45:07 +02:00
driver.c driver core: create bus_is_registered() 2023-02-09 10:43:35 +01:00
firmware.c driver core: Remove redundant license text 2017-12-07 18:36:44 +01:00
hypervisor.c driver core: Remove redundant license text 2017-12-07 18:36:44 +01:00
init.c init: Initialize noop_backing_dev_info early 2022-06-16 10:55:57 +02:00
isa.c isa: Remove unnecessary checks 2023-05-31 19:03:39 +01:00
Kconfig driver core: Add CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT 2023-03-28 18:45:59 +02:00
Makefile genirq: Get rid of GENERIC_MSI_IRQ_DOMAIN 2022-11-17 15:15:20 +01:00
map.c driver: base: Prefer unsigned int to bare use of unsigned 2021-07-21 17:30:09 +02:00
memory.c mm/memory_hotplug: add missing mem_hotplug_lock 2023-12-13 18:45:24 +01:00
module.c Revert "driver core: Fix uevent_show() vs driver detach race" 2024-11-08 16:28:23 +01:00
node.c base/node.c: initialize the accessor list before registering 2024-01-25 15:35:51 -08:00
physical_location.c driver core: location: Free struct acpi_pld_info *pld before return false 2023-01-20 14:20:30 +01:00
physical_location.h driver core: physical_location.h remove extern from function prototypes 2023-03-24 15:35:48 +01:00
pinctrl.c driver core: Remove redundant license text 2017-12-07 18:36:44 +01:00
platform-msi.c genirq/msi, platform-msi: Ensure that MSI descriptors are unreferenced 2023-03-02 18:09:44 +01:00
platform.c of: Move of_platform_register_reconfig_notifier() into DT core 2023-08-04 11:36:33 -06:00
property.c drivers: fwnode: fix fwnode_irq_get[_byname]() 2023-06-15 13:37:35 +02:00
soc.c base: soc: populate machine name in soc_device_register if empty 2023-03-29 12:21:23 +02:00
swnode.c software node: Let args be NULL in software_node_get_reference_args 2024-01-25 15:35:51 -08:00
syscore.c syscore: Use pm_pr_dbg() for syscore_{suspend,resume}() 2020-09-08 13:32:06 +02:00
topology.c drivers/base: fix userspace break from using bin_attributes for cpumap and cpulist 2022-07-15 17:36:33 +02:00
trace.c devres: Enable trace events 2021-06-15 17:14:36 +02:00
trace.h devres: Enable trace events 2021-06-15 17:14:36 +02:00
transport_class.c drivers: base: transport_class: fix resource leak when transport_add_device() fails 2023-01-20 14:22:53 +01:00