|
@@ -2216,6 +2216,10 @@ static unsigned long set_max_huge_pages(struct hstate *h, unsigned long count,
|
|
* and reducing the surplus.
|
|
* and reducing the surplus.
|
|
*/
|
|
*/
|
|
spin_unlock(&hugetlb_lock);
|
|
spin_unlock(&hugetlb_lock);
|
|
|
|
+
|
|
|
|
+ /* yield cpu to avoid soft lockup */
|
|
|
|
+ cond_resched();
|
|
|
|
+
|
|
if (hstate_is_gigantic(h))
|
|
if (hstate_is_gigantic(h))
|
|
ret = alloc_fresh_gigantic_page(h, nodes_allowed);
|
|
ret = alloc_fresh_gigantic_page(h, nodes_allowed);
|
|
else
|
|
else
|