aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/tables/tbget.c
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2006-10-02 00:00:00 -0400
committerLen Brown <len.brown@intel.com>2006-03-31 02:19:03 -0500
commit52fc0b026e99b5d5d585095148d997d5634bbc25 (patch)
tree7bf93132cfd3e6957308a84198ee159f7d43cf6f /drivers/acpi/tables/tbget.c
parent46358614ed5b031797522f1020e989c959a8d8a6 (diff)
[ACPI] ACPICA 20060210
Removed a couple of extraneous ACPI_ERROR messages that appeared during normal execution. These became apparent after the conversion from ACPI_DEBUG_PRINT. Fixed a problem where the CreateField operator could hang if the BitIndex or NumBits parameter referred to a named object. From Valery Podrezov. http://bugzilla.kernel.org/show_bug.cgi?id=5359 Fixed a problem where a DeRefOf operation on a buffer object incorrectly failed with an exception. This also fixes a couple of related RefOf and DeRefOf issues. From Valery Podrezov. http://bugzilla.kernel.org/show_bug.cgi?id=5360 http://bugzilla.kernel.org/show_bug.cgi?id=5387 http://bugzilla.kernel.org/show_bug.cgi?id=5392 Fixed a problem where the AE_BUFFER_LIMIT exception was returned instead of AE_STRING_LIMIT on an out-of-bounds Index() operation. From Valery Podrezov. http://bugzilla.kernel.org/show_bug.cgi?id=5480 Implemented a memory cleanup at the end of the execution of each iteration of an AML While() loop, preventing the accumulation of outstanding objects. From Valery Podrezov. http://bugzilla.kernel.org/show_bug.cgi?id=5427 Eliminated a chunk of duplicate code in the object resolution code. From Valery Podrezov. http://bugzilla.kernel.org/show_bug.cgi?id=5336 Fixed several warnings during the 64-bit code generation. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/tables/tbget.c')
-rw-r--r--drivers/acpi/tables/tbget.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/acpi/tables/tbget.c b/drivers/acpi/tables/tbget.c
index 09b4ee6dfd60..4615e1afe8de 100644
--- a/drivers/acpi/tables/tbget.c
+++ b/drivers/acpi/tables/tbget.c
@@ -148,6 +148,10 @@ acpi_tb_get_table_header(struct acpi_pointer *address,
148 sizeof(struct acpi_table_header), 148 sizeof(struct acpi_table_header),
149 (void *)&header); 149 (void *)&header);
150 if (ACPI_FAILURE(status)) { 150 if (ACPI_FAILURE(status)) {
151 ACPI_ERROR((AE_INFO,
152 "Could not map memory at %8.8X%8.8X for table header",
153 ACPI_FORMAT_UINT64(address->pointer.
154 physical)));
151 return_ACPI_STATUS(status); 155 return_ACPI_STATUS(status);
152 } 156 }
153 157
@@ -208,6 +212,7 @@ acpi_tb_get_table_body(struct acpi_pointer *address,
208 212
209 status = acpi_tb_table_override(header, table_info); 213 status = acpi_tb_table_override(header, table_info);
210 if (ACPI_SUCCESS(status)) { 214 if (ACPI_SUCCESS(status)) {
215
211 /* Table was overridden by the host OS */ 216 /* Table was overridden by the host OS */
212 217
213 return_ACPI_STATUS(status); 218 return_ACPI_STATUS(status);
@@ -250,6 +255,7 @@ acpi_tb_table_override(struct acpi_table_header *header,
250 */ 255 */
251 status = acpi_os_table_override(header, &new_table); 256 status = acpi_os_table_override(header, &new_table);
252 if (ACPI_FAILURE(status)) { 257 if (ACPI_FAILURE(status)) {
258
253 /* Some severe error from the OSL, but we basically ignore it */ 259 /* Some severe error from the OSL, but we basically ignore it */
254 260
255 ACPI_EXCEPTION((AE_INFO, status, 261 ACPI_EXCEPTION((AE_INFO, status,
@@ -258,6 +264,7 @@ acpi_tb_table_override(struct acpi_table_header *header,
258 } 264 }
259 265
260 if (!new_table) { 266 if (!new_table) {
267
261 /* No table override */ 268 /* No table override */
262 269
263 return_ACPI_STATUS(AE_NO_ACPI_TABLES); 270 return_ACPI_STATUS(AE_NO_ACPI_TABLES);
@@ -381,6 +388,7 @@ acpi_tb_get_this_table(struct acpi_pointer *address,
381 388
382#if (!ACPI_CHECKSUM_ABORT) 389#if (!ACPI_CHECKSUM_ABORT)
383 if (ACPI_FAILURE(status)) { 390 if (ACPI_FAILURE(status)) {
391
384 /* Ignore the error if configuration says so */ 392 /* Ignore the error if configuration says so */
385 393
386 status = AE_OK; 394 status = AE_OK;
@@ -440,6 +448,7 @@ acpi_tb_get_table_ptr(acpi_table_type table_type,
440 * instance is always in the list head. 448 * instance is always in the list head.
441 */ 449 */
442 if (instance == 1) { 450 if (instance == 1) {
451
443 /* Get the first */ 452 /* Get the first */
444 453
445 *table_ptr_loc = NULL; 454 *table_ptr_loc = NULL;