1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/gpu/drm/i915/gt/uc
John Harrison 11ce8fd8fd drm/i915/uc: Fix two issues with over-size firmware files
In the case where a firmware file is too large (e.g. someone
downloaded a web page ASCII dump from github...), the firmware object
is released but the pointer is not zerod. If no other firmware file
was found then release would be called again leading to a double kfree.

Also, the size check was only being applied to the initial firmware
load not any of the subsequent attempts. So move the check into a
wrapper that is used for all loads.

Fixes: 016241168d ("drm/i915/uc: use different ggtt pin offsets for uc loads")
Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Alan Previn <alan.previn.teres.alexis@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: "Thomas Hellström" <thomas.hellstrom@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20221221193031.687266-4-John.C.Harrison@Intel.com
(cherry picked from commit 4071d98b29)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2022-12-30 03:04:45 -05:00
..
abi drm/i915/guc: Support OA when Wa_16011777198 is enabled 2022-10-27 12:37:01 -07:00
guc_capture_fwif.h drm/i915/guc: Pre-allocate output nodes for extraction 2022-03-22 10:33:31 -07:00
intel_guc.c drm/i915/guc: handle interrupts from media GuC 2022-11-14 10:11:47 -08:00
intel_guc.h drm/i915/guc: handle interrupts from media GuC 2022-11-14 10:11:47 -08:00
intel_guc_ads.c drm/i915/mtl: pass the GSC CS info to the GuC 2022-11-07 11:03:39 -08:00
intel_guc_ads.h drm/i915/guc: Convert engine record to iosys_map 2022-02-25 15:23:23 -08:00
intel_guc_capture.c drm/i915/guc: make default_lists const data 2022-11-23 11:38:01 -05:00
intel_guc_capture.h drm/i915/guc: Fix capture size warning and bump the size 2022-08-17 10:06:49 -07:00
intel_guc_ct.c drm/i915/guc: Don't abort on CTB_UNUSED status 2022-07-29 10:35:59 -07:00
intel_guc_ct.h drm/i915/guc: Update GuC debugfs to support new GuC 2021-07-22 10:07:27 -07:00
intel_guc_debugfs.c drm/i915/guc: Delay disabling guc_id scheduling for better hysteresis 2022-10-26 17:29:43 -07:00
intel_guc_debugfs.h drm/i915/uc: Move uC debugfs to its own folder under GT 2020-03-26 21:23:03 +00:00
intel_guc_fw.c drm/i915/gt: Always use MCR functions on multicast registers 2022-10-17 10:15:47 -07:00
intel_guc_fw.h drm/i915/huc: make "support huc" reflect HW capabilities 2020-03-26 21:22:01 +00:00
intel_guc_fwif.h drm/i915/mtl: pass the GSC CS info to the GuC 2022-11-07 11:03:39 -08:00
intel_guc_hwconfig.c drm/i915/hwconfig: Future-proof platform checks 2022-05-25 12:38:22 -07:00
intel_guc_log.c drm/i915/guc: Fix GuC error capture sizing estimation and reporting 2022-10-26 15:00:39 -07:00
intel_guc_log.h drm/i915/guc: Make GuC log sizes runtime configurable 2022-08-17 10:07:04 -07:00
intel_guc_log_debugfs.c drm/i915/guc: Speed up GuC log dumps 2021-12-20 15:33:16 -08:00
intel_guc_log_debugfs.h drm/i915/uc: Move uC debugfs to its own folder under GT 2020-03-26 21:23:03 +00:00
intel_guc_rc.c drm/i915/mtl: Add Wa_14017073508 for SAMedia 2022-11-14 16:58:22 +05:30
intel_guc_rc.h drm/i915/guc/rc: Setup and enable GuCRC feature 2021-08-03 16:05:44 -07:00
intel_guc_reg.h drm/i915/guc: define media GT GuC send regs 2022-11-14 10:11:47 -08:00
intel_guc_slpc.c drm/i915/guc: Support OA when Wa_16011777198 is enabled 2022-10-27 12:37:01 -07:00
intel_guc_slpc.h drm/i915/guc: Support OA when Wa_16011777198 is enabled 2022-10-27 12:37:01 -07:00
intel_guc_slpc_types.h drm/i915/slpc: Use platform limits for min/max frequency 2022-10-26 14:24:30 -07:00
intel_guc_submission.c GVT Changes: 2022-11-23 09:15:44 +10:00
intel_guc_submission.h drm/i915/pmu: Connect engine busyness stats from GuC to pmu 2021-10-28 11:04:43 -07:00
intel_huc.c drm/i915/huc: always init the delayed load fence 2022-11-30 09:07:10 -05:00
intel_huc.h drm/i915/huc: stall media submission until HuC is loaded 2022-10-03 11:29:19 -07:00
intel_huc_debugfs.c drm/i915: rename debugfs_gt files 2021-09-18 23:33:19 -07:00
intel_huc_debugfs.h drm/i915/uc: Move uC debugfs to its own folder under GT 2020-03-26 21:23:03 +00:00
intel_huc_fw.c drm/i915/dg2: setup HuC loading via GSC 2022-10-03 11:29:16 -07:00
intel_huc_fw.h drm/i915/dg2: setup HuC loading via GSC 2022-10-03 11:29:16 -07:00
intel_uc.c drm/i915/huc: fix leak of debug object in huc load fence on driver unload 2022-11-29 12:30:03 -05:00
intel_uc.h i915/guc/reset: Make __guc_reset_context aware of guilty engines 2022-05-16 10:13:39 +03:00
intel_uc_debugfs.c drm/i915: Use str_yes_no() 2022-03-02 08:48:13 -08:00
intel_uc_debugfs.h drm/i915/uc: Move uC debugfs to its own folder under GT 2020-03-26 21:23:03 +00:00
intel_uc_fw.c drm/i915/uc: Fix two issues with over-size firmware files 2022-12-30 03:04:45 -05:00
intel_uc_fw.h drm/i915/uc: use different ggtt pin offsets for uc loads 2022-11-14 09:58:31 -08:00
intel_uc_fw_abi.h drm/i915/uc: Add patch level version number support 2022-09-07 09:54:29 -07:00
selftest_guc.c drm/i915/guc: skip scrub_ctbs selftest if reset is disabled 2022-08-17 13:34:53 -07:00
selftest_guc_hangcheck.c drm/i915/guc: don't hardcode BCS0 in guc_hang selftest 2022-11-07 11:28:29 -08:00
selftest_guc_multi_lrc.c drm/i915/guc: Don't use pr_err when not necessary 2022-07-20 16:49:56 -07:00