diff --git a/drivers/acpi/bay.c b/drivers/acpi/bay.c
index 61b6c5beb2d347d32d1fe1e3ee1ff8195e5f731d..e6caf5d42e0eb72a7f49a9b44fa00c290937dbcf 100644
--- a/drivers/acpi/bay.c
+++ b/drivers/acpi/bay.c
@@ -377,6 +377,9 @@ static int __init bay_init(void)
 
 	INIT_LIST_HEAD(&drive_bays);
 
+	if (acpi_disabled)
+		return -ENODEV;
+
 	if (acpi_disabled)
 		return -ENODEV;
 
diff --git a/drivers/acpi/dock.c b/drivers/acpi/dock.c
index bb7c51f712bd6cde630e4e8e5a771ca9d9e5fc55..1e872e79db33bdeaf35cdf4fd049afc0e31acd14 100644
--- a/drivers/acpi/dock.c
+++ b/drivers/acpi/dock.c
@@ -917,6 +917,9 @@ static int __init dock_init(void)
 
 	dock_station = NULL;
 
+	if (acpi_disabled)
+		return 0;
+
 	if (acpi_disabled)
 		return 0;