Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 3160499aacb81f6735941eb4c372d87a > files > 289

kvm-83-164.el5_5.30.src.rpm

From 40b4bb01cd1023f191e4fabf894b83c4d2441801 Mon Sep 17 00:00:00 2001
From: Izik Eidus <ieidus@redhat.com>
Date: Tue, 30 Jun 2009 18:18:00 +0300
Subject: [PATCH] fix bug #506375

This patch fix bug #506375 by adding cond_resched()

>From a0d889214acdafe1673f3afa4985600e345b0684 Mon Sep 17 00:00:00 2001
From: Izik Eidus <ieidus@redhat.com>
Date: Wed, 17 Jun 2009 01:15:55 -0400
Subject: [PATCH] ksm: fix bug #506375 - add cond_resched()

This patch fix bug #506375 by adding cond_resched()

Thanks.

Signed-off-by: Izik Eidus <ieidus@redhat.com>
Message-ID: <4A4A2CA8.1040403@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Bugzilla: 506375
RH-Upstream-status: not-applicable
Acked-by: Andrea Arcangeli <aarcange@redhat.com>
Acked-by: Glauber Costa <glommer@redhat.com>
Acked-by: Marcelo Tosatti <mtosatti@redhat.com>
---
 kernel/ksm/ksm_main.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/kernel/ksm/ksm_main.c b/kernel/ksm/ksm_main.c
index 494ce3e..0878613 100644
--- a/kernel/ksm/ksm_main.c
+++ b/kernel/ksm/ksm_main.c
@@ -354,9 +354,11 @@ static void remove_mm_from_hash_and_tree(struct mm_struct *mm)
 	BUG_ON(!slot);
 
 	root_unstable_tree = RB_ROOT;
-	for (pages_count = 0; pages_count < slot->npages; ++pages_count)
+	for (pages_count = 0; pages_count < slot->npages; ++pages_count) {
+		cond_resched();
 		remove_page_from_tree(mm, slot->addr +
 				      pages_count * PAGE_SIZE);
+	}
 	list_del(&slot->link);
 }
 
-- 
1.6.3.rc4.29.g8146