On 24-09-2025 15:52, Colin Ian King wrote:
The variable offset is not being initialized, and it is only set inside
a for-loop if entry->name is the same as manifest_entry. In the case
where it is not initialized a non-zero check on offset is potentialy checking
a bogus uninitalized value. Fix this by initializing offset to zero.

Fixes: efa29317a553 ("drm/xe/xe_late_bind_fw: Extract and print version info")
Signed-off-by: Colin Ian King <[email protected]>
Reviewed-by: Badal Nilawar <[email protected]>
---

V2: Fix identical issue in parse_lb_layout that I ommitted in the first
patch

---
  drivers/gpu/drm/xe/xe_late_bind_fw.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_late_bind_fw.c 
b/drivers/gpu/drm/xe/xe_late_bind_fw.c
index 38f3feb2aecd..8f5082e689dc 100644
--- a/drivers/gpu/drm/xe/xe_late_bind_fw.c
+++ b/drivers/gpu/drm/xe/xe_late_bind_fw.c
@@ -60,7 +60,7 @@ static int parse_cpd_header(struct xe_late_bind_fw *lb_fw,
        const struct gsc_manifest_header *manifest;
        const struct gsc_cpd_entry *entry;
        size_t min_size = sizeof(*header);
-       u32 offset;
+       u32 offset = 0;
        int i;
/* manifest_entry is mandatory */
@@ -116,7 +116,7 @@ static int parse_lb_layout(struct xe_late_bind_fw *lb_fw,
        const struct csc_fpt_header *header = data;
        const struct csc_fpt_entry *entry;
        size_t min_size = sizeof(*header);
-       u32 offset;
+       u32 offset = 0;
        int i;
/* fpt_entry is mandatory */

Reply via email to