All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list
@ 2016-06-08  7:00 ` roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w
  0 siblings, 0 replies; 7+ messages in thread
From: roy.qing.li @ 2016-06-08  7:00 UTC (permalink / raw)
  To: cgroups, linux-mm; +Cc: hannes, mhocko, vdavydov

From: Li RongQing <roy.qing.li@gmail.com>

when call uncharge_list, if a page is transparent huge, and not need to
BUG_ON about non-transparent huge, since nobody should be be seeing the
page at this stage and this page cannot be raced with a THP split up

Signed-off-by: Li RongQing <roy.qing.li@gmail.com>
---
 mm/memcontrol.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 4d9a215..d7a56f1 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -5457,7 +5457,6 @@ static void uncharge_list(struct list_head *page_list)
 
 		if (PageTransHuge(page)) {
 			nr_pages <<= compound_order(page);
-			VM_BUG_ON_PAGE(!PageTransHuge(page), page);
 			nr_huge += nr_pages;
 		}
 
-- 
2.1.4

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list
@ 2016-06-08  7:00 ` roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w
  0 siblings, 0 replies; 7+ messages in thread
From: roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w @ 2016-06-08  7:00 UTC (permalink / raw)
  To: cgroups-u79uwXL29TY76Z2rM5mHXA, linux-mm-Bw31MaZKKs3YtjvyW6yDsg
  Cc: hannes-druUgvl0LCNAfugRpC6u6w, mhocko-DgEjT+Ai2ygdnm+yROfE0A,
	vdavydov-5HdwGun5lf+gSpxsJD1C4w

From: Li RongQing <roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>

when call uncharge_list, if a page is transparent huge, and not need to
BUG_ON about non-transparent huge, since nobody should be be seeing the
page at this stage and this page cannot be raced with a THP split up

Signed-off-by: Li RongQing <roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 mm/memcontrol.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 4d9a215..d7a56f1 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -5457,7 +5457,6 @@ static void uncharge_list(struct list_head *page_list)
 
 		if (PageTransHuge(page)) {
 			nr_pages <<= compound_order(page);
-			VM_BUG_ON_PAGE(!PageTransHuge(page), page);
 			nr_huge += nr_pages;
 		}
 
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list
@ 2016-06-08  7:25   ` Michal Hocko
  0 siblings, 0 replies; 7+ messages in thread
From: Michal Hocko @ 2016-06-08  7:25 UTC (permalink / raw)
  To: hannes; +Cc: cgroups, linux-mm, roy.qing.li, vdavydov

On Wed 08-06-16 15:00:48, roy.qing.li@gmail.com wrote:
> From: Li RongQing <roy.qing.li@gmail.com>
> 
> when call uncharge_list, if a page is transparent huge, and not need to
> BUG_ON about non-transparent huge, since nobody should be be seeing the
> page at this stage and this page cannot be raced with a THP split up

Johannes do you remember why you have kept this bug on even after
0a31bc97c80c ("mm: memcontrol: rewrite uncharge API")?

> Signed-off-by: Li RongQing <roy.qing.li@gmail.com>
> ---
>  mm/memcontrol.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> index 4d9a215..d7a56f1 100644
> --- a/mm/memcontrol.c
> +++ b/mm/memcontrol.c
> @@ -5457,7 +5457,6 @@ static void uncharge_list(struct list_head *page_list)
>  
>  		if (PageTransHuge(page)) {
>  			nr_pages <<= compound_order(page);
> -			VM_BUG_ON_PAGE(!PageTransHuge(page), page);
>  			nr_huge += nr_pages;
>  		}
>  
> -- 
> 2.1.4

-- 
Michal Hocko
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list
@ 2016-06-08  7:25   ` Michal Hocko
  0 siblings, 0 replies; 7+ messages in thread
From: Michal Hocko @ 2016-06-08  7:25 UTC (permalink / raw)
  To: hannes-druUgvl0LCNAfugRpC6u6w
  Cc: cgroups-u79uwXL29TY76Z2rM5mHXA, linux-mm-Bw31MaZKKs3YtjvyW6yDsg,
	roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w,
	vdavydov-5HdwGun5lf+gSpxsJD1C4w

On Wed 08-06-16 15:00:48, roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org wrote:
> From: Li RongQing <roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> 
> when call uncharge_list, if a page is transparent huge, and not need to
> BUG_ON about non-transparent huge, since nobody should be be seeing the
> page at this stage and this page cannot be raced with a THP split up

Johannes do you remember why you have kept this bug on even after
0a31bc97c80c ("mm: memcontrol: rewrite uncharge API")?

> Signed-off-by: Li RongQing <roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> ---
>  mm/memcontrol.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> index 4d9a215..d7a56f1 100644
> --- a/mm/memcontrol.c
> +++ b/mm/memcontrol.c
> @@ -5457,7 +5457,6 @@ static void uncharge_list(struct list_head *page_list)
>  
>  		if (PageTransHuge(page)) {
>  			nr_pages <<= compound_order(page);
> -			VM_BUG_ON_PAGE(!PageTransHuge(page), page);
>  			nr_huge += nr_pages;
>  		}
>  
> -- 
> 2.1.4

