Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-04 Thread Geliang Tang
On Fri, Dec 04, 2015 at 10:16:38AM -0600, Christoph Lameter wrote: > On Fri, 4 Dec 2015, Geliang Tang wrote: > > > On Thu, Dec 03, 2015 at 08:53:21AM -0600, Christoph Lameter wrote: > > > On Thu, 3 Dec 2015, Geliang Tang wrote: > > > > > > > while (nr_freed < tofree &&

Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-04 Thread Christoph Lameter
On Fri, 4 Dec 2015, Geliang Tang wrote: > On Thu, Dec 03, 2015 at 08:53:21AM -0600, Christoph Lameter wrote: > > On Thu, 3 Dec 2015, Geliang Tang wrote: > > > > > while (nr_freed < tofree && !list_empty(>slabs_free)) { > > > > > > spin_lock_irq(>list_lock); > > > - p =

Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-04 Thread Geliang Tang
On Thu, Dec 03, 2015 at 08:53:21AM -0600, Christoph Lameter wrote: > On Thu, 3 Dec 2015, Geliang Tang wrote: > > > while (nr_freed < tofree && !list_empty(>slabs_free)) { > > > > spin_lock_irq(>list_lock); > > - p = n->slabs_free.prev; > > - if (p ==

Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-04 Thread Geliang Tang
On Thu, Dec 03, 2015 at 08:53:21AM -0600, Christoph Lameter wrote: > On Thu, 3 Dec 2015, Geliang Tang wrote: > > > while (nr_freed < tofree && !list_empty(>slabs_free)) { > > > > spin_lock_irq(>list_lock); > > - p = n->slabs_free.prev; > > - if (p ==

Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-04 Thread Christoph Lameter
On Fri, 4 Dec 2015, Geliang Tang wrote: > On Thu, Dec 03, 2015 at 08:53:21AM -0600, Christoph Lameter wrote: > > On Thu, 3 Dec 2015, Geliang Tang wrote: > > > > > while (nr_freed < tofree && !list_empty(>slabs_free)) { > > > > > > spin_lock_irq(>list_lock); > > > - p =

Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-04 Thread Geliang Tang
On Fri, Dec 04, 2015 at 10:16:38AM -0600, Christoph Lameter wrote: > On Fri, 4 Dec 2015, Geliang Tang wrote: > > > On Thu, Dec 03, 2015 at 08:53:21AM -0600, Christoph Lameter wrote: > > > On Thu, 3 Dec 2015, Geliang Tang wrote: > > > > > > > while (nr_freed < tofree &&

Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-03 Thread Christoph Lameter
On Thu, 3 Dec 2015, Geliang Tang wrote: > while (nr_freed < tofree && !list_empty(>slabs_free)) { > > spin_lock_irq(>list_lock); > - p = n->slabs_free.prev; > - if (p == >slabs_free) { > + if (list_empty_careful(>slabs_free)) { We have

[PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-03 Thread Geliang Tang
To make the intention clearer, use list_empty_careful and list_last_entry in drain_freelist(). Signed-off-by: Geliang Tang --- mm/slab.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/mm/slab.c b/mm/slab.c index 5d5aa3b..925921e 100644 --- a/mm/slab.c +++ b/mm/slab.c

[PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-03 Thread Geliang Tang
To make the intention clearer, use list_empty_careful and list_last_entry in drain_freelist(). Signed-off-by: Geliang Tang --- mm/slab.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/mm/slab.c b/mm/slab.c index 5d5aa3b..925921e 100644 ---

Re: [PATCH v2] mm/slab.c: use list_{empty_careful,last_entry} in drain_freelist

2015-12-03 Thread Christoph Lameter
On Thu, 3 Dec 2015, Geliang Tang wrote: > while (nr_freed < tofree && !list_empty(>slabs_free)) { > > spin_lock_irq(>list_lock); > - p = n->slabs_free.prev; > - if (p == >slabs_free) { > + if (list_empty_careful(>slabs_free)) { We have