diff options
author | Peng Zhang <zhangpeng.00@bytedance.com> | 2023-04-19 17:36:25 +0800 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2023-04-21 14:52:04 -0700 |
commit | 29ad6bb313487370f9dfe5441fc8982593b6384e (patch) | |
tree | 583845857f3e70bfd9c232f1a793f01cc03ed850 /lib/string.c | |
parent | 53156443a30368c0759c22e54a8d5cacc1b543cc (diff) |
maple_tree: fix allocation in mas_sparse_area()
In the case of reverse allocation, mas->index and mas->last do not point
to the correct allocation range, which will cause users to get incorrect
allocation results, so fix it. If the user does not use it in a specific
way, this bug will not be triggered.
This is a bug, but only VMA uses it now, the way VMA is used now will
not trigger it. There is a possibility that a user will trigger it in
the future.
Also re-check whether the size is still satisfied after the lower bound
was increased, which is a corner case and is incorrect in previous
versions.
Link: https://lkml.kernel.org/r/20230419093625.99201-1-zhangpeng.00@bytedance.com
Fixes: 54a611b60590 ("Maple Tree: add new data structure")
Signed-off-by: Peng Zhang <zhangpeng.00@bytedance.com>
Cc: Liam R. Howlett <Liam.Howlett@Oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'lib/string.c')
0 files changed, 0 insertions, 0 deletions