-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list
  2016-06-08  7:25   ` Michal Hocko
  (?)
@ 2016-06-08 14:58   ` Johannes Weiner
  2016-06-08 15:06       ` Michal Hocko
  -1 siblings, 1 reply; 7+ messages in thread
From: Johannes Weiner @ 2016-06-08 14:58 UTC (permalink / raw)
  To: Michal Hocko; +Cc: cgroups, linux-mm, roy.qing.li, vdavydov

On Wed, Jun 08, 2016 at 09:25:54AM +0200, Michal Hocko wrote:
> On Wed 08-06-16 15:00:48, roy.qing.li@gmail.com wrote:
> > From: Li RongQing <roy.qing.li@gmail.com>
> > 
> > when call uncharge_list, if a page is transparent huge, and not need to
> > BUG_ON about non-transparent huge, since nobody should be be seeing the
> > page at this stage and this page cannot be raced with a THP split up
> 
> Johannes do you remember why you have kept this bug on even after
> 0a31bc97c80c ("mm: memcontrol: rewrite uncharge API")?

No, I just copied it over without thinking too much about it. That
patch was pretty drastic, so why not keep the sanity checks in case
one of the many assumptions it made were flawed...

But it's probably okay to drop it at this point.

> > Signed-off-by: Li RongQing <roy.qing.li@gmail.com>

Acked-by: Johannes Weiner <hannes@cmpxchg.org>

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list
@ 2016-06-08 15:06       ` Michal Hocko
  0 siblings, 0 replies; 7+ messages in thread
From: Michal Hocko @ 2016-06-08 15:06 UTC (permalink / raw)
  To: Johannes Weiner; +Cc: cgroups, linux-mm, roy.qing.li, vdavydov

On Wed 08-06-16 10:58:33, Johannes Weiner wrote:
> On Wed, Jun 08, 2016 at 09:25:54AM +0200, Michal Hocko wrote:
> > On Wed 08-06-16 15:00:48, roy.qing.li@gmail.com wrote:
> > > From: Li RongQing <roy.qing.li@gmail.com>
> > > 
> > > when call uncharge_list, if a page is transparent huge, and not need to
> > > BUG_ON about non-transparent huge, since nobody should be be seeing the
> > > page at this stage and this page cannot be raced with a THP split up
> > 
> > Johannes do you remember why you have kept this bug on even after
> > 0a31bc97c80c ("mm: memcontrol: rewrite uncharge API")?
> 
> No, I just copied it over without thinking too much about it. That
> patch was pretty drastic, so why not keep the sanity checks in case
> one of the many assumptions it made were flawed...

Yeah the VM_BUG_ON made sense before because the charge could have gone
away while the page could be visible, thus split.
 
> But it's probably okay to drop it at this point.

Thanks for double checking. I was just not sure I didn't miss anything.
I am always a bit nervous when bug_ons a removed.

> > > Signed-off-by: Li RongQing <roy.qing.li@gmail.com>
> 
> Acked-by: Johannes Weiner <hannes@cmpxchg.org>

With the reference to the rewrite which made it pointless
Acked-by: Michal Hocko <mhocko@suse.com>
-- 
Michal Hocko
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list
@ 2016-06-08 15:06       ` Michal Hocko
  0 siblings, 0 replies; 7+ messages in thread
From: Michal Hocko @ 2016-06-08 15:06 UTC (permalink / raw)
  To: Johannes Weiner
  Cc: cgroups-u79uwXL29TY76Z2rM5mHXA, linux-mm-Bw31MaZKKs3YtjvyW6yDsg,
	roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w,
	vdavydov-5HdwGun5lf+gSpxsJD1C4w

On Wed 08-06-16 10:58:33, Johannes Weiner wrote:
> On Wed, Jun 08, 2016 at 09:25:54AM +0200, Michal Hocko wrote:
> > On Wed 08-06-16 15:00:48, roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org wrote:
> > > From: Li RongQing <roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> > > 
> > > when call uncharge_list, if a page is transparent huge, and not need to
> > > BUG_ON about non-transparent huge, since nobody should be be seeing the
> > > page at this stage and this page cannot be raced with a THP split up
> > 
> > Johannes do you remember why you have kept this bug on even after
> > 0a31bc97c80c ("mm: memcontrol: rewrite uncharge API")?
> 
> No, I just copied it over without thinking too much about it. That
> patch was pretty drastic, so why not keep the sanity checks in case
> one of the many assumptions it made were flawed...

Yeah the VM_BUG_ON made sense before because the charge could have gone
away while the page could be visible, thus split.
 
> But it's probably okay to drop it at this point.

Thanks for double checking. I was just not sure I didn't miss anything.
I am always a bit nervous when bug_ons a removed.

> > > Signed-off-by: Li RongQing <roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> 
> Acked-by: Johannes Weiner <hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org>

With the reference to the rewrite which made it pointless
Acked-by: Michal Hocko <mhocko-IBi9RG/b67k@public.gmane.org>
-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-06-08 15:06 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-08  7:00 [PATCH] mm: memcontrol: remove BUG_ON in uncharge_list roy.qing.li
2016-06-08  7:00 ` roy.qing.li-Re5JQEeQqe8AvxtiuMwx3w
2016-06-08  7:25 ` Michal Hocko
2016-06-08  7:25   ` Michal Hocko
2016-06-08 14:58   ` Johannes Weiner
2016-06-08 15:06     ` Michal Hocko
2016-06-08 15:06       ` Michal Hocko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.