aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/namespace/nsaccess.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/namespace/nsaccess.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/namespace/nsaccess.c')
-rw-r--r--drivers/acpi/namespace/nsaccess.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/acpi/namespace/nsaccess.c b/drivers/acpi/namespace/nsaccess.c
index 1149bc18fb35..6bdad8bfcf0b 100644
--- a/drivers/acpi/namespace/nsaccess.c
+++ b/drivers/acpi/namespace/nsaccess.c
@@ -98,6 +98,7 @@ acpi_status acpi_ns_root_initialize(void)
98 "Entering predefined entries into namespace\n")); 98 "Entering predefined entries into namespace\n"));
99 99
100 for (init_val = acpi_gbl_pre_defined_names; init_val->name; init_val++) { 100 for (init_val = acpi_gbl_pre_defined_names; init_val->name; init_val++) {
101
101 /* _OSI is optional for now, will be permanent later */ 102 /* _OSI is optional for now, will be permanent later */
102 103
103 if (!ACPI_STRCMP(init_val->name, "_OSI") 104 if (!ACPI_STRCMP(init_val->name, "_OSI")
@@ -365,6 +366,7 @@ acpi_ns_lookup(union acpi_generic_state *scope_info,
365 * Begin examination of the actual pathname 366 * Begin examination of the actual pathname
366 */ 367 */
367 if (!pathname) { 368 if (!pathname) {
369
368 /* A Null name_path is allowed and refers to the root */ 370 /* A Null name_path is allowed and refers to the root */
369 371
370 num_segments = 0; 372 num_segments = 0;
@@ -389,6 +391,7 @@ acpi_ns_lookup(union acpi_generic_state *scope_info,
389 * to the current scope). 391 * to the current scope).
390 */ 392 */
391 if (*path == (u8) AML_ROOT_PREFIX) { 393 if (*path == (u8) AML_ROOT_PREFIX) {
394
392 /* Pathname is fully qualified, start from the root */ 395 /* Pathname is fully qualified, start from the root */
393 396
394 this_node = acpi_gbl_root_node; 397 this_node = acpi_gbl_root_node;
@@ -416,6 +419,7 @@ acpi_ns_lookup(union acpi_generic_state *scope_info,
416 this_node = prefix_node; 419 this_node = prefix_node;
417 num_carats = 0; 420 num_carats = 0;
418 while (*path == (u8) AML_PARENT_PREFIX) { 421 while (*path == (u8) AML_PARENT_PREFIX) {
422
419 /* Name is fully qualified, no search rules apply */ 423 /* Name is fully qualified, no search rules apply */
420 424
421 search_parent_flag = ACPI_NS_NO_UPSEARCH; 425 search_parent_flag = ACPI_NS_NO_UPSEARCH;
@@ -430,6 +434,7 @@ acpi_ns_lookup(union acpi_generic_state *scope_info,
430 num_carats++; 434 num_carats++;
431 this_node = acpi_ns_get_parent_node(this_node); 435 this_node = acpi_ns_get_parent_node(this_node);
432 if (!this_node) { 436 if (!this_node) {
437
433 /* Current scope has no parent scope */ 438 /* Current scope has no parent scope */
434 439
435 ACPI_ERROR((AE_INFO, 440 ACPI_ERROR((AE_INFO,
@@ -569,6 +574,7 @@ acpi_ns_lookup(union acpi_generic_state *scope_info,
569 &this_node); 574 &this_node);
570 if (ACPI_FAILURE(status)) { 575 if (ACPI_FAILURE(status)) {
571 if (status == AE_NOT_FOUND) { 576 if (status == AE_NOT_FOUND) {
577
572 /* Name not found in ACPI namespace */ 578 /* Name not found in ACPI namespace */
573 579
574 ACPI_DEBUG_PRINT((ACPI_DB_NAMES, 580 ACPI_DEBUG_PRINT((ACPI_DB_NAMES,
@@ -602,6 +608,7 @@ acpi_ns_lookup(union acpi_generic_state *scope_info,
602 (type_to_check_for != ACPI_TYPE_LOCAL_SCOPE) && 608 (type_to_check_for != ACPI_TYPE_LOCAL_SCOPE) &&
603 (this_node->type != ACPI_TYPE_ANY) && 609 (this_node->type != ACPI_TYPE_ANY) &&
604 (this_node->type != type_to_check_for)) { 610 (this_node->type != type_to_check_for)) {
611
605 /* Complain about a type mismatch */ 612 /* Complain about a type mismatch */
606 613
607 ACPI_WARNING((AE_INFO, 614 ACPI_WARNING((AE_INFO,