Re: [PATCH v2] mm/compaction : fix the wrong return value for isolate_migratepages()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



hi,
Why?

Returning ISOLATE_SUCCESS means that we fall through. This means busy
work in migrate_pages(), updating list accounting and the list. It's
wasteful but is it functionally incorrect? What problem did you observe?
there may are many times the cc->migratepages is zero, but the return value is ISOLATE_SUCCESS.


If this is simply a performance issue then minimally COMPACTBLOCKS
yes, My concern is the performance.

the comment of ISOLATE_NONE makes me confused.  :(

If you think we should update the COMPACTBLOCK in this case, my patch is wrong.


still needs to be updated, we still want to see the tracepoint etc. To
ok.
preserve that, I would suggest as an alternative to leave it returning
ISOLATE_SUCCESS but move


                err = migrate_pages(&cc->migratepages, compaction_alloc,
                                 (unsigned long)cc, false,
                                 cc->sync ? MIGRATE_SYNC_LIGHT : MIGRATE_ASYNC);
                 update_nr_listpages(cc);

inside a if (nr_migrate) check to avoid some overhead.

thanks.
Huang Shijie


--
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/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]