These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / acpi / acpica / nsutils.c
index 6ad0200..de325ae 100644 (file)
@@ -83,7 +83,7 @@ acpi_ns_print_node_pathname(struct acpi_namespace_node *node,
 
        buffer.length = ACPI_ALLOCATE_LOCAL_BUFFER;
 
-       status = acpi_ns_handle_to_pathname(node, &buffer);
+       status = acpi_ns_handle_to_pathname(node, &buffer, TRUE);
        if (ACPI_SUCCESS(status)) {
                if (message) {
                        acpi_os_printf("%s ", message);
@@ -292,8 +292,7 @@ acpi_status acpi_ns_build_internal_name(struct acpi_namestring_info *info)
                        } else {
                                /* Convert the character to uppercase and save it */
 
-                               result[i] =
-                                   (char)ACPI_TOUPPER((int)*external_name);
+                               result[i] = (char)toupper((int)*external_name);
                                external_name++;
                        }
                }
@@ -597,6 +596,23 @@ void acpi_ns_terminate(void)
 
        ACPI_FUNCTION_TRACE(ns_terminate);
 
+#ifdef ACPI_EXEC_APP
+       {
+               union acpi_operand_object *prev;
+               union acpi_operand_object *next;
+
+               /* Delete any module-level code blocks */
+
+               next = acpi_gbl_module_code_list;
+               while (next) {
+                       prev = next;
+                       next = next->method.mutex;
+                       prev->method.mutex = NULL;      /* Clear the Mutex (cheated) field */
+                       acpi_ut_remove_reference(prev);
+               }
+       }
+#endif
+
        /*
         * Free the entire namespace -- all nodes and all objects
         * attached to the nodes