Re: [PATCH][next] acpi/hmat: fix uninitialized pointer dereference on pointer 'target'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 4/5/2019 7:42 PM, Colin King wrote:
From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

The pointer 'target' is not initialized and is only assigned when the
ACPI_HMAT_MEMORY_PD_VALID bit in p->flags is set.  There is a later null
check on target that leads to an uninitialized pointer read and
dereference when assigning target->processor_pxm when target contains a
non-null garbage value.  Fix this by initializing targer to null.

Fixes: 665ac7e92757 ("acpi/hmat: Register processor domain to its memory")
Addresses-Coverity: ("Uninitialized pointer read")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
Reviewed-by: Mukesh Ojha <mojha@xxxxxxxxxxxxxx>

Cheers,
-Mukesh
---
  drivers/acpi/hmat/hmat.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/acpi/hmat/hmat.c b/drivers/acpi/hmat/hmat.c
index b7824a0309f7..b275016ff648 100644
--- a/drivers/acpi/hmat/hmat.c
+++ b/drivers/acpi/hmat/hmat.c
@@ -366,7 +366,7 @@ static int __init hmat_parse_proximity_domain(union acpi_subtable_headers *heade
  					      const unsigned long end)
  {
  	struct acpi_hmat_proximity_domain *p = (void *)header;
-	struct memory_target *target;
+	struct memory_target *target = NULL;
if (p->header.length != sizeof(*p)) {
  		pr_notice("HMAT: Unexpected address range header length: %d\n",



[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux