]> git.baikalelectronics.ru Git - kernel.git/commit
mm: Add a vm_special_mapping.fault() method
authorAndy Lutomirski <luto@amacapital.net>
Wed, 30 Dec 2015 04:12:19 +0000 (20:12 -0800)
committerIngo Molnar <mingo@kernel.org>
Tue, 12 Jan 2016 10:59:34 +0000 (11:59 +0100)
commitdb1a5c47280fa56517bd75a3f8c66c0213530ccc
tree5874745ea7393545d7bb1a1d0dd3c7961dd59dd6
parentfca396283f2a2b83f38c23476a05c6c2706b38e7
mm: Add a vm_special_mapping.fault() method

Requiring special mappings to give a list of struct pages is
inflexible: it prevents sane use of IO memory in a special
mapping, it's inefficient (it requires arch code to initialize a
list of struct pages, and it requires the mm core to walk the
entire list just to figure out how long it is), and it prevents
arch code from doing anything fancy when a special mapping fault
occurs.

Add a .fault method as an alternative to filling in a .pages
array.

Looks-OK-to: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Andy Lutomirski <luto@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Quentin Casasnovas <quentin.casasnovas@oracle.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/a26d1677c0bc7e774c33f469451a78ca31e9e6af.1451446564.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
include/linux/mm_types.h
mm/mmap.c