2012/7/17 Michal Nazarewicz <min...@mina86.com>: > On Tue, 17 Jul 2012 14:33:34 +0200, Joonsoo Kim <js1...@gmail.com> wrote: >> >> migrate_pages() would return positive value in some failure case, >> so 'ret > 0 ? 0 : ret' may be wrong. >> This fix it and remove one dead statement. > > > How about the following message: > > ------------------- >8 --------------------------------------------------- > migrate_pages() can return positive value while at the same time emptying > the list of pages it was called with. Such situation means that it went > through all the pages on the list some of which failed to be migrated. > > If that happens, __alloc_contig_migrate_range()'s loop may finish without > "++tries == 5" never being checked. This in turn means that at the end > of the function, ret may have a positive value, which should be treated > as an error. > > This patch changes __alloc_contig_migrate_range() so that the return > statement converts positive ret value into -EBUSY error. > ------------------- >8 ---------------------------------------------------
It's good. I will resend patch replacing my comment with yours. Thanks for help. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/