From: Joerg Roedel <jroedel@suse.de>
Date: Mon, 21 Jul 2014 10:27:02 +0000 (+0200)
Subject: PM / Hibernate: Touch Soft Lockup Watchdog in rtree_next_node
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=0f7d83e85dbd5bb8032ebed7713edf59670fb074;p=linux.git

PM / Hibernate: Touch Soft Lockup Watchdog in rtree_next_node

When a memory bitmap is fully populated on a large memory
machine (several TB of RAM) it can take more than a minute
to walk through all bits. This causes the soft lockup
detector on these machine to report warnings.

Avoid this by touching the soft lockup watchdog in the
memory bitmap walking code.

Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---

diff --git a/kernel/power/snapshot.c b/kernel/power/snapshot.c
index ab1998adb0a96..4fc5c32422b39 100644
--- a/kernel/power/snapshot.c
+++ b/kernel/power/snapshot.c
@@ -769,6 +769,7 @@ static bool rtree_next_node(struct memory_bitmap *bm)
 	if (&bm->cur.node->list != &bm->cur.zone->leaves) {
 		bm->cur.node_pfn += BM_BITS_PER_BLOCK;
 		bm->cur.node_bit  = 0;
+		touch_softlockup_watchdog();
 		return true;
 	}