Commit 72e4d07d authored by Dan Carpenter's avatar Dan Carpenter Committed by Hans de Goede
Browse files

platform/x86: think-lmi: Prevent underflow in index_store()



There needs to be a check to prevent negative offsets for
setting->index.  I have reviewed this code and I think that the
"if (block->instance_count <= instance)" check in __query_block() will
prevent this from resulting in an out of bounds access.  But it's
still worth fixing.

Fixes: 640a5fa5 ("platform/x86: think-lmi: Opcode support")
Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Link: https://lore.kernel.org/r/20211217071209.GF26548@kili


Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
parent 85504587
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -573,7 +573,7 @@ static ssize_t index_store(struct kobject *kobj,
	if (err < 0)
		return err;

	if (val > TLMI_INDEX_MAX)
	if (val < 0 || val > TLMI_INDEX_MAX)
		return -EINVAL;

	setting->index = val;