Messages in this thread Patch in this message | | | From | Greg Kroah-Hartman <> | Subject | [PATCH 4.4 13/15] mm/mempool: avoid KASAN marking mempool poison checks as use-after-free | Date | Fri, 11 Aug 2017 15:02:27 -0700 |
| |
4.4-stable review patch. If anyone has any objections, please let me know.
------------------
From: Matthew Dawson <matthew@mjdsystems.ca>
commit 7640131032db9118a78af715ac77ba2debeeb17c upstream.
When removing an element from the mempool, mark it as unpoisoned in KASAN before verifying its contents for SLUB/SLAB debugging. Otherwise KASAN will flag the reads checking the element use-after-free writes as use-after-free reads.
Signed-off-by: Matthew Dawson <matthew@mjdsystems.ca> Acked-by: Andrey Ryabinin <aryabinin@virtuozzo.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Andrii Bordunov <aborduno@cisco.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--- mm/mempool.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
--- a/mm/mempool.c +++ b/mm/mempool.c @@ -135,8 +135,8 @@ static void *remove_element(mempool_t *p void *element = pool->elements[--pool->curr_nr]; BUG_ON(pool->curr_nr < 0); - check_element(pool, element); kasan_unpoison_element(pool, element); + check_element(pool, element); return element; }
| |