aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi
diff options
context:
space:
mode:
authorBjorn Helgaas <bjorn.helgaas@hp.com>2009-08-31 18:32:15 -0400
committerLen Brown <len.brown@intel.com>2009-09-19 02:15:05 -0400
commit59fc9e5e21baf2bf5c87d8006e006007c3a708c2 (patch)
tree358619eee9602d0b9cd9875d6d68fc49a5454f3c /drivers/acpi
parent9ac6185669d0d277c4082fa92ba8eb2e55534cbf (diff)
ACPI: remove null pointer checks in deferred execution path
Better to oops and learn about a bug than to silently cover it up. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/osl.c9
1 files changed, 0 insertions, 9 deletions
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
index d753206f073..56071b67bed 100644
--- a/drivers/acpi/osl.c
+++ b/drivers/acpi/osl.c
@@ -699,18 +699,12 @@ void acpi_os_derive_pci_id(acpi_handle rhandle, /* upper bound */
699static void acpi_os_execute_deferred(struct work_struct *work) 699static void acpi_os_execute_deferred(struct work_struct *work)
700{ 700{
701 struct acpi_os_dpc *dpc = container_of(work, struct acpi_os_dpc, work); 701 struct acpi_os_dpc *dpc = container_of(work, struct acpi_os_dpc, work);
702 if (!dpc) {
703 printk(KERN_ERR PREFIX "Invalid (NULL) context\n");
704 return;
705 }
706 702
707 if (dpc->wait) 703 if (dpc->wait)
708 acpi_os_wait_events_complete(NULL); 704 acpi_os_wait_events_complete(NULL);
709 705
710 dpc->function(dpc->context); 706 dpc->function(dpc->context);
711 kfree(dpc); 707 kfree(dpc);
712
713 return;
714} 708}
715 709
716/******************************************************************************* 710/*******************************************************************************
@@ -739,9 +733,6 @@ static acpi_status __acpi_os_execute(acpi_execute_type type,
739 "Scheduling function [%p(%p)] for deferred execution.\n", 733 "Scheduling function [%p(%p)] for deferred execution.\n",
740 function, context)); 734 function, context));
741 735
742 if (!function)
743 return AE_BAD_PARAMETER;
744
745 /* 736 /*
746 * Allocate/initialize DPC structure. Note that this memory will be 737 * Allocate/initialize DPC structure. Note that this memory will be
747 * freed by the callee. The kernel handles the work_struct list in a 738 * freed by the callee. The kernel handles the work_struct list in a