]>
www.infradead.org Git - users/jedix/linux-maple.git/log
Mike Rapoport [Tue, 13 Apr 2021 22:21:44 +0000 (08:21 +1000)]
mmap: make mlock_future_check() global
Patch series "mm: introduce memfd_secret system call to create "secret" memory areas", v18.
This is an implementation of "secret" mappings backed by a file
descriptor.
The file descriptor backing secret memory mappings is created using a
dedicated memfd_secret system call The desired protection mode for the
memory is configured using flags parameter of the system call. The mmap()
of the file descriptor created with memfd_secret() will create a "secret"
memory mapping. The pages in that mapping will be marked as not present
in the direct map and will be present only in the page table of the owning
mm.
Although normally Linux userspace mappings are protected from other users,
such secret mappings are useful for environments where a hostile tenant is
trying to trick the kernel into giving them access to other tenants
mappings.
Additionally, in the future the secret mappings may be used as a mean to
protect guest memory in a virtual machine host.
For demonstration of secret memory usage we've created a userspace library
https://git.kernel.org/pub/scm/linux/kernel/git/jejb/secret-memory-preloader.git
that does two things: the first is act as a preloader for openssl to
redirect all the OPENSSL_malloc calls to secret memory meaning any secret
keys get automatically protected this way and the other thing it does is
expose the API to the user who needs it. We anticipate that a lot of the
use cases would be like the openssl one: many toolkits that deal with
secret keys already have special handling for the memory to try to give
them greater protection, so this would simply be pluggable into the
toolkits without any need for user application modification.
Hiding secret memory mappings behind an anonymous file allows usage of the
page cache for tracking pages allocated for the "secret" mappings as well
as using address_space_operations for e.g. page migration callbacks.
The anonymous file may be also used implicitly, like hugetlb files, to
implement mmap(MAP_SECRET) and use the secret memory areas with "native"
mm ABIs in the future.
Removing of the pages from the direct map may cause its fragmentation on
architectures that use large pages to map the physical memory which
affects the system performance. However, the original Kconfig text for
CONFIG_DIRECT_GBPAGES said that gigabyte pages in the direct map "... can
improve the kernel's performance a tiny bit ..." (commit
00d1c5e05736
("x86: add gbpages switches")) and the recent report [1] showed that "...
although 1G mappings are a good default choice, there is no compelling
evidence that it must be the only choice". Hence, it is sufficient to
have secretmem disabled by default with the ability of a system
administrator to enable it at boot time.
In addition, there is also a long term goal to improve management of the
direct map.
[1] https://lore.kernel.org/linux-mm/
213b4567 -46ce-f116-9cdf-
bbd0c884eb3c @linux.intel.com/
This patch (of 8):
It will be used by the upcoming secret memory implementation.
Link: https://lkml.kernel.org/r/20210303162209.8609-1-rppt@kernel.org
Link: https://lkml.kernel.org/r/20210303162209.8609-3-rppt@kernel.org
Signed-off-by: Mike Rapoport <rppt@linux.ibm.com>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christopher Lameter <cl@linux.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Elena Reshetova <elena.reshetova@intel.com>
Cc: Hagen Paul Pfeifer <hagen@jauu.net>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Bottomley <jejb@linux.ibm.com>
Cc: "Kirill A. Shutemov" <kirill@shutemov.name>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Palmer Dabbelt <palmerdabbelt@google.com>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Rick Edgecombe <rick.p.edgecombe@intel.com>
Cc: Roman Gushchin <guro@fb.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tycho Andersen <tycho@tycho.ws>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Lu Jialin [Tue, 13 Apr 2021 22:21:43 +0000 (08:21 +1000)]
mm: fix typos in comments
succed -> succeed in mm/hugetlb.c
wil -> will in mm/mempolicy.c
wit -> with in mm/page_alloc.c
Retruns -> Returns in mm/page_vma_mapped.c
confict -> conflict in mm/secretmem.c
No functionality changed.
Link: https://lkml.kernel.org/r/20210408140027.60623-1-lujialin4@huawei.com
Signed-off-by: Lu Jialin <lujialin4@huawei.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Ingo Molnar [Tue, 13 Apr 2021 22:21:43 +0000 (08:21 +1000)]
mm: fix typos in comments
Fix ~94 single-word typos in locking code comments, plus a few
very obvious grammar mistakes.
Link: https://lkml.kernel.org/r/20210322212624.GA1963421@gmail.com
Link: https://lore.kernel.org/r/20210322205203.GB1959563@gmail.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Bhaskar Chowdhury <unixbhaskar@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Masahiro Yamada [Tue, 13 Apr 2021 22:21:43 +0000 (08:21 +1000)]
treewide: remove editor modelines and cruft
The section "19) Editor modelines and other cruft" in
Documentation/process/coding-style.rst clearly says, "Do not include any
of these in source files."
I recently receive a patch to explicitly add a new one.
Let's do treewide cleanups, otherwise some people follow the existing code
and attempt to upstream their favoriate editor setups.
It is even nicer if scripts/checkpatch.pl can check it.
If we like to impose coding style in an editor-independent manner, I think
editorconfig (patch [1]) is a saner solution.
[1] https://lore.kernel.org/lkml/
20200703073143 .423557-1-danny@kdrag0n.dev/
Link: https://lkml.kernel.org/r/20210324054457.1477489-1-masahiroy@kernel.org
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Miguel Ojeda <ojeda@kernel.org> [auxdisplay]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Bhaskar Chowdhury [Tue, 13 Apr 2021 22:21:42 +0000 (08:21 +1000)]
ipc/sem.c: spelling fix
s/purpuse/purpose/
Link: https://lkml.kernel.org/r/20210319221432.26631-1-unixbhaskar@gmail.com
Signed-off-by: Bhaskar Chowdhury <unixbhaskar@gmail.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
dingsenjie [Tue, 13 Apr 2021 22:21:42 +0000 (08:21 +1000)]
fs: fat: fix spelling typo of values
vaules -> values
Link: https://lkml.kernel.org/r/20210302034817.30384-1-dingsenjie@163.com
Signed-off-by: dingsenjie <dingsenjie@yulong.com>
Acked-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Xiaofeng Cao [Tue, 13 Apr 2021 22:21:42 +0000 (08:21 +1000)]
kernel/sys.c: fix typo
change 'infite' to 'infinite'
change 'concurent' to 'concurrent'
change 'memvers' to 'members'
change 'decendants' to 'descendants'
change 'argumets' to 'arguments'
Link: https://lkml.kernel.org/r/20210316112904.10661-1-cxfcosmos@gmail.com
Signed-off-by: Xiaofeng Cao <caoxiaofeng@yulong.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Bhaskar Chowdhury [Tue, 13 Apr 2021 22:21:41 +0000 (08:21 +1000)]
kernel/up.c: fix typo
s/condtions/conditions/
Link: https://lkml.kernel.org/r/20210317032732.3260835-1-unixbhaskar@gmail.com
Signed-off-by: Bhaskar Chowdhury <unixbhaskar@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Xiaofeng Cao [Tue, 13 Apr 2021 22:21:41 +0000 (08:21 +1000)]
kernel/user_namespace.c: fix typos
change 'verifing' to 'verifying'
change 'certaint' to 'certain'
change 'approprpiate' to 'appropriate'
Link: https://lkml.kernel.org/r/20210317100129.12440-1-caoxiaofeng@yulong.com
Signed-off-by: Xiaofeng Cao <caoxiaofeng@yulong.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
zhouchuangao [Tue, 13 Apr 2021 22:21:41 +0000 (08:21 +1000)]
kernel/umh.c: fix some spelling mistakes
Fix some spelling mistakes, and modify the order of the parameter comments
to be consistent with the order of the parameters passed to the function.
Link: https://lkml.kernel.org/r/1615636139-4076-1-git-send-email-zhouchuangao@vivo.com
Signed-off-by: zhouchuangao <zhouchuangao@vivo.com>
Acked-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Bhaskar Chowdhury [Tue, 13 Apr 2021 22:21:41 +0000 (08:21 +1000)]
include/linux/pgtable.h: few spelling fixes
Few spelling fixes throughout the file.
Link: https://lkml.kernel.org/r/20210318201404.6380-1-unixbhaskar@gmail.com
Signed-off-by: Bhaskar Chowdhury <unixbhaskar@gmail.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Colin Ian King [Tue, 13 Apr 2021 22:21:40 +0000 (08:21 +1000)]
mm/slab.c: fix spelling mistake "disired" -> "desired"
There is a spelling mistake in a comment. Fix it.
Link: https://lkml.kernel.org/r/20210317094158.5762-1-colin.king@canonical.com
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Drew Fustini [Tue, 13 Apr 2021 22:21:40 +0000 (08:21 +1000)]
scripts/spelling.txt: add "overflw"
Add typo "overflw" for "overflow". This typo was found and fixed in
drivers/clocksource/timer-pistachio.c.
Link: https://lore.kernel.org/lkml/20210305090315.384547-1-drew@beagleboard.org/
Link: https://lkml.kernel.org/r/20210305095151.388182-1-drew@beagleboard.org
Signed-off-by: Drew Fustini <drew@beagleboard.org>
Suggested-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
zuoqilin [Tue, 13 Apr 2021 22:21:40 +0000 (08:21 +1000)]
scripts/spelling.txt: Add "diabled" typo
Increase "diabled" spelling error check.
Link: https://lkml.kernel.org/r/20210304070106.2313-1-zuoqilin1@163.com
Signed-off-by: zuoqilin <zuoqilin@yulong.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Drew Fustini [Tue, 13 Apr 2021 22:21:40 +0000 (08:21 +1000)]
scripts/spelling.txt: add "overlfow"
Add typo "overlfow" for "overflow". This typo was found and fixed in
net/sctp/tsnmap.c.
Link: https://lore.kernel.org/netdev/20210304055548.56829-1-drew@beagleboard.org/
Link: https://lkml.kernel.org/r/20210304072657.64577-1-drew@beagleboard.org
Signed-off-by: Drew Fustini <drew@beagleboard.org>
Suggested-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Maninder Singh [Tue, 13 Apr 2021 22:21:39 +0000 (08:21 +1000)]
arm: print alloc free paths for address in registers
In case of a use after free kernel oops, the freeing path of the object is
required to debug futher. In most of cases the object address is present
in one of the registers.
Thus check the register's address and if it belongs to slab, print its
alloc and free path.
e.g. in the below issue register r6 belongs to slab, and a use after free
issue occurred on one of its dereferenced values:
[ 20.182197] Unable to handle kernel paging request at virtual address
6b6b6b6f
....
[ 20.185035] pc : [<
c0538afc >] lr : [<
c0465674 >] psr:
60000013
[ 20.185271] sp :
c8927d40 ip :
ffffefff fp :
c8aa8020
[ 20.185462] r10:
c8927e10 r9 :
00000001 r8 :
00400cc0
[ 20.185674] r7 :
00000000 r6 :
c8ab0180 r5 :
c1804a80 r4 :
c8aa8008
[ 20.185924] r3 :
c1a5661c r2 :
00000000 r1 :
6b6b6b6b r0 :
c139bf48
.....
[ 20.191499] Register r6 information: slab kmalloc-64 start
c8ab0140 data offset 64 pointer offset 0 size 64 allocated at meminfo_proc_show+0x40/0x4fc
[ 20.192078] meminfo_proc_show+0x40/0x4fc
[ 20.192263] seq_read_iter+0x18c/0x4c4
[ 20.192430] proc_reg_read_iter+0x84/0xac
[ 20.192617] generic_file_splice_read+0xe8/0x17c
[ 20.192816] splice_direct_to_actor+0xb8/0x290
[ 20.193008] do_splice_direct+0xa0/0xe0
[ 20.193185] do_sendfile+0x2d0/0x438
[ 20.193345] sys_sendfile64+0x12c/0x140
[ 20.193523] ret_fast_syscall+0x0/0x58
[ 20.193695] 0xbeeacde4
[ 20.193822] Free path:
[ 20.193935] meminfo_proc_show+0x5c/0x4fc
[ 20.194115] seq_read_iter+0x18c/0x4c4
[ 20.194285] proc_reg_read_iter+0x84/0xac
[ 20.194475] generic_file_splice_read+0xe8/0x17c
[ 20.194685] splice_direct_to_actor+0xb8/0x290
[ 20.194870] do_splice_direct+0xa0/0xe0
[ 20.195014] do_sendfile+0x2d0/0x438
[ 20.195174] sys_sendfile64+0x12c/0x140
[ 20.195336] ret_fast_syscall+0x0/0x58
[ 20.195491] 0xbeeacde4
Link: https://lkml.kernel.org/r/1615891032-29160-3-git-send-email-maninder1.s@samsung.com
Co-developed-by: Vaneet Narang <v.narang@samsung.com>
Signed-off-by: Vaneet Narang <v.narang@samsung.com>
Signed-off-by: Maninder Singh <maninder1.s@samsung.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Christoph Lameter <cl@linux.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Dmitry Safonov <0x7f454c46@gmail.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: Paul E. McKenney <paulmck@kernel.org>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
David Hildenbrand [Tue, 13 Apr 2021 22:21:39 +0000 (08:21 +1000)]
mm/vmalloc: remove vwrite()
The last user (/dev/kmem) is gone. Let's drop it.
Link: https://lkml.kernel.org/r/20210324102351.6932-4-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Hillf Danton <hdanton@sina.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sonymobile.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Minchan Kim <minchan@kernel.org>
Cc: huang ying <huang.ying.caritas@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
David Hildenbrand [Tue, 13 Apr 2021 22:21:39 +0000 (08:21 +1000)]
mm: remove xlate_dev_kmem_ptr()
Since /dev/kmem has been removed, let's remove the xlate_dev_kmem_ptr()
leftovers.
Link: https://lkml.kernel.org/r/20210324102351.6932-3-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Brian Cain <bcain@codeaurora.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
Cc: Helge Deller <deller@gmx.de>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Rich Felker <dalias@libc.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: David Hildenbrand <david@redhat.com>
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Mikulas Patocka <mpatocka@redhat.com>
Cc: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Palmer Dabbelt <palmerdabbelt@google.com>
Cc: Luis Chamberlain <mcgrof@kernel.org>
Cc: Greentime Hu <green.hu@gmail.com>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Jiaxun Yang <jiaxun.yang@flygoat.com>
Cc: "Peter Zijlstra (Intel)" <peterz@infradead.org>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Cc: Niklas Schnelle <schnelle@linux.ibm.com>
Cc: Pierre Morel <pmorel@linux.ibm.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
David Hildenbrand [Tue, 13 Apr 2021 22:21:39 +0000 (08:21 +1000)]
drivers/char: remove /dev/kmem for good
Patch series "drivers/char: remove /dev/kmem for good".
Exploring /dev/kmem and /dev/mem in the context of memory hot(un)plug and
memory ballooning, I started questioning the existence of /dev/kmem.
Comparing it with the /proc/kcore implementation, it does not seem to be
able to deal with things like
a) Pages unmapped from the direct mapping (e.g., to be used by secretmem)
-> kern_addr_valid(). virt_addr_valid() is not sufficient.
b) Special cases like gart aperture memory that is not to be touched
-> mem_pfn_is_ram()
Unless I am missing something, it's at least broken in some cases and might
fault/crash the machine.
Looks like its existence has been questioned before in 2005 and 2010 [1],
after ~11 additional years, it might make sense to revive the discussion.
CONFIG_DEVKMEM is only enabled in a single defconfig (on purpose or by
mistake?). All distributions disable it: in Ubuntu it has been disabled
for more than 10 years, in Debian since 2.6.31, in Fedora at least
starting with FC3, in RHEL starting with RHEL4, in SUSE starting from
15sp2, and OpenSUSE has it disabled as well.
1) /dev/kmem was popular for rootkits [2] before it got disabled
basically everywhere. Ubuntu documents [3] "There is no modern user of
/dev/kmem any more beyond attackers using it to load kernel rootkits.".
RHEL documents in a BZ [5] "it served no practical purpose other than to
serve as a potential security problem or to enable binary module drivers
to access structures/functions they shouldn't be touching"
2) /proc/kcore is a decent interface to have a controlled way to read
kernel memory for debugging puposes. (will need some extensions to
deal with memory offlining/unplug, memory ballooning, and poisoned
pages, though)
3) It might be useful for corner case debugging [1]. KDB/KGDB might be a
better fit, especially, to write random memory; harder to shoot
yourself into the foot.
4) "Kernel Memory Editor" [4] hasn't seen any updates since 2000 and seems
to be incompatible with 64bit [1]. For educational purposes,
/proc/kcore might be used to monitor value updates -- or older
kernels can be used.
5) It's broken on arm64, and therefore, completely disabled there.
Looks like it's essentially unused and has been replaced by better
suited interfaces for individual tasks (/proc/kcore, KDB/KGDB). Let's
just remove it.
[1] https://lwn.net/Articles/147901/
[2] https://www.linuxjournal.com/article/10505
[3] https://wiki.ubuntu.com/Security/Features#A.2Fdev.2Fkmem_disabled
[4] https://sourceforge.net/projects/kme/
[5] https://bugzilla.redhat.com/show_bug.cgi?id=154796
Link: https://lkml.kernel.org/r/20210324102351.6932-1-david@redhat.com
Link: https://lkml.kernel.org/r/20210324102351.6932-2-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Kees Cook <keescook@chromium.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: "Alexander A. Klimov" <grandmaster@al2klimov.de>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Brian Cain <bcain@codeaurora.org>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Chris Zankel <chris@zankel.net>
Cc: Corentin Labbe <clabbe@baylibre.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Cc: Greentime Hu <green.hu@gmail.com>
Cc: Gregory Clement <gregory.clement@bootlin.com>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Helge Deller <deller@gmx.de>
Cc: Hillf Danton <hdanton@sina.com>
Cc: huang ying <huang.ying.caritas@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
Cc: James Troup <james.troup@canonical.com>
Cc: Jiaxun Yang <jiaxun.yang@flygoat.com>
Cc: Jonas Bonn <jonas@southpole.se>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kairui Song <kasong@redhat.com>
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: Liviu Dudau <liviu.dudau@arm.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Cc: Luis Chamberlain <mcgrof@kernel.org>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Mikulas Patocka <mpatocka@redhat.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Niklas Schnelle <schnelle@linux.ibm.com>
Cc: Oleksiy Avramchenko <oleksiy.avramchenko@sonymobile.com>
Cc: openrisc@lists.librecores.org
Cc: Palmer Dabbelt <palmerdabbelt@google.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: "Pavel Machek (CIP)" <pavel@denx.de>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: "Peter Zijlstra (Intel)" <peterz@infradead.org>
Cc: Pierre Morel <pmorel@linux.ibm.com>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Rich Felker <dalias@libc.org>
Cc: Robert Richter <rric@kernel.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Cc: sparclinux@vger.kernel.org
Cc: Stafford Horne <shorne@gmail.com>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Sudeep Holla <sudeep.holla@arm.com>
Cc: Theodore Dubois <tblodt@icloud.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: William Cohen <wcohen@redhat.com>
Cc: Xiaoming Ni <nixiaoming@huawei.com>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Stephen Rothwell [Wed, 14 Apr 2021 11:33:33 +0000 (21:33 +1000)]
Merge branch 'akpm-current/current'
Stephen Rothwell [Wed, 14 Apr 2021 08:30:54 +0000 (18:30 +1000)]
Merge remote-tracking branch 'rust/rust-next'
# Conflicts:
# Makefile
Stephen Rothwell [Wed, 14 Apr 2021 08:19:09 +0000 (18:19 +1000)]
Merge remote-tracking branch 'iomem-mmap-vs-gup/topic/iomem-mmap-vs-gup'
Stephen Rothwell [Wed, 14 Apr 2021 08:17:30 +0000 (18:17 +1000)]
Merge remote-tracking branch 'kunit-next/kunit'
Stephen Rothwell [Wed, 14 Apr 2021 08:16:09 +0000 (18:16 +1000)]
Merge remote-tracking branch 'cfi/cfi/next'
Stephen Rothwell [Wed, 14 Apr 2021 08:14:19 +0000 (18:14 +1000)]
Merge remote-tracking branch 'kgdb/kgdb/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 08:12:04 +0000 (18:12 +1000)]
Merge remote-tracking branch 'hyperv/hyperv-next'
Stephen Rothwell [Wed, 14 Apr 2021 08:10:42 +0000 (18:10 +1000)]
Merge remote-tracking branch 'nvmem/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 08:09:22 +0000 (18:09 +1000)]
Merge remote-tracking branch 'slimbus/for-next'
# Conflicts:
# drivers/nvmem/Kconfig
# drivers/nvmem/Makefile
Stephen Rothwell [Wed, 14 Apr 2021 08:07:58 +0000 (18:07 +1000)]
Merge remote-tracking branch 'gnss/gnss-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:53:07 +0000 (17:53 +1000)]
Merge remote-tracking branch 'kspp/for-next/kspp'
Stephen Rothwell [Wed, 14 Apr 2021 07:51:18 +0000 (17:51 +1000)]
Merge remote-tracking branch 'seccomp/for-next/seccomp'
Stephen Rothwell [Wed, 14 Apr 2021 07:51:16 +0000 (17:51 +1000)]
Merge remote-tracking branch 'nvdimm/libnvdimm-for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:49:53 +0000 (17:49 +1000)]
Merge remote-tracking branch 'rtc/rtc-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:49:50 +0000 (17:49 +1000)]
Merge remote-tracking branch 'coresight/next'
Stephen Rothwell [Wed, 14 Apr 2021 07:47:59 +0000 (17:47 +1000)]
Merge remote-tracking branch 'livepatching/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:46:57 +0000 (17:46 +1000)]
Merge remote-tracking branch 'kselftest/next'
Stephen Rothwell [Wed, 14 Apr 2021 07:44:45 +0000 (17:44 +1000)]
Merge remote-tracking branch 'pwm/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:42:16 +0000 (17:42 +1000)]
Merge remote-tracking branch 'pinctrl/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:27:33 +0000 (17:27 +1000)]
Merge remote-tracking branch 'gpio-brgl/gpio/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:25:21 +0000 (17:25 +1000)]
Merge remote-tracking branch 'rpmsg/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:23:39 +0000 (17:23 +1000)]
Merge remote-tracking branch 'vhost/linux-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:22:16 +0000 (17:22 +1000)]
Merge remote-tracking branch 'scsi-mkp/for-next'
# Conflicts:
# drivers/target/iscsi/iscsi_target.c
Stephen Rothwell [Wed, 14 Apr 2021 07:19:26 +0000 (17:19 +1000)]
Merge remote-tracking branch 'scsi/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:09:24 +0000 (17:09 +1000)]
Merge remote-tracking branch 'cgroup/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:04:35 +0000 (17:04 +1000)]
Merge remote-tracking branch 'dmaengine/next'
Stephen Rothwell [Wed, 14 Apr 2021 07:02:53 +0000 (17:02 +1000)]
Merge remote-tracking branch 'icc/icc-next'
Stephen Rothwell [Wed, 14 Apr 2021 07:00:22 +0000 (17:00 +1000)]
Merge remote-tracking branch 'staging/staging-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:58:37 +0000 (16:58 +1000)]
Merge remote-tracking branch 'vfio/next'
Stephen Rothwell [Wed, 14 Apr 2021 06:57:17 +0000 (16:57 +1000)]
Merge remote-tracking branch 'phy-next/next'
Stephen Rothwell [Wed, 14 Apr 2021 06:54:52 +0000 (16:54 +1000)]
Merge remote-tracking branch 'char-misc/char-misc-next'
# Conflicts:
# drivers/phy/qualcomm/phy-qcom-qmp.c
Stephen Rothwell [Wed, 14 Apr 2021 06:52:29 +0000 (16:52 +1000)]
Merge remote-tracking branch 'tty/tty-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:50:49 +0000 (16:50 +1000)]
Merge remote-tracking branch 'usb-serial/usb-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:47:31 +0000 (16:47 +1000)]
Merge remote-tracking branch 'usb/usb-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:33:08 +0000 (16:33 +1000)]
Merge remote-tracking branch 'driver-core/driver-core-next'
# Conflicts:
# drivers/of/property.c
Stephen Rothwell [Wed, 14 Apr 2021 06:31:17 +0000 (16:31 +1000)]
Merge remote-tracking branch 'ipmi/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:29:36 +0000 (16:29 +1000)]
Merge remote-tracking branch 'leds/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:28:15 +0000 (16:28 +1000)]
Merge remote-tracking branch 'chrome-platform/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:26:06 +0000 (16:26 +1000)]
Merge remote-tracking branch 'drivers-x86/for-next'
# Conflicts:
# MAINTAINERS
# drivers/platform/x86/thinkpad_acpi.c
Stephen Rothwell [Wed, 14 Apr 2021 06:26:03 +0000 (16:26 +1000)]
Merge remote-tracking branch 'percpu/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 06:25:01 +0000 (16:25 +1000)]
Merge remote-tracking branch 'kvms390/next'
Stephen Rothwell [Wed, 14 Apr 2021 06:10:12 +0000 (16:10 +1000)]
Merge remote-tracking branch 'kvm-arm/next'
Stephen Rothwell [Wed, 14 Apr 2021 05:58:12 +0000 (15:58 +1000)]
Merge remote-tracking branch 'kvm/next'
# Conflicts:
# arch/x86/kvm/svm/nested.c
Stephen Rothwell [Wed, 14 Apr 2021 05:43:19 +0000 (15:43 +1000)]
Merge remote-tracking branch 'rcu/rcu/next'
Stephen Rothwell [Wed, 14 Apr 2021 05:38:36 +0000 (15:38 +1000)]
Merge remote-tracking branch 'ftrace/for-next'
# Conflicts:
# arch/x86/kernel/kprobes/ftrace.c
Stephen Rothwell [Wed, 14 Apr 2021 05:32:39 +0000 (15:32 +1000)]
Merge remote-tracking branch 'irqchip/irq/irqchip-next'
# Conflicts:
# drivers/irqchip/Kconfig
# drivers/irqchip/Makefile
Stephen Rothwell [Wed, 14 Apr 2021 05:32:38 +0000 (15:32 +1000)]
Merge remote-tracking branch 'edac/edac-for-next'
Stephen Rothwell [Wed, 14 Apr 2021 05:17:54 +0000 (15:17 +1000)]
Merge remote-tracking branch 'tip/auto-latest'
Stephen Rothwell [Wed, 14 Apr 2021 05:15:03 +0000 (15:15 +1000)]
Merge remote-tracking branch 'spi/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 05:13:13 +0000 (15:13 +1000)]
Merge remote-tracking branch 'mailbox/mailbox-for-next'
Stephen Rothwell [Wed, 14 Apr 2021 05:05:51 +0000 (15:05 +1000)]
Merge remote-tracking branch 'devicetree/for-next'
# Conflicts:
# drivers/of/of_net.c
Stephen Rothwell [Wed, 14 Apr 2021 05:00:15 +0000 (15:00 +1000)]
Merge remote-tracking branch 'audit/next'
Stephen Rothwell [Wed, 14 Apr 2021 04:54:58 +0000 (14:54 +1000)]
Merge remote-tracking branch 'iommu/next'
Stephen Rothwell [Wed, 14 Apr 2021 04:52:48 +0000 (14:52 +1000)]
Merge remote-tracking branch 'tpmdd/next'
Stephen Rothwell [Wed, 14 Apr 2021 04:50:39 +0000 (14:50 +1000)]
Merge remote-tracking branch 'tomoyo/master'
Stephen Rothwell [Wed, 14 Apr 2021 04:38:10 +0000 (14:38 +1000)]
Merge remote-tracking branch 'selinux/next'
Stephen Rothwell [Wed, 14 Apr 2021 04:36:02 +0000 (14:36 +1000)]
Merge remote-tracking branch 'keys/keys-next'
# Conflicts:
# certs/system_keyring.c
Stephen Rothwell [Wed, 14 Apr 2021 04:33:51 +0000 (14:33 +1000)]
Merge remote-tracking branch 'integrity/next-integrity'
Stephen Rothwell [Wed, 14 Apr 2021 04:31:41 +0000 (14:31 +1000)]
Merge remote-tracking branch 'apparmor/apparmor-next'
Stephen Rothwell [Wed, 14 Apr 2021 04:18:21 +0000 (14:18 +1000)]
Merge remote-tracking branch 'security/next-testing'
# Conflicts:
# arch/alpha/kernel/syscalls/syscall.tbl
# arch/arm/tools/syscall.tbl
# arch/arm64/include/asm/unistd.h
# arch/arm64/include/asm/unistd32.h
# arch/ia64/kernel/syscalls/syscall.tbl
# arch/m68k/kernel/syscalls/syscall.tbl
# arch/microblaze/kernel/syscalls/syscall.tbl
# arch/mips/kernel/syscalls/syscall_n32.tbl
# arch/mips/kernel/syscalls/syscall_n64.tbl
# arch/mips/kernel/syscalls/syscall_o32.tbl
# arch/parisc/kernel/syscalls/syscall.tbl
# arch/powerpc/kernel/syscalls/syscall.tbl
# arch/s390/kernel/syscalls/syscall.tbl
# arch/sh/kernel/syscalls/syscall.tbl
# arch/sparc/kernel/syscalls/syscall.tbl
# arch/x86/entry/syscalls/syscall_32.tbl
# arch/x86/entry/syscalls/syscall_64.tbl
# arch/xtensa/kernel/syscalls/syscall.tbl
# include/uapi/asm-generic/unistd.h
Stephen Rothwell [Wed, 14 Apr 2021 04:16:01 +0000 (14:16 +1000)]
Merge remote-tracking branch 'regulator/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 04:13:34 +0000 (14:13 +1000)]
Merge remote-tracking branch 'battery/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 04:12:33 +0000 (14:12 +1000)]
Merge remote-tracking branch 'backlight/for-backlight-next'
Stephen Rothwell [Wed, 14 Apr 2021 04:10:10 +0000 (14:10 +1000)]
Merge remote-tracking branch 'mfd/for-mfd-next'
Stephen Rothwell [Wed, 14 Apr 2021 04:07:57 +0000 (14:07 +1000)]
Merge remote-tracking branch 'mmc/next'
Stephen Rothwell [Wed, 14 Apr 2021 04:06:37 +0000 (14:06 +1000)]
Merge remote-tracking branch 'pcmcia/pcmcia-next'
Stephen Rothwell [Wed, 14 Apr 2021 04:04:29 +0000 (14:04 +1000)]
Merge remote-tracking branch 'device-mapper/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:50:01 +0000 (13:50 +1000)]
Merge remote-tracking branch 'block/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:47:51 +0000 (13:47 +1000)]
Merge remote-tracking branch 'input/next'
Stephen Rothwell [Wed, 14 Apr 2021 03:46:04 +0000 (13:46 +1000)]
Merge remote-tracking branch 'modules/modules-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:43:19 +0000 (13:43 +1000)]
Merge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:40:32 +0000 (13:40 +1000)]
Merge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:37:40 +0000 (13:37 +1000)]
Merge remote-tracking branch 'regmap/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:36:02 +0000 (13:36 +1000)]
Merge remote-tracking branch 'etnaviv/etnaviv/next'
Stephen Rothwell [Wed, 14 Apr 2021 03:34:43 +0000 (13:34 +1000)]
Merge remote-tracking branch 'imx-drm/imx-drm/next'
# Conflicts:
# drivers/gpu/drm/imx/ipuv3-plane.c
Stephen Rothwell [Wed, 14 Apr 2021 03:33:05 +0000 (13:33 +1000)]
Merge remote-tracking branch 'drm-tegra/drm/tegra/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:31:35 +0000 (13:31 +1000)]
Merge remote-tracking branch 'drm-intel/for-linux-next'
# Conflicts:
# drivers/gpu/drm/i915/display/vlv_dsi.c
Stephen Rothwell [Wed, 14 Apr 2021 03:30:04 +0000 (13:30 +1000)]
Merge remote-tracking branch 'amdgpu/drm-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:15:11 +0000 (13:15 +1000)]
Merge remote-tracking branch 'drm/drm-next'
Stephen Rothwell [Wed, 14 Apr 2021 03:12:33 +0000 (13:12 +1000)]
Merge remote-tracking branch 'crypto/master'
Stephen Rothwell [Wed, 14 Apr 2021 03:10:55 +0000 (13:10 +1000)]
Merge remote-tracking branch 'spi-nor/spi-nor/next'