Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-30 Thread Michal Hocko
On Thu 30-11-17 20:57:43, Michal Hocko wrote: > On Thu 30-11-17 11:35:11, Mike Kravetz wrote: > > On 11/29/2017 11:57 PM, Michal Hocko wrote: > > > On Wed 29-11-17 11:52:53, Mike Kravetz wrote: > > >> On 11/29/2017 01:22 AM, Michal Hocko wrote: > > >>> What about this on top. I haven't tested this

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-30 Thread Michal Hocko
On Thu 30-11-17 11:35:11, Mike Kravetz wrote: > On 11/29/2017 11:57 PM, Michal Hocko wrote: > > On Wed 29-11-17 11:52:53, Mike Kravetz wrote: > >> On 11/29/2017 01:22 AM, Michal Hocko wrote: > >>> What about this on top. I haven't tested this yet though. > >> > >> Yes, this would work. > >> > >> Ho

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-30 Thread Mike Kravetz
On 11/29/2017 11:57 PM, Michal Hocko wrote: > On Wed 29-11-17 11:52:53, Mike Kravetz wrote: >> On 11/29/2017 01:22 AM, Michal Hocko wrote: >>> What about this on top. I haven't tested this yet though. >> >> Yes, this would work. >> >> However, I think a simple modification to your previous free_hug

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-29 Thread Michal Hocko
On Wed 29-11-17 11:52:53, Mike Kravetz wrote: > On 11/29/2017 01:22 AM, Michal Hocko wrote: > > What about this on top. I haven't tested this yet though. > > Yes, this would work. > > However, I think a simple modification to your previous free_huge_page > changes would make this unnecessary. I

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-29 Thread Mike Kravetz
On 11/29/2017 01:22 AM, Michal Hocko wrote: > What about this on top. I haven't tested this yet though. Yes, this would work. However, I think a simple modification to your previous free_huge_page changes would make this unnecessary. I was confused in your previous patch because you decremented

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-29 Thread Michal Hocko
On Wed 29-11-17 10:22:34, Michal Hocko wrote: > What about this on top. I haven't tested this yet though. OK, it seem to work: root@test1:~# echo 1 > /proc/sys/vm/nr_hugepages root@test1:~# echo 1 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_overcommit_hugepages root@test1:~# grep . /sys/devic

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-29 Thread Michal Hocko
On Tue 28-11-17 15:12:11, Michal Hocko wrote: [...] > +/* > + * Internal hugetlb specific page flag. Do not use outside of the hugetlb > + * code > + */ > +static inline bool PageHugeTemporary(struct page *page) > +{ > + if (!PageHuge(page)) > + return false; > + > + return page

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-29 Thread Michal Hocko
On Wed 29-11-17 10:22:34, Michal Hocko wrote: > What about this on top. I haven't tested this yet though. > --- We will need to drop surplus_huge_pages_node handling from the free path obviously as well diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 1be43563e226..756833f9ef8b 100644 --- a/mm/huge

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-29 Thread Michal Hocko
What about this on top. I haven't tested this yet though. --- diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h index 1b6d7783c717..f5fcd4e355dc 100644 --- a/include/linux/hugetlb.h +++ b/include/linux/hugetlb.h @@ -119,6 +119,7 @@ long hugetlb_unreserve_pages(struct inode *inode, long

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-28 Thread Michal Hocko
On Tue 28-11-17 17:39:50, Mike Kravetz wrote: > On 11/28/2017 06:12 AM, Michal Hocko wrote: > > From: Michal Hocko > > > > hugepage migration relies on __alloc_buddy_huge_page to get a new page. > > This has 2 main disadvantages. > > 1) it doesn't allow to migrate any huge page if the pool is use

Re: [PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-28 Thread Mike Kravetz
On 11/28/2017 06:12 AM, Michal Hocko wrote: > From: Michal Hocko > > hugepage migration relies on __alloc_buddy_huge_page to get a new page. > This has 2 main disadvantages. > 1) it doesn't allow to migrate any huge page if the pool is used > completely which is not an exceptional case as the poo

[PATCH RFC 2/2] mm, hugetlb: do not rely on overcommit limit during migration

2017-11-28 Thread Michal Hocko
From: Michal Hocko hugepage migration relies on __alloc_buddy_huge_page to get a new page. This has 2 main disadvantages. 1) it doesn't allow to migrate any huge page if the pool is used completely which is not an exceptional case as the pool is static and unused memory is just wasted. 2) it lead