Johannes Weiner <hannes@xxxxxxxxxxx> writes: > Adding the number of swap pages to the byte limit of a memory control > group makes no sense. Convert the pages to bytes before adding them. > > The only user of this code is the OOM killer, and the way it is used > means that the error results in a higher OOM badness value. Since the > cgroup limit is the same for all tasks in the cgroup, the error should > have no practical impact at the moment. > > But let's not wait for future or changing users to trip over it. Thanks for the fix. > Signed-off-by: Johannes Weiner <hannes@xxxxxxxxxxx> Reviewed-by: Greg Thelen <gthelen@xxxxxxxxxx> > --- > mm/memcontrol.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -1552,8 +1552,9 @@ u64 mem_cgroup_get_limit(struct mem_cgro > u64 limit; > u64 memsw; > > - limit = res_counter_read_u64(&memcg->res, RES_LIMIT) + > - total_swap_pages; > + limit = res_counter_read_u64(&memcg->res, RES_LIMIT); > + limit += total_swap_pages << PAGE_SHIFT; > + > memsw = res_counter_read_u64(&memcg->memsw, RES_LIMIT); > /* > * If memsw is finite and limits the amount of swap space available -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>