Loading mm/compaction.c +4 −2 Original line number Diff line number Diff line Loading @@ -1157,7 +1157,9 @@ static bool suitable_migration_target(struct compact_control *cc, static inline unsigned int freelist_scan_limit(struct compact_control *cc) { return (COMPACT_CLUSTER_MAX >> cc->fast_search_fail) + 1; return (COMPACT_CLUSTER_MAX >> min((unsigned short)(BITS_PER_LONG - 1), cc->fast_search_fail)) + 1; } /* Loading Loading @@ -1363,7 +1365,7 @@ fast_isolate_freepages(struct compact_control *cc) count_compact_events(COMPACTISOLATED, nr_isolated); } else { /* If isolation fails, abort the search */ order = -1; order = cc->search_order + 1; page = NULL; } } Loading include/linux/list.h +1 −1 File changed.Contains only whitespace changes. Show changes Loading
mm/compaction.c +4 −2 Original line number Diff line number Diff line Loading @@ -1157,7 +1157,9 @@ static bool suitable_migration_target(struct compact_control *cc, static inline unsigned int freelist_scan_limit(struct compact_control *cc) { return (COMPACT_CLUSTER_MAX >> cc->fast_search_fail) + 1; return (COMPACT_CLUSTER_MAX >> min((unsigned short)(BITS_PER_LONG - 1), cc->fast_search_fail)) + 1; } /* Loading Loading @@ -1363,7 +1365,7 @@ fast_isolate_freepages(struct compact_control *cc) count_compact_events(COMPACTISOLATED, nr_isolated); } else { /* If isolation fails, abort the search */ order = -1; order = cc->search_order + 1; page = NULL; } } Loading