projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
8b32201
)
mm/hugetlb.c: add cond_resched_lock() in return_unused_surplus_pages()
author
Mizuma, Masayoshi
<
[email protected]
>
Fri, 18 Apr 2014 22:07:18 +0000
(15:07 -0700)
committer
Linus Torvalds
<
[email protected]
>
Fri, 18 Apr 2014 23:40:08 +0000
(16:40 -0700)
soft lockup in freeing gigantic hugepage fixed in commit
55f67141a892
"mm:
hugetlb: fix softlockup when a large number of hugepages are freed." can
happen in return_unused_surplus_pages(), so let's fix it.
Signed-off-by: Masayoshi Mizuma <
[email protected]
>
Signed-off-by: Naoya Horiguchi <
[email protected]
>
Cc: Joonsoo Kim <
[email protected]
>
Cc: Michal Hocko <
[email protected]
>
Cc: Aneesh Kumar <
[email protected]
>
Cc: KOSAKI Motohiro <
[email protected]
>
Cc: <
[email protected]
>
Signed-off-by: Andrew Morton <
[email protected]
>
Signed-off-by: Linus Torvalds <
[email protected]
>
mm/hugetlb.c
patch
|
blob
|
history
diff --git
a/mm/hugetlb.c
b/mm/hugetlb.c
index dd30f22b35e0c904b0fe9cfd4f550b810e1e7c22..246192929a2d5c4c4aa424e15c6a7b88e929e785 100644
(file)
--- a/
mm/hugetlb.c
+++ b/
mm/hugetlb.c
@@
-1172,6
+1172,7
@@
static void return_unused_surplus_pages(struct hstate *h,
while (nr_pages--) {
if (!free_pool_huge_page(h, &node_states[N_MEMORY], 1))
break;
+ cond_resched_lock(&hugetlb_lock);
}
}