[PATCH v2 6/9] platform/x86/intel/ifs: Metadata validation for start_chunk

From: Jithu Joseph
Date: Fri Sep 22 2023 - 19:30:38 EST


Add an additional check to validate IFS image metadata field prior to
loading the test image.

If start_chunk is not a multiple of chunks_per_stride error out.

Signed-off-by: Jithu Joseph <jithu.joseph@xxxxxxxxx>
Reviewed-by: Tony Luck <tony.luck@xxxxxxxxx>
Tested-by: Pengfei Xu <pengfei.xu@xxxxxxxxx>
---
drivers/platform/x86/intel/ifs/load.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/platform/x86/intel/ifs/load.c b/drivers/platform/x86/intel/ifs/load.c
index b09106034fac..c92d313b921f 100644
--- a/drivers/platform/x86/intel/ifs/load.c
+++ b/drivers/platform/x86/intel/ifs/load.c
@@ -291,6 +291,13 @@ static int validate_ifs_metadata(struct device *dev)
return ret;
}

+ if (ifs_meta->chunks_per_stride != 0 &&
+ (ifs_meta->starting_chunk % ifs_meta->chunks_per_stride)) {
+ dev_warn(dev, "Starting chunk num %d not a multiple of chunks_per_stride %d\n",
+ ifs_meta->starting_chunk, ifs_meta->chunks_per_stride);
+ return ret;
+ }
+
return 0;
}

--
2.25.1