Commit f6a202f3 authored by Ilya Leoshkevich's avatar Ilya Leoshkevich Committed by Andrew Morton

kmsan: use ALIGN_DOWN() in kmsan_get_metadata()

Improve the readability by replacing the custom aligning logic with
ALIGN_DOWN().  Unlike other places where a similar sequence is used, there
is no size parameter that needs to be adjusted, so the standard macro
fits.

Link: https://lkml.kernel.org/r/20240621113706.315500-15-iii@linux.ibm.comSigned-off-by: default avatarIlya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: default avatarAlexander Potapenko <glider@google.com>
Cc: Alexander Gordeev <agordeev@linux.ibm.com>
Cc: Christian Borntraeger <borntraeger@linux.ibm.com>
Cc: Christoph Lameter <cl@linux.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Hyeonggon Yoo <42.hyeyoo@gmail.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: <kasan-dev@googlegroups.com>
Cc: Marco Elver <elver@google.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Steven Rostedt (Google) <rostedt@goodmis.org>
Cc: Sven Schnelle <svens@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent f4168171
...@@ -123,14 +123,12 @@ struct shadow_origin_ptr kmsan_get_shadow_origin_ptr(void *address, u64 size, ...@@ -123,14 +123,12 @@ struct shadow_origin_ptr kmsan_get_shadow_origin_ptr(void *address, u64 size,
*/ */
void *kmsan_get_metadata(void *address, bool is_origin) void *kmsan_get_metadata(void *address, bool is_origin)
{ {
u64 addr = (u64)address, pad, off; u64 addr = (u64)address, off;
struct page *page; struct page *page;
void *ret; void *ret;
if (is_origin && !IS_ALIGNED(addr, KMSAN_ORIGIN_SIZE)) { if (is_origin)
pad = addr % KMSAN_ORIGIN_SIZE; addr = ALIGN_DOWN(addr, KMSAN_ORIGIN_SIZE);
addr -= pad;
}
address = (void *)addr; address = (void *)addr;
if (kmsan_internal_is_vmalloc_addr(address) || if (kmsan_internal_is_vmalloc_addr(address) ||
kmsan_internal_is_module_addr(address)) kmsan_internal_is_module_addr(address))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment