Kefeng Wang
b66d00dfeb
mm: memory-failure: make action_result() return int
...
Check mf_result in action_result(), only return 0 when MF_RECOVERED,
or return -EBUSY, which will simplify code a bit.
[wangkefeng.wang@huawei.com: v2]
Link: https://lkml.kernel.org/r/20221024035138.99119-1-wangkefeng.wang@huawei.com
Link: https://lkml.kernel.org/r/20221021084611.53765-3-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com >
Reviewed-by: Miaohe Lin <linmiaohe@huawei.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:21 -08:00
Kefeng Wang
183a7c5d15
mm: memory-failure: avoid pfn_valid() twice in soft_offline_page()
...
Simplify WARN_ON_ONCE(flags & MF_COUNT_INCREASED) under !pfn_valid().
Link: https://lkml.kernel.org/r/20221021084611.53765-2-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com >
Reviewed-by: Miaohe Lin <linmiaohe@huawei.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:21 -08:00
Kefeng Wang
b5f1fc98c6
mm: memory-failure: make put_ref_page() more useful
...
Pass pfn/flags to put_ref_page(), then check MF_COUNT_INCREASED and drop
refcount to make the code look cleaner.
Link: https://lkml.kernel.org/r/20221021084611.53765-1-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com >
Reviewed-by: Miaohe Lin <linmiaohe@huawei.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:20 -08:00
Miguel Ojeda
f39556bc25
compiler-gcc: document minimum version for __no_sanitize_coverage__
...
The attribute was added in GCC 12.1.
This will simplify future cleanups, and is closer to what we do
in `compiler_attributes.h`.
Link: https://godbolt.org/z/MGbT76j6G
Link: https://lkml.kernel.org/r/20221021115956.9947-5-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org >
Acked-by: Marco Elver <elver@google.com >
Reviewed-by: Nathan Chancellor <nathan@kernel.org >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Konovalov <andreyknvl@gmail.com >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Dan Li <ashimida@linux.alibaba.com >
Cc: Kees Cook <keescook@chromium.org >
Cc: Kumar Kartikeya Dwivedi <memxor@gmail.com >
Cc: Nick Desaulniers <ndesaulniers@google.com >
Cc: Uros Bizjak <ubizjak@gmail.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:20 -08:00
Miguel Ojeda
689540cbda
compiler-gcc: remove attribute support check for __no_sanitize_undefined__
...
The attribute was added in GCC 4.9, while the minimum GCC version
supported by the kernel is GCC 5.1.
Therefore, remove the check.
Link: https://godbolt.org/z/GrMeo6fYr
Link: https://lkml.kernel.org/r/20221021115956.9947-4-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org >
Reviewed-by: Nathan Chancellor <nathan@kernel.org >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Konovalov <andreyknvl@gmail.com >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Dan Li <ashimida@linux.alibaba.com >
Cc: Kees Cook <keescook@chromium.org >
Cc: Kumar Kartikeya Dwivedi <memxor@gmail.com >
Cc: Marco Elver <elver@google.com >
Cc: Nick Desaulniers <ndesaulniers@google.com >
Cc: Uros Bizjak <ubizjak@gmail.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:20 -08:00
Miguel Ojeda
095ac0763a
compiler-gcc: remove attribute support check for __no_sanitize_thread__
...
The attribute was added in GCC 5.1, which matches the minimum GCC version
supported by the kernel.
Therefore, remove the check.
Link: https://godbolt.org/z/vbxKejxbx
Link: https://lkml.kernel.org/r/20221021115956.9947-3-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org >
Acked-by: Marco Elver <elver@google.com >
Reviewed-by: Nathan Chancellor <nathan@kernel.org >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Konovalov <andreyknvl@gmail.com >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Dan Li <ashimida@linux.alibaba.com >
Cc: Kees Cook <keescook@chromium.org >
Cc: Kumar Kartikeya Dwivedi <memxor@gmail.com >
Cc: Nick Desaulniers <ndesaulniers@google.com >
Cc: Uros Bizjak <ubizjak@gmail.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:20 -08:00
Miguel Ojeda
ae37a9a2c2
compiler-gcc: remove attribute support check for __no_sanitize_address__
...
The attribute was added in GCC 4.8, while the minimum GCC version
supported by the kernel is GCC 5.1.
Therefore, remove the check.
Link: https://godbolt.org/z/84v56vcn8
Link: https://lkml.kernel.org/r/20221021115956.9947-2-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org >
Reviewed-by: Nathan Chancellor <nathan@kernel.org >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Konovalov <andreyknvl@gmail.com >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Dan Li <ashimida@linux.alibaba.com >
Cc: Kees Cook <keescook@chromium.org >
Cc: Kumar Kartikeya Dwivedi <memxor@gmail.com >
Cc: Marco Elver <elver@google.com >
Cc: Nick Desaulniers <ndesaulniers@google.com >
Cc: Uros Bizjak <ubizjak@gmail.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:20 -08:00
Miguel Ojeda
6e2be1f2eb
compiler-gcc: be consistent with underscores use for no_sanitize
...
Patch series "compiler-gcc: be consistent with underscores use for
`no_sanitize`".
This patch (of 5):
Other macros that define shorthands for attributes in e.g.
`compiler_attributes.h` and elsewhere use underscores.
Link: https://lkml.kernel.org/r/20221021115956.9947-1-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org >
Reviewed-by: Nathan Chancellor <nathan@kernel.org >
Cc: Marco Elver <elver@google.com >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Konovalov <andreyknvl@gmail.com >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Dan Li <ashimida@linux.alibaba.com >
Cc: Kees Cook <keescook@chromium.org >
Cc: Kumar Kartikeya Dwivedi <memxor@gmail.com >
Cc: Nick Desaulniers <ndesaulniers@google.com >
Cc: Uros Bizjak <ubizjak@gmail.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:20 -08:00
Peter Xu
4781593d5d
mm/hugetlb: unify clearing of RestoreReserve for private pages
...
A trivial cleanup to move clearing of RestoreReserve into adding anon rmap
of private hugetlb mappings. It matches with the shared mappings where we
only clear the bit when adding into page cache, rather than spreading it
around the code paths.
Link: https://lkml.kernel.org/r/20221020193832.776173-1-peterx@redhat.com
Signed-off-by: Peter Xu <peterx@redhat.com >
Reviewed-by: Mike Kravetz <mike.kravetz@oracle.com >
Cc: Muchun Song <songmuchun@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:19 -08:00
Kefeng Wang
cc03817c0e
amdgpu: use VM_ACCESS_FLAGS
...
Simplify VM_READ|VM_WRITE|VM_EXEC with VM_ACCESS_FLAGS.
Link: https://lkml.kernel.org/r/20221019034945.93081-6-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com >
Cc: David Airlie <airlied@gmail.com >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: Dinh Nguyen <dinguyen@kernel.org >
Cc: Jarkko Sakkinen <jarkko@kernel.org >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:19 -08:00
Kefeng Wang
d7e679b6f9
mm: debug_vm_pgtable: use VM_ACCESS_FLAGS
...
Directly use VM_ACCESS_FLAGS instead VMFLAGS.
Link: https://lkml.kernel.org/r/20221019034945.93081-5-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: David Airlie <airlied@gmail.com >
Cc: Dinh Nguyen <dinguyen@kernel.org >
Cc: Jarkko Sakkinen <jarkko@kernel.org >
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:19 -08:00
Kefeng Wang
e39ee675f4
mm: mprotect: use VM_ACCESS_FLAGS
...
Simplify VM_READ|VM_WRITE|VM_EXEC with VM_ACCESS_FLAGS.
Link: https://lkml.kernel.org/r/20221019034945.93081-4-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: David Airlie <airlied@gmail.com >
Cc: Dinh Nguyen <dinguyen@kernel.org >
Cc: Jarkko Sakkinen <jarkko@kernel.org >
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:19 -08:00
Kefeng Wang
4f20566f5c
x86/sgx: use VM_ACCESS_FLAGS
...
Simplify VM_READ|VM_WRITE|VM_EXEC with VM_ACCESS_FLAGS.
Link: https://lkml.kernel.org/r/20221019034945.93081-3-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Jarkko Sakkinen <jarkko@kernel.org >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: David Airlie <airlied@gmail.com >
Cc: Dinh Nguyen <dinguyen@kernel.org >
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:19 -08:00
Kefeng Wang
93d38b72e4
nios2: remove unused INIT_MMAP
...
Patch series "mm: cleanup with VM_ACCESS_FLAGS".
This patch (of 5):
It seems that INIT_MMAP is gone in 2.4.10, not sure, anyways, it is
useless now, kill it.
Link: https://lkml.kernel.org/r/20221019034945.93081-1-wangkefeng.wang@huawei.com
Link: https://lkml.kernel.org/r/20221019034945.93081-2-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Dinh Nguyen <dinguyen@kernel.org >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: Jarkko Sakkinen <jarkko@kernel.org >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Alex Deucher <alexander.deucher@amd.com >
Cc: "Christian König" <christian.koenig@amd.com >
Cc: Daniel Vetter <daniel@ffwll.ch >
Cc: David Airlie <airlied@gmail.com >
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:19 -08:00
Matthew Wilcox (Oracle)
c5255b421f
mm: remove FGP_HEAD
...
This is no longer used; all callers have been converted to use folios
instead. Somehow this manages to save 11 bytes of text.
Link: https://lkml.kernel.org/r/20221019183332.2802139-5-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:18 -08:00
Matthew Wilcox (Oracle)
524984ff66
mm: convert find_get_incore_page() to filemap_get_incore_folio()
...
Return the containing folio instead of the precise page. One of the
callers wants the folio and the other can do the folio->page conversion
itself. Nets 442 bytes of text size reduction, 478 bytes removed and 36
bytes added.
Link: https://lkml.kernel.org/r/20221019183332.2802139-4-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:18 -08:00
Matthew Wilcox (Oracle)
dd8095b15a
mm/swap: convert find_get_incore_page to use folios
...
Eliminates a use of FGP_HEAD and saves 35 bytes of text.
Link: https://lkml.kernel.org/r/20221019183332.2802139-3-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:18 -08:00
Matthew Wilcox (Oracle)
9ee2c08627
mm/huge_memory: convert split_huge_pages_in_file() to use a folio
...
Patch series "Remove FGP_HEAD flag".
We have just two users left of the FGP_HEAD flag and both of them are
better off; sometimes startlingly so as a result of conversion to use
folios.
This patch (of 4):
Removes a number of calls to compound_head() and a call to
pagecache_get_page().
Link: https://lkml.kernel.org/r/20221019183332.2802139-1-willy@infradead.org
Link: https://lkml.kernel.org/r/20221019183332.2802139-2-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:18 -08:00
Kefeng Wang
e025ab842e
mm: remove kern_addr_valid() completely
...
Most architectures (except arm64/x86/sparc) simply return 1 for
kern_addr_valid(), which is only used in read_kcore(), and it calls
copy_from_kernel_nofault() which could check whether the address is a
valid kernel address. So as there is no need for kern_addr_valid(), let's
remove it.
Link: https://lkml.kernel.org/r/20221018074014.185687-1-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org > [m68k]
Acked-by: Heiko Carstens <hca@linux.ibm.com > [s390]
Acked-by: Christoph Hellwig <hch@lst.de >
Acked-by: Helge Deller <deller@gmx.de > [parisc]
Acked-by: Michael Ellerman <mpe@ellerman.id.au > [powerpc]
Acked-by: Guo Ren <guoren@kernel.org > [csky]
Acked-by: Catalin Marinas <catalin.marinas@arm.com > [arm64]
Cc: Alexander Gordeev <agordeev@linux.ibm.com >
Cc: Andy Lutomirski <luto@kernel.org >
Cc: Anton Ivanov <anton.ivanov@cambridgegreys.com >
Cc: <aou@eecs.berkeley.edu >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Christian Borntraeger <borntraeger@linux.ibm.com >
Cc: Christophe Leroy <christophe.leroy@csgroup.eu >
Cc: Chris Zankel <chris@zankel.net >
Cc: Dave Hansen <dave.hansen@linux.intel.com >
Cc: David S. Miller <davem@davemloft.net >
Cc: Dinh Nguyen <dinguyen@kernel.org >
Cc: Greg Ungerer <gerg@linux-m68k.org >
Cc: H. Peter Anvin <hpa@zytor.com >
Cc: Huacai Chen <chenhuacai@kernel.org >
Cc: Ingo Molnar <mingo@redhat.com >
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru >
Cc: James Bottomley <James.Bottomley@HansenPartnership.com >
Cc: Johannes Berg <johannes@sipsolutions.net >
Cc: Jonas Bonn <jonas@southpole.se >
Cc: Matt Turner <mattst88@gmail.com >
Cc: Max Filippov <jcmvbkbc@gmail.com >
Cc: Michal Simek <monstr@monstr.eu >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Palmer Dabbelt <palmer@rivosinc.com >
Cc: Paul Walmsley <paul.walmsley@sifive.com >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Richard Henderson <richard.henderson@linaro.org >
Cc: Richard Weinberger <richard@nod.at >
Cc: Rich Felker <dalias@libc.org >
Cc: Russell King <linux@armlinux.org.uk >
Cc: Stafford Horne <shorne@gmail.com >
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi >
Cc: Sven Schnelle <svens@linux.ibm.com >
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Vasily Gorbik <gor@linux.ibm.com >
Cc: Vineet Gupta <vgupta@kernel.org >
Cc: Will Deacon <will@kernel.org >
Cc: Xuerui Wang <kernel@xen0n.name >
Cc: Yoshinori Sato <ysato@users.osdn.me >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:18 -08:00
Uladzislau Rezki (Sony)
65f199b2b4
vmalloc: add reviewers for vmalloc code
...
Add myself and Christoph Hellwig as reviewers for vmalloc.
[akpm@linux-foundation.org: coding-style cleanups]
Link: https://lkml.kernel.org/r/20221018181053.434508-8-urezki@gmail.com
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Acked-by: Christoph Hellwig <hch@lst.de >
Cc: Matthew Wilcox (Oracle) <willy@infradead.org >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:18 -08:00
Uladzislau Rezki (Sony)
8c4196fe81
mm: vmalloc: use trace_free_vmap_area_noflush event
...
It is for debug purposes and is called when a vmap area gets freed. This
event gives some indication about:
- a start address of released area;
- a current number of outstanding pages;
- a maximum number of allowed outstanding pages.
Link: https://lkml.kernel.org/r/20221018181053.434508-7-urezki@gmail.com
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Reviewed-by: Christoph Hellwig <hch@lst.de >
Cc: Matthew Wilcox (Oracle) <willy@infradead.org >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:17 -08:00
Uladzislau Rezki (Sony)
6030fd5fd1
mm: vmalloc: use trace_purge_vmap_area_lazy event
...
This is for debug purposes and is called when all outstanding areas are
removed back to the vmap space. It gives some extra information about:
- a start:end range where set of vmap ares were freed;
- a number of purged areas which were backed off.
[urezki@gmail.com: simplify return boolean expression]
Link: https://lkml.kernel.org/r/20221020125247.5053-1-urezki@gmail.com
Link: https://lkml.kernel.org/r/20221018181053.434508-6-urezki@gmail.com
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Reviewed-by: Christoph Hellwig <hch@lst.de >
Cc: Matthew Wilcox (Oracle) <willy@infradead.org >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:17 -08:00
Uladzislau Rezki (Sony)
cf243da6ab
mm: vmalloc: use trace_alloc_vmap_area event
...
This is for debug purpose and is called when an allocation attempt occurs.
This event gives some information about:
- start address of allocated area;
- size that is requested;
- alignment that is required;
- vstart/vend restriction;
- if an allocation fails.
Link: https://lkml.kernel.org/r/20221018181053.434508-5-urezki@gmail.com
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Reviewed-by: Christoph Hellwig <hch@lst.de >
Cc: Matthew Wilcox (Oracle) <willy@infradead.org >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:17 -08:00
Uladzislau Rezki (Sony)
fabc27f764
mm: vmalloc: add free_vmap_area_noflush trace event
...
This event is used in order to validate/debug a start address of freed VA,
number of currently outstanding and maximum allowed areas.
Link: https://lkml.kernel.org/r/20221018181053.434508-4-urezki@gmail.com
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Reviewed-by: Christoph Hellwig <hch@lst.de >
Cc: Matthew Wilcox (Oracle) <willy@infradead.org >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:17 -08:00
Uladzislau Rezki (Sony)
b3a5a7b099
mm: vmalloc: add purge_vmap_area_lazy trace event
...
It is for debug purposes to track number of freed vmap areas including a
range it occurs on.
Link: https://lkml.kernel.org/r/20221018181053.434508-3-urezki@gmail.com
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Reviewed-by: Christoph Hellwig <hch@lst.de >
Cc: Matthew Wilcox (Oracle) <willy@infradead.org >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:17 -08:00
Uladzislau Rezki (Sony)
3c0c9bc9c9
mm: vmalloc: add alloc_vmap_area trace event
...
Patch series "Add basic trace events for vmap/vmalloc (v2)", v2.
This small series add some basic trace events for the vmap/vmalloc code.
Since currently we lack any, sometimes it is hard to start debuging vmap
code if an issue is reported or occured.
For example https://lore.kernel.org/linux-mm/Y0p8BZIiDXLQbde%2F@pc636/T/
The final patch adds two reviewers for vmalloc code.
This patch (of 7):
It is for debug purposes and for validation of passed parameters.
Link: https://lkml.kernel.org/r/20221018181053.434508-1-urezki@gmail.com
Link: https://lkml.kernel.org/r/20221018181053.434508-2-urezki@gmail.com
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com >
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org >
Reviewed-by: Christoph Hellwig <hch@lst.de >
Cc: Matthew Wilcox (Oracle) <willy@infradead.org >
Cc: Nicholas Piggin <npiggin@gmail.com >
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sony.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:17 -08:00
Liu Shixin
1eeaa4fd39
memory: move hotplug memory notifier priority to same file for easy sorting
...
The priority of hotplug memory callback is defined in a different file.
And there are some callers using numbers directly. Collect them together
into include/linux/memory.h for easy reading. This allows us to sort
their priorities more intuitively without additional comments.
Link: https://lkml.kernel.org/r/20220923033347.3935160-9-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: David Hildenbrand <david@redhat.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:17 -08:00
Liu Shixin
eafd296e0c
memory: remove unused register_hotmemory_notifier()
...
Remove unused register_hotmemory_notifier().
Link: https://lkml.kernel.org/r/20220923033347.3935160-8-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:16 -08:00
Liu Shixin
82f8661a79
ACPI: HMAT: use hotplug_memory_notifier() directly
...
Commit 76ae847497 ("Documentation: raise minimum supported version of
GCC to 5.1") updated the minimum gcc version to 5.1. So the problem
mentioned in f02c696800 ("include/linux/memory.h: implement
register_hotmemory_notifier()") no longer exist. So we can now switch to
use hotplug_memory_notifier() directly rather than
register_hotmemory_notifier().
Link: https://lkml.kernel.org/r/20220923033347.3935160-7-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:16 -08:00
Liu Shixin
d46722ef1c
mm/mm_init.c: use hotplug_memory_notifier() directly
...
Commit 76ae847497 ("Documentation: raise minimum supported version of
GCC to 5.1") updated the minimum gcc version to 5.1. So the problem
mentioned in f02c696800 ("include/linux/memory.h: implement
register_hotmemory_notifier()") no longer exist. So we can now switch to
use hotplug_memory_notifier() directly rather than
register_hotmemory_notifier().
Link: https://lkml.kernel.org/r/20220923033347.3935160-6-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:16 -08:00
Liu Shixin
cddb8d09ff
mm/mmap: use hotplug_memory_notifier() directly
...
Commit 76ae847497 ("Documentation: raise minimum supported version of
GCC to 5.1") updated the minimum gcc version to 5.1. So the problem
mentioned in f02c696800 ("include/linux/memory.h: implement
register_hotmemory_notifier()") no longer exist. So we can now switch to
use hotplug_memory_notifier() directly rather than
register_hotmemory_notifier().
Link: https://lkml.kernel.org/r/20220923033347.3935160-5-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:16 -08:00
Liu Shixin
946d5f9c9d
mm/slub.c: use hotplug_memory_notifier() directly
...
Commit 76ae847497 ("Documentation: raise minimum supported version of
GCC to 5.1") updated the minimum gcc version to 5.1. So the problem
mentioned in f02c696800 ("include/linux/memory.h: implement
register_hotmemory_notifier()") no longer exist. So we can now switch to
use hotplug_memory_notifier() directly rather than
register_hotmemory_notifier().
Link: https://lkml.kernel.org/r/20220923033347.3935160-4-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:16 -08:00
Liu Shixin
5d89c22432
fs/proc/kcore.c: use hotplug_memory_notifier() directly
...
Commit 76ae847497 ("Documentation: raise minimum supported version of
GCC to 5.1") updated the minimum gcc version to 5.1. So the problem
mentioned in f02c696800 ("include/linux/memory.h: implement
register_hotmemory_notifier()") no longer exist. So we can now switch to
use hotplug_memory_notifier() directly rather than
register_hotmemory_notifier().
Link: https://lkml.kernel.org/r/20220923033347.3935160-3-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:15 -08:00
Liu Shixin
f9e60becee
cgroup/cpuset: use hotplug_memory_notifier() directly
...
Patch series "mm: Use hotplug_memory_notifier() instead of
register_hotmemory_notifier()", v4.
Commit f02c696800 ("include/linux/memory.h: implement
register_hotmemory_notifier()") introduced register_hotmemory_notifier()
to avoid a compile problem with gcc-4.4.4:
When CONFIG_MEMORY_HOTPLUG=n, we don't want the memory-hotplug notifier
handlers to be included in the .o files, for space reasons.
The existing hotplug_memory_notifier() tries to handle this but testing
with gcc-4.4.4 shows that it doesn't work - the hotplug functions are
still present in the .o files.
Since commit 76ae847497 ("Documentation: raise minimum supported
version of GCC to 5.1") has already updated the minimum gcc version to
5.1. The previous problem mentioned in f02c696800 does not exist. So
we can now revert to use hotplug_memory_notifier() directly rather than
register_hotmemory_notifier().
In the last patch, we move all hotplug memory notifier priority to same
file for easy sorting.
This patch (of 8):
Commit 76ae847497 ("Documentation: raise minimum supported version of
GCC to 5.1") updated the minimum gcc version to 5.1. So the problem
mentioned in f02c696800 ("include/linux/memory.h: implement
register_hotmemory_notifier()") no longer exist. So we can now switch to
use hotplug_memory_notifier() directly rather than
register_hotmemory_notifier().
Link: https://lkml.kernel.org/r/20220923033347.3935160-1-liushixin2@huawei.com
Link: https://lkml.kernel.org/r/20220923033347.3935160-2-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Christoph Lameter <cl@linux.com >
Cc: Kefeng Wang <wangkefeng.wang@huawei.com >
Cc: Waiman Long <longman@redhat.com >
Cc: zefan li <lizefan.x@bytedance.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:15 -08:00
Kefeng Wang
f3ad032c2d
mm: rmap: rename page_not_mapped() to folio_not_mapped()
...
Since commit 2f031c6f04 ("mm/rmap: Convert rmap_walk() to take a
folio"), page_not_mapped() takes folio as parameter, rename it to be
consistent.
Link: https://lkml.kernel.org/r/20220927063826.159590-1-wangkefeng.wang@huawei.com
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Cc: Matthew Wilcox <willy@infradead.org >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:15 -08:00
David Hildenbrand
6f1405efc6
selftests/vm: anon_cow: add R/O longterm tests via gup_test
...
Let's trigger a R/O longterm pin on three cases of R/O mapped anonymous
pages:
* exclusive (never shared)
* shared (child still alive)
* previously shared (child no longer alive)
... and make sure that the pin is reliable: whatever we write via the page
tables has to be observable via the pin.
Link: https://lkml.kernel.org/r/20220927110120.106906-8-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Christoph von Recklinghausen <crecklin@redhat.com >
Cc: Don Dutile <ddutile@redhat.com >
Cc: Jason Gunthorpe <jgg@nvidia.com >
Cc: John Hubbard <jhubbard@nvidia.com >
Cc: Mike Rapoport <rppt@kernel.org >
Cc: Nadav Amit <namit@vmware.com >
Cc: Peter Xu <peterx@redhat.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: Vlastimil Babka <vbabka@suse.cz >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:15 -08:00
David Hildenbrand
c77369b437
mm/gup_test: start/stop/read functionality for PIN LONGTERM test
...
We want an easy way to take a R/O or R/W longterm pin on a range and be
able to observe the content of the pinned pages, so we can properly test
how longterm puns interact with our COW logic.
[david@redhat.com: silence a warning on 32-bit]
Link: https://lkml.kernel.org/r/74adbb51-6e33-f636-8a9c-2ad87bd9007e@redhat.com
[yang.lee@linux.alibaba.com: ./mm/gup_test.c:281:2-3: Unneeded semicolon]
Link: https://bugzilla.openanolis.cn/show_bug.cgi?id=2455
Link: https://lkml.kernel.org/r/20221020024035.113619-1-yang.lee@linux.alibaba.com
Link: https://lkml.kernel.org/r/20220927110120.106906-7-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com >
Signed-off-by: Yang Li <yang.lee@linux.alibaba.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Christoph von Recklinghausen <crecklin@redhat.com >
Cc: Don Dutile <ddutile@redhat.com >
Cc: Jason Gunthorpe <jgg@nvidia.com >
Cc: John Hubbard <jhubbard@nvidia.com >
Cc: Mike Rapoport <rppt@kernel.org >
Cc: Nadav Amit <namit@vmware.com >
Cc: Peter Xu <peterx@redhat.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: Vlastimil Babka <vbabka@suse.cz >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:15 -08:00
David Hildenbrand
e487ebbd12
selftests/vm: anon_cow: add liburing test cases
...
io_uring provides a simple mechanism to test long-term, R/W GUP pins
-- via fixed buffers -- and can be used to verify that GUP pins stay
in sync with the pages in the page table even if a page would
temporarily get mapped R/O or concurrent fork() could accidentially
end up sharing pinned pages with the child.
Note that this essentially re-introduces local_config support that was
removed recently in commit 6f83d6c74e ("Kselftests: remove support of
libhugetlbfs from kselftests").
[david@redhat.com: s/size_t/ssize_t/ on `cur', `total'.]
Link: https://lkml.kernel.org/r/445fe1ae-9e22-0d1d-4d09-272231d2f84a@redhat.com
Link: https://lkml.kernel.org/r/20220927110120.106906-6-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Christoph von Recklinghausen <crecklin@redhat.com >
Cc: Don Dutile <ddutile@redhat.com >
Cc: Jason Gunthorpe <jgg@nvidia.com >
Cc: John Hubbard <jhubbard@nvidia.com >
Cc: Mike Rapoport <rppt@kernel.org >
Cc: Nadav Amit <namit@vmware.com >
Cc: Peter Xu <peterx@redhat.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: Vlastimil Babka <vbabka@suse.cz >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:15 -08:00
David Hildenbrand
7dad331be7
selftests/vm: anon_cow: hugetlb tests
...
Let's run all existing test cases with all hugetlb sizes we're able to
detect.
Note that some tests cases still fail. This will, for example, be fixed
once vmsplice properly uses FOLL_PIN instead of FOLL_GET for pinning.
With 2 MiB and 1 GiB hugetlb on x86_64, the expected failures are:
# [RUN] vmsplice() + unmap in child ... with hugetlb (2048 kB)
not ok 23 No leak from parent into child
# [RUN] vmsplice() + unmap in child ... with hugetlb (1048576 kB)
not ok 24 No leak from parent into child
# [RUN] vmsplice() before fork(), unmap in parent after fork() ... with hugetlb (2048 kB)
not ok 35 No leak from child into parent
# [RUN] vmsplice() before fork(), unmap in parent after fork() ... with hugetlb (1048576 kB)
not ok 36 No leak from child into parent
# [RUN] vmsplice() + unmap in parent after fork() ... with hugetlb (2048 kB)
not ok 47 No leak from child into parent
# [RUN] vmsplice() + unmap in parent after fork() ... with hugetlb (1048576 kB)
not ok 48 No leak from child into parent
Link: https://lkml.kernel.org/r/20220927110120.106906-5-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Christoph von Recklinghausen <crecklin@redhat.com >
Cc: Don Dutile <ddutile@redhat.com >
Cc: Jason Gunthorpe <jgg@nvidia.com >
Cc: John Hubbard <jhubbard@nvidia.com >
Cc: Mike Rapoport <rppt@kernel.org >
Cc: Nadav Amit <namit@vmware.com >
Cc: Peter Xu <peterx@redhat.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: Vlastimil Babka <vbabka@suse.cz >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:15 -08:00
David Hildenbrand
f4b5fd6946
selftests/vm: anon_cow: THP tests
...
Let's add various THP variants that we'll run with our existing test
cases.
Link: https://lkml.kernel.org/r/20220927110120.106906-4-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Christoph von Recklinghausen <crecklin@redhat.com >
Cc: Don Dutile <ddutile@redhat.com >
Cc: Jason Gunthorpe <jgg@nvidia.com >
Cc: John Hubbard <jhubbard@nvidia.com >
Cc: Mike Rapoport <rppt@kernel.org >
Cc: Nadav Amit <namit@vmware.com >
Cc: Peter Xu <peterx@redhat.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: Vlastimil Babka <vbabka@suse.cz >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:14 -08:00
David Hildenbrand
a905e82ae4
selftests/vm: factor out pagemap_is_populated() into vm_util
...
We'll reuse it in the anon_cow test next.
Link: https://lkml.kernel.org/r/20220927110120.106906-3-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Christoph von Recklinghausen <crecklin@redhat.com >
Cc: Don Dutile <ddutile@redhat.com >
Cc: Jason Gunthorpe <jgg@nvidia.com >
Cc: John Hubbard <jhubbard@nvidia.com >
Cc: Mike Rapoport <rppt@kernel.org >
Cc: Nadav Amit <namit@vmware.com >
Cc: Peter Xu <peterx@redhat.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: Vlastimil Babka <vbabka@suse.cz >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:14 -08:00
David Hildenbrand
69c66add56
selftests/vm: anon_cow: test COW handling of anonymous memory
...
Patch series "selftests/vm: test COW handling of anonymous memory".
This is my current set of tests for testing COW handling of anonymous
memory, especially when interacting with GUP. I developed these tests
while working on PageAnonExclusive and managed to clean them up just now.
On current upstream Linux, all tests pass except the hugetlb tests that
rely on vmsplice -- these tests should pass as soon as vmsplice properly
uses FOLL_PIN instead of FOLL_GET.
I'm working on additional tests for COW handling in private mappings,
focusing on long-term R/O pinning e.g., of the shared zeropage, pagecache
pages and KSM pages. These tests, however, will go into a different file.
So this is everything I have regarding tests for anonymous memory.
This patch (of 7):
Let's start adding tests for our COW handling of anonymous memory. We'll
focus on basic tests that we can achieve without additional libraries or
gup_test extensions.
We'll add THP and hugetlb tests separately.
[david@redhat.com: s/size_t/ssize_t/ on `cur', `total', `transferred';]
Link: https://lkml.kernel.org/r/51302b9e-dc69-d709-3214-f23868028555@redhat.com
Link: https://lkml.kernel.org/r/20220927110120.106906-1-david@redhat.com
Link: https://lkml.kernel.org/r/20220927110120.106906-2-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com >
Cc: Andrea Arcangeli <aarcange@redhat.com >
Cc: Christoph von Recklinghausen <crecklin@redhat.com >
Cc: Don Dutile <ddutile@redhat.com >
Cc: Jason Gunthorpe <jgg@nvidia.com >
Cc: John Hubbard <jhubbard@nvidia.com >
Cc: Mike Rapoport <rppt@kernel.org >
Cc: Nadav Amit <namit@vmware.com >
Cc: Peter Xu <peterx@redhat.com >
Cc: Shuah Khan <shuah@kernel.org >
Cc: Vlastimil Babka <vbabka@suse.cz >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:14 -08:00
Andrey Konovalov
b2c5bd4c69
kasan: migrate workqueue_uaf test to kunit
...
Migrate the workqueue_uaf test to the KUnit framework.
Initially, this test was intended to check that Generic KASAN prints
auxiliary stack traces for workqueues. Nevertheless, the test is enabled
for all modes to make that KASAN reports bad accesses in the tested
scenario.
The presence of auxiliary stack traces for the Generic mode needs to be
inspected manually.
Link: https://lkml.kernel.org/r/1d81b6cc2a58985126283d1e0de8e663716dd930.1664298455.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com >
Reviewed-by: Marco Elver <elver@google.com >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com >
Cc: Dmitry Vyukov <dvyukov@google.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:14 -08:00
Andrey Konovalov
8516e837ca
kasan: migrate kasan_rcu_uaf test to kunit
...
Migrate the kasan_rcu_uaf test to the KUnit framework.
Changes to the implementation of the test:
- Call rcu_barrier() after call_rcu() to make that the RCU callbacks get
triggered before the test is over.
- Cast pointer passed to rcu_dereference_protected as __rcu to get rid of
the Sparse warning.
- Check that KASAN prints a report via KUNIT_EXPECT_KASAN_FAIL.
Initially, this test was intended to check that Generic KASAN prints
auxiliary stack traces for RCU objects. Nevertheless, the test is enabled
for all modes to make that KASAN reports bad accesses in RCU callbacks.
The presence of auxiliary stack traces for the Generic mode needs to be
inspected manually.
Link: https://lkml.kernel.org/r/897ee08d6cd0ba7e8a4fbfd9d8502823a2f922e6.1664298455.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com >
Reviewed-by: Marco Elver <elver@google.com >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com >
Cc: Dmitry Vyukov <dvyukov@google.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:14 -08:00
Andrey Konovalov
7ce0ea19d5
kasan: switch kunit tests to console tracepoints
...
Switch KUnit-compatible KASAN tests from using per-task KUnit resources to
console tracepoints.
This allows for two things:
1. Migrating tests that trigger a KASAN report in the context of a task
other than current to KUnit framework.
This is implemented in the patches that follow.
2. Parsing and matching the contents of KASAN reports.
This is not yet implemented.
Link: https://lkml.kernel.org/r/9345acdd11e953b207b0ed4724ff780e63afeb36.1664298455.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com >
Reviewed-by: Marco Elver <elver@google.com >
Cc: Alexander Potapenko <glider@google.com >
Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com >
Cc: Dmitry Vyukov <dvyukov@google.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:14 -08:00
Thomas Weißschuh
a5454f9524
tmpfs: ensure O_LARGEFILE with generic_file_open()
...
Without this check open() will open large files on tmpfs although
O_LARGEFILE was not specified. This is inconsistent with other
filesystems. Also it will later result in EOVERFLOW on stat() or EFBIG on
write().
Link: https://lore.kernel.org/lkml/76bedae6-22ea-4abc-8c06-b424ceb39217@t-8ch.de/
Link: https://lkml.kernel.org/r/20220928104535.61186-1-linux@weissschuh.net
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@amadeus.com >
Acked-by: Hugh Dickins <hughd@google.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:13 -08:00
Kamalesh Babulal
7848ed6284
mm: memcontrol: use mem_cgroup_is_root() helper
...
Replace the checks for memcg is root memcg, with mem_cgroup_is_root()
helper.
Link: https://lkml.kernel.org/r/20220930134433.338103-1-kamalesh.babulal@oracle.com
Signed-off-by: Kamalesh Babulal <kamalesh.babulal@oracle.com >
Reviewed-by: Muchun Song <songmuchun@bytedance.com >
Acked-by: Michal Hocko <mhocko@suse.com >
Cc: Johannes Weiner <hannes@cmpxchg.org >
Cc: Kamalesh Babulal <kamalesh.babulal@oracle.com >
Cc: Roman Gushchin <roman.gushchin@linux.dev >
Cc: Shakeel Butt <shakeelb@google.com >
Cc: Tom Hromatka <tom.hromatka@oracle.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:13 -08:00
Deming Wang
97955f6941
mm/mincore.c: use vma_lookup() instead of find_vma()
...
Using vma_lookup() verifies the start address is contained in the found
vma. This results in easier to read the code.
Link: https://lkml.kernel.org/r/20221007030345.5029-1-wangdeming@inspur.com
Signed-off-by: Deming Wang <wangdeming@inspur.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:13 -08:00
Lukas Bulwahn
6fe7d712d7
mm/shmem: remove unneeded assignments in shmem_get_folio_gfp()
...
After the rework of shmem_get_folio_gfp() to use a folio, the local
variable hindex is only needed to be set once before passing it to
shmem_add_to_page_cache().
Remove the unneeded initialization and assignments of the variable hindex
before the actual effective assignment and first use.
No functional change. No change in object code.
Link: https://lkml.kernel.org/r/20221007085027.6309-1-lukas.bulwahn@gmail.com
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com >
Cc: Hugh Dickins <hughd@google.com >
Cc: Matthew Wilcox <willy@infradead.org >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:13 -08:00
Rolf Eike Beer
3e0ee84342
mm: fix typo in struct vm_operations_struct comments
...
There is no eprotect(), so I assume this is about mprotect().
Link: https://lkml.kernel.org/r/2385684.8vm7BOzihM@mobilepool36.emlix.com
Signed-off-by: Rolf Eike Beer <eb@emlix.com >
Signed-off-by: Andrew Morton <akpm@linux-foundation.org >
2022-11-08 17:37:13 -08:00