Jesse Keating 7a3296
--- linux-2.6.34.noarch/drivers/acpi/acpica/dsopcode.c~	2010-07-01 14:40:44.000000000 -0400
Jesse Keating 7a3296
+++ linux-2.6.34.noarch/drivers/acpi/acpica/dsopcode.c	2010-07-01 14:48:56.000000000 -0400
Jesse Keating 7a3296
@@ -1276,6 +1276,10 @@ acpi_ds_exec_end_control_op(struct acpi_
Jesse Keating 7a3296
 			 * loop does not implement a timeout.
Jesse Keating 7a3296
 			 */
Jesse Keating 7a3296
 			control_state->control.loop_count++;
Jesse Keating 7a3296
+			if ((control_state->control.loop_count > 1) && (control_state->control.loop_count % 0xffff == 0))
Jesse Keating 7a3296
+				printk("ACPI: While loop taking a really long time. loop_count=0x%x\n",
Jesse Keating 7a3296
+					control_state->control.loop_count);
Jesse Keating 7a3296
+
Jesse Keating 7a3296
 			if (control_state->control.loop_count >
Jesse Keating 7a3296
 				ACPI_MAX_LOOP_ITERATIONS) {
Jesse Keating 7a3296
 				status = AE_AML_INFINITE_LOOP;
Jesse Keating 7a3296
--- linux-2.6.34.noarch/drivers/acpi/acpica/acconfig.h~	2010-07-01 14:49:03.000000000 -0400
Jesse Keating 7a3296
+++ linux-2.6.34.noarch/drivers/acpi/acpica/acconfig.h	2010-07-01 14:49:17.000000000 -0400
Jesse Keating 7a3296
@@ -117,7 +117,7 @@
Jesse Keating 7a3296
 
Jesse Keating 7a3296
 /* Maximum number of While() loop iterations before forced abort */
Jesse Keating 7a3296
 
Jesse Keating 7a3296
-#define ACPI_MAX_LOOP_ITERATIONS        0xFFFF
Jesse Keating 7a3296
+#define ACPI_MAX_LOOP_ITERATIONS        0xFFFFFF
Jesse Keating 7a3296
 
Jesse Keating 7a3296
 /* Maximum sleep allowed via Sleep() operator */
Jesse Keating 7a3296