 vmscan.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
diff -ruNp 360-reset-kswapd-max-order-after-resume.patch-old/mm/vmscan.c 360-reset-kswapd-max-order-after-resume.patch-new/mm/vmscan.c
--- 360-reset-kswapd-max-order-after-resume.patch-old/mm/vmscan.c	2005-07-17 09:05:36.000000000 +1000
+++ 360-reset-kswapd-max-order-after-resume.patch-new/mm/vmscan.c	2005-07-17 09:05:49.000000000 +1000
@@ -1245,8 +1245,8 @@ static int kswapd(void *p)
 	order = 0;
 	for ( ; ; ) {
 		unsigned long new_order;
-
-		try_to_freeze();
+		if (try_to_freeze())
+			pgdat->kswapd_max_order = 0;
 
 		prepare_to_wait(&pgdat->kswapd_wait, &wait, TASK_INTERRUPTIBLE);
 		new_order = pgdat->kswapd_max_order;

