commit | 252e5c6e2e5b4557599ef86ea5d02b0395e9056c | [log] [tgz] |
---|---|---|
author | zijun_hu <[email protected]> | Fri Oct 07 16:57:26 2016 -0700 |
committer | Linus Torvalds <[email protected]> | Fri Oct 07 18:46:26 2016 -0700 |
tree | c77225eca104a771803fc1c23c62664e1ed8a889 | |
parent | 7c5f64f84483bd13886348edda8b3e7b799a7fdb [diff] |
mm/vmalloc.c: fix align value calculation error It causes double align requirement for __get_vm_area_node() if parameter size is power of 2 and VM_IOREMAP is set in parameter flags, for example size=0x10000 -> fls_long(0x10000)=17 -> align=0x20000 get_count_order_long() is implemented and can be used instead of fls_long() for fixing the bug, for example size=0x10000 -> get_count_order_long(0x10000)=16 -> align=0x10000 [[email protected]: s/get_order_long()/get_count_order_long()/] [[email protected]: fixes] Link: http://lkml.kernel.org/r/[email protected] [[email protected]: locate get_count_order_long() next to get_count_order()] [[email protected]: move get_count_order[_long] definitions to pick up fls_long()] [[email protected]: move out get_count_order[_long]() from __KERNEL__ scope] Link: http://lkml.kernel.org/r/[email protected] Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: zijun_hu <[email protected]> Cc: Tejun Heo <[email protected]> Cc: Johannes Weiner <[email protected]> Cc: Minchan Kim <[email protected]> Cc: David Rientjes <[email protected]> Signed-off-by: zijun_hu <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>