> Was this in response to a specific problem seen in the field? I don't think so, the submitter refers to a static code checker -- simply identifying a use before test. -Len > > >-----Original Message----- > >From: devel-bounces@xxxxxxxxxx [mailto:devel-bounces@xxxxxxxxxx] On Behalf > >Of Len Brown > >Sent: Wednesday, December 09, 2009 11:35 AM > >To: devel@xxxxxxxxxx > >Cc: linux-acpi@xxxxxxxxxxxxxxx; Dan Carpenter > >Subject: [Devel] [patch] prevent possible NULL dereference. (fwd) > > > >forwarded to devel@xxxxxxxxxx > > > >thanks, > >Len Brown, Intel Open Source Technology Center > > > >---------- Forwarded message ---------- > >Date: Tue, 10 Nov 2009 11:02:49 +0200 (SAST) > >From: Dan Carpenter <error27@xxxxxxxxx> > >To: linux-acpi@xxxxxxxxxxxxxxx > >Cc: lenb@xxxxxxxxxx > >Subject: [patch] prevent possible NULL dereference. > > > >Move the check for walk_state->thread before the dereference. > > > >Found by smatch static checker. Compile tested. > > > >regards, > >dan carpenter > > > >Signed-off-by: Dan Carpenter <error27@xxxxxxxxx> > > > >--- orig/drivers/acpi/acpica/exmutex.c 2009-11-07 09:46:53.000000000 > >+0200 > >+++ devel/drivers/acpi/acpica/exmutex.c 2009-11-07 09:48:16.000000000 > >+0200 > >@@ -375,6 +375,15 @@ > > return_ACPI_STATUS(AE_AML_MUTEX_NOT_ACQUIRED); > > } > > > >+ /* Must have a valid thread ID */ > >+ > >+ if (!walk_state->thread) { > >+ ACPI_ERROR((AE_INFO, > >+ "Cannot release Mutex [%4.4s], null thread info", > >+ acpi_ut_get_node_name(obj_desc->mutex.node))); > >+ return_ACPI_STATUS(AE_AML_INTERNAL); > >+ } > >+ > > /* > > * The Mutex is owned, but this thread must be the owner. > > * Special case for Global Lock, any thread can release > >@@ -392,15 +401,6 @@ > > return_ACPI_STATUS(AE_AML_NOT_OWNER); > > } > > > >- /* Must have a valid thread ID */ > >- > >- if (!walk_state->thread) { > >- ACPI_ERROR((AE_INFO, > >- "Cannot release Mutex [%4.4s], null thread info", > >- acpi_ut_get_node_name(obj_desc->mutex.node))); > >- return_ACPI_STATUS(AE_AML_INTERNAL); > >- } > >- > > /* > > * The sync level of the mutex must be equal to the current sync > >level. In > > * other words, the current level means that at least one mutex at > >that > >-- > >To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > >the body of a message to majordomo@xxxxxxxxxxxxxxx > >More majordomo info at http://vger.kernel.org/majordomo-info.html > >_______________________________________________ > >Devel mailing list > >Devel@xxxxxxxxxx > >http://lists.acpica.org/listinfo/devel > -- > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html