Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6afa1e2a authored by Pali Rohár's avatar Pali Rohár Committed by Andy Shevchenko
Browse files

platform/x86: wmi: Fix check for method instance number



instance_count defines number of instances of data block and instance
itself is indexed from zero, which means first instance has number 0.
Therefore check for invalid instance should be non-strict inequality.

Signed-off-by: default avatarPali Rohár <pali.rohar@gmail.com>
Reviewed-by: default avatarDarren Hart (VMware) <dvhart@infradead.org>
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
parent ade50296
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -218,7 +218,7 @@ u32 method_id, const struct acpi_buffer *in, struct acpi_buffer *out)
	if (!(block->flags & ACPI_WMI_METHOD))
		return AE_BAD_DATA;

	if (block->instance_count < instance)
	if (block->instance_count <= instance)
		return AE_BAD_PARAMETER;

	input.count = 2;
@@ -265,7 +265,7 @@ static acpi_status __query_block(struct wmi_block *wblock, u8 instance,
	block = &wblock->gblock;
	handle = wblock->acpi_device->handle;

	if (block->instance_count < instance)
	if (block->instance_count <= instance)
		return AE_BAD_PARAMETER;

	/* Check GUID is a data block */
@@ -392,7 +392,7 @@ acpi_status wmi_set_block(const char *guid_string, u8 instance,
	block = &wblock->gblock;
	handle = wblock->acpi_device->handle;

	if (block->instance_count < instance)
	if (block->instance_count <= instance)
		return AE_BAD_PARAMETER;

	/* Check GUID is a data block */