• SeongJae Park's avatar
    mm/damon/vaddr: support DAMON-based Operation Schemes · 6dea8add
    SeongJae Park authored
    This makes DAMON's default primitives for virtual address spaces to
    support DAMON-based Operation Schemes (DAMOS) by implementing actions
    application functions and registering it to the monitoring context.  The
    implementation simply links 'madvise()' for related DAMOS actions.  That
    is, 'madvise(MADV_WILLNEED)' is called for 'WILLNEED' DAMOS action and
    similar for other actions ('COLD', 'PAGEOUT', 'HUGEPAGE', 'NOHUGEPAGE').
    
    So, the kernel space DAMON users can now use the DAMON-based
    optimizations with only small amount of code.
    
    Link: https://lkml.kernel.org/r/20211001125604.29660-4-sj@kernel.orgSigned-off-by: default avatarSeongJae Park <sj@kernel.org>
    Cc: Amit Shah <amit@kernel.org>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: David Hildenbrand <david@redhat.com>
    Cc: David Rienjes <rientjes@google.com>
    Cc: David Woodhouse <dwmw@amazon.com>
    Cc: Greg Thelen <gthelen@google.com>
    Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com>
    Cc: Jonathan Corbet <corbet@lwn.net>
    Cc: Leonard Foerster <foersleo@amazon.de>
    Cc: Marco Elver <elver@google.com>
    Cc: Markus Boehme <markubo@amazon.de>
    Cc: Shakeel Butt <shakeelb@google.com>
    Cc: Shuah Khan <shuah@kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    6dea8add
vaddr.c 17.7 KB