[PATCH] ACPICA BZ 1035 fixes segfault with too many ^^^^^^ prefixes. (LP: #1205714)

Alex Hung alex.hung at canonical.com
Mon Jul 29 08:22:36 UTC 2013


On 07/28/2013 04:36 AM, Colin King wrote:
> From: Colin Ian King <colin.king at canonical.com>
>
> While doing some regression checks I found a particular DSDT that caused
> ACPICA to segfault on compilation when too many ^^^^^ prefixes are found.
> This was fixed on Friday by Robert Moore and I'd like the changes applied
> to fwts.  Original bug: https://bugs.acpica.org/show_bug.cgi?id=1035
>
> Signed-off-by: Colin Ian King <colin.king at canonical.com>
> ---
>   src/acpica/source/compiler/aslload.c              | 4 ++++
>   src/acpica/source/components/namespace/nsaccess.c | 4 ++--
>   2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/src/acpica/source/compiler/aslload.c b/src/acpica/source/compiler/aslload.c
> index 338cf1c..27bd254 100644
> --- a/src/acpica/source/compiler/aslload.c
> +++ b/src/acpica/source/compiler/aslload.c
> @@ -559,6 +559,10 @@ LdNamespace1Begin (
>                               ACPI_TYPE_LOCAL_SCOPE,
>                               ACPI_IMODE_LOAD_PASS1, Flags,
>                               WalkState, &(Node));
> +                if (ACPI_FAILURE (Status))
> +                {
> +                    return_ACPI_STATUS (Status);
> +                }

Hi Colin,

Do you think we can remove the curly brackets?

>
>                   /*
>                    * However, this is an error -- primarily because the MS
> diff --git a/src/acpica/source/components/namespace/nsaccess.c b/src/acpica/source/components/namespace/nsaccess.c
> index c09e11b..d0e70f6 100644
> --- a/src/acpica/source/components/namespace/nsaccess.c
> +++ b/src/acpica/source/components/namespace/nsaccess.c
> @@ -520,8 +520,8 @@ AcpiNsLookup (
>                       /* Current scope has no parent scope */
>
>                       ACPI_ERROR ((AE_INFO,
> -                        "ACPI path has too many parent prefixes (^) "
> -                        "- reached beyond root node"));
> +                        "%s: Path has too many parent prefixes (^) "
> +                        "- reached beyond root node", Pathname));
>                       return_ACPI_STATUS (AE_NOT_FOUND);
>                   }
>               }
>


-- 
Cheers,
Alex Hung



More information about the fwts-devel mailing list