Skip to contentSkip to conversation

ACPICA: Windows compatibility fix: same buffer/string store

PATCH In review Lin Ming 2 participants 2 messages Aug 26, 2009 – Aug 27, 2009 10 messages not in the archive

Subsystems (2)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): B9D7F88A26B04740A56A35A34719F3AFE09E7D@AUSX3MPS330.aus.amer.dell.com

A message that is not in the archive (sent off-list or not yet received): B9D7F88A26B04740A56A35A34719F3AF01052A9F@AUSX3MPS330.aus.amer.dell.com

A message that is not in the archive (sent off-list or not yet received): E87738D94A6AD54789B5B8D1BAEB06CC5C74808741@azsmsx503.amr.corp.intel.com

A message that is not in the archive (sent off-list or not yet received): B9D7F88A26B04740A56A35A34719F3AF010901C6@AUSX3MPS330.aus.amer.dell.com

A message that is not in the archive (sent off-list or not yet received): 1249956889.7853.2.camel@rzhang-dt

A message that is not in the archive (sent off-list or not yet received): B9D7F88A26B04740A56A35A34719F3AF01090463@AUSX3MPS330.aus.amer.dell.com

A message that is not in the archive (sent off-list or not yet received): 1250045983.7853.68.camel@rzhang-dt

A message that is not in the archive (sent off-list or not yet received): B9D7F88A26B04740A56A35A34719F3AF01090704@AUSX3MPS330.aus.amer.dell.com

A message that is not in the archive (sent off-list or not yet received): 037F493892196B458CD3E193E8EBAD4F01EAB64667@pdsmsx502.ccr.corp.intel.com

A message that is not in the archive (sent off-list or not yet received): B9D7F88A26B04740A56A35A34719F3AF0110BCD1@AUSX3MPS330.aus.amer.dell.com

Lin Ming

author
#10 lore raw

PATCH 1/1 ACPICA: Windows compatibility fix: same buffer/string store

Hi, Len

This is the important fix for the WMI based HotKey issue reported by Dell. Could you merge it to 2.6.31-rc8?

Thanks,
Lin Ming
---

Subject: [PATCH] ACPICA: Windows compatibility fix: same buffer/string store

Fixes a compatibility issue when the same buffer or string is stored to itself. This has been seen in the field. Previously, ACPICA would zero out the buffer/string. Now, the operation is treated as a noop. ACPICA BZ 803.

http://bugzilla.acpica.org/show_bug.cgi?id=803

---
 drivers/acpi/acpica/exstorob.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)
drivers/acpi/acpica/exstorob.c +12 -0
index 67340cc..257706e 100644
@@ -70,6 +70,12 @@ acpi_ex_store_buffer_to_buffer(union acpi_operand_object *source_desc,
 
 	ACPI_FUNCTION_TRACE_PTR(ex_store_buffer_to_buffer, source_desc);
 
+	/* If Source and Target are the same, just return */
+
+	if (source_desc == target_desc) {
+		return_ACPI_STATUS(AE_OK);
+	}
+
 	/* We know that source_desc is a buffer by now */
 
 	buffer = ACPI_CAST_PTR(u8, source_desc->buffer.pointer);
@@ -161,6 +167,12 @@ acpi_ex_store_string_to_string(union acpi_operand_object *source_desc,
 
 	ACPI_FUNCTION_TRACE_PTR(ex_store_string_to_string, source_desc);
 
+	/* If Source and Target are the same, just return */
+
+	if (source_desc == target_desc) {
+		return_ACPI_STATUS(AE_OK);
+	}
+
 	/* We know that source_desc is a string by now */
 
 	buffer = ACPI_CAST_PTR(u8, source_desc->string.pointer);
reviewer
#11 lore raw

applied for 2.6.31

thanks,
Len Brown, Intel Open Source Technology Center