Hello Sergey, Sorry for slow response. I am overwhelmed with too much to do. :( On Thu, Mar 26, 2015 at 09:27:17AM +0900, Sergey Senozhatsky wrote: > On (03/25/15 13:25), akpm@xxxxxxxxxxxxxxxxxxxx wrote: > > The patch titled > > Subject: zsmalloc: remove extra cond_resched() in __zs_compact > > has been removed from the -mm tree. Its filename was > > zsmalloc-remove-extra-cond_resched-in-__zs_compact.patch > > > > This patch was dropped because it was withdrawn > > > > ------------------------------------------------------ > > From: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx> > > Subject: zsmalloc: remove extra cond_resched() in __zs_compact > > > > Do not perform cond_resched() before the busy compaction loop in > > __zs_compact(), because this loop does it when needed. > > > > Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx> > > Cc: Minchan Kim <minchan@xxxxxxxxxx> > > Cc: Nitin Gupta <ngupta@xxxxxxxxxx> > > Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > > --- > > > > mm/zsmalloc.c | 2 -- > > 1 file changed, 2 deletions(-) > > > > diff -puN mm/zsmalloc.c~zsmalloc-remove-extra-cond_resched-in-__zs_compact mm/zsmalloc.c > > --- a/mm/zsmalloc.c~zsmalloc-remove-extra-cond_resched-in-__zs_compact > > +++ a/mm/zsmalloc.c > > @@ -1717,8 +1717,6 @@ static unsigned long __zs_compact(struct > > struct page *dst_page = NULL; > > unsigned long nr_total_migrated = 0; > > > > - cond_resched(); > > - > > spin_lock(&class->lock); > > while ((src_page = isolate_source_page(class))) { > > > > Hello, > > Minchan, did I miss your NACK on this patch? or could you please ACK it? I saw this patch yesterday night but didn't acked intentionally because I was not sure and too tired to see the code so I postpone. If we removed cond_resched out of outer loop(ie, your patch), we lose the chance to reschedule if alloc_target_page fails(ie, there is no zspage in ZS_ALMOST_FULL and ZS_ALMOST_EMPTY). It might be not rare event if we does compation successfully for a size_class. However, with next coming higher size_class for __zs_compact, we will encounter cond_resched during compaction. So, I am happy to ack. :) Acked-by: Minchan Kim <minchan@xxxxxxxxxx> > > -ss -- Kind regards, Minchan Kim -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>