Messages in this thread | | | From | "Moore, Robert" <> | Subject | RE: [PATCH 1/1] ACPI: NULL pointer checking | Date | Thu, 7 Sep 2017 19:26:56 +0000 |
| |
> -----Original Message----- > From: Devel [mailto:devel-bounces@acpica.org] On Behalf Of Moore, Robert > Sent: Wednesday, September 6, 2017 9:43 AM > To: Zhenhua <lizhenhuajiyang@163.com>; devel@acpica.org; Zheng, Lv > <lv.zheng@intel.com>; Wysocki, Rafael J <rafael.j.wysocki@intel.com>; > lenb@kernel.org; linux-acpi@vger.kernel.org; linux- > kernel@vger.kernel.org > Subject: Re: [Devel] [PATCH 1/1] ACPI: NULL pointer checking > > > > > -----Original Message----- > > From: Zhenhua [mailto:lizhenhuajiyang@163.com] > > Sent: Wednesday, September 6, 2017 6:35 AM > > To: devel@acpica.org; Moore, Robert <robert.moore@intel.com>; Zheng, > > Lv <lv.zheng@intel.com>; Wysocki, Rafael J > > <rafael.j.wysocki@intel.com>; lenb@kernel.org; > > linux-acpi@vger.kernel.org; linux- kernel@vger.kernel.org > > Cc: Zhenhua <lizhenhuajiyang@163.com> > > Subject: [PATCH 1/1] ACPI: NULL pointer checking > > > > These two pointers should be checked, for some broken devices they may > > cause system crash. > > > > Signed-off-by: Zhenhua <lizhenhuajiyang@163.com> > > --- > > drivers/acpi/acpica/nsaccess.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/acpi/acpica/nsaccess.c > > b/drivers/acpi/acpica/nsaccess.c index f2733f51ca8d..151abb0ef4d5 > > 100644 > > --- a/drivers/acpi/acpica/nsaccess.c > > +++ b/drivers/acpi/acpica/nsaccess.c > > @@ -338,7 +338,7 @@ acpi_ns_lookup(union acpi_generic_state > *scope_info, > > return_ACPI_STATUS(AE_AML_INTERNAL); > > } > > > > - if (!(flags & ACPI_NS_PREFIX_IS_SCOPE)) { > > + if ((!prefix_node) && (!(flags & ACPI_NS_PREFIX_IS_SCOPE))) { > [Moore, Robert] > > Is there an actual case where the original code failed? > > [Moore, Robert]
Prefix_node is guaranteed to be valid at this point in the code.
> > > /* > > * This node might not be a actual "scope" node (such as > a > > * Device/Method, etc.) It could be a Package or other > object @@ > > -369,7 +369,7 @@ acpi_ns_lookup(union acpi_generic_state *scope_info, > > ACPI_DEBUG_PRINT((ACPI_DB_NAMES, > > "Null Pathname (Zero segments), Flags=%X\n", > > flags)); > > - } else { > > + } else if (path) { [Moore, Robert]
Likewise, "path" is guaranteed to be valid at this point.
> > /* > > * Name pointer is valid (and must be in internal name > > format) > > * > > -- > > 2.14.1 > > > > _______________________________________________ > Devel mailing list > Devel@acpica.org > https://lists.acpica.org/mailman/listinfo/devel
| |