OrangePi_CM5/include
Mike Kravetz 70c3547e36 hugetlbfs: add hugetlbfs_fallocate()
This is based on the shmem version, but it has diverged quite a bit.  We
have no swap to worry about, nor the new file sealing.  Add
synchronication via the fault mutex table to coordinate page faults,
fallocate allocation and fallocate hole punch.

What this allows us to do is move physical memory in and out of a
hugetlbfs file without having it mapped.  This also gives us the ability
to support MADV_REMOVE since it is currently implemented using
fallocate().  MADV_REMOVE lets madvise() remove pages from the middle of
a hugetlbfs file, which wasn't possible before.

hugetlbfs fallocate only operates on whole huge pages.

Based on code by Dave Hansen.

Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com>
Reviewed-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Acked-by: Hillf Danton <hillf.zj@alibaba-inc.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Aneesh Kumar <aneesh.kumar@linux.vnet.ibm.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-09-08 15:35:28 -07:00
..
acpi Merge branch 'pm-cpufreq' 2015-09-01 15:52:35 +02:00
asm-generic Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-09-03 15:46:07 -07:00
clocksource
…
crypto Merge branch 'for-4.3/sg' of git://git.kernel.dk/linux-block 2015-09-02 13:22:38 -07:00
drm Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2015-09-04 15:49:32 -07:00
dt-bindings media updates for v4.3-rc1 2015-09-05 18:21:14 -07:00
keys
…
kvm
…
linux hugetlbfs: add hugetlbfs_fallocate() 2015-09-08 15:35:28 -07:00
math-emu
…
media media updates for v4.3-rc1 2015-09-05 18:21:14 -07:00
memory
…
misc cxl: Allow the kernel to trust that an image won't change on PERST. 2015-08-14 21:32:07 +10:00
net memcg: move memcg_proto_active from sock.h 2015-09-08 15:35:28 -07:00
pcmcia
…
ras tracing: add trace event for memory-failure 2015-06-24 17:49:43 -07:00
rdma core: Remove the ib_reg_phys_mr() and ib_rereg_phys_mr() verbs 2015-08-05 16:21:28 -04:00
rxrpc
…
scsi SCSI misc on 20150901 2015-09-02 12:22:54 -07:00
soc ARM: tegra: Memory controller updates for v4.3-rc1 2015-08-20 18:50:17 -07:00
sound ALSA: hda - Fix missing inline for dummy snd_hdac_set_codec_wakeup() 2015-09-02 12:24:55 +02:00
target iscsi-target: Fix iscsit_start_kthreads failure OOPs 2015-07-24 14:19:43 -07:00
trace media updates for v4.3-rc1 2015-09-05 18:21:14 -07:00
uapi NFS client updates for Linux 4.3 2015-09-07 14:02:24 -07:00
video Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2015-09-04 15:49:32 -07:00
xen xen-netback: add support for multicast control 2015-09-02 11:45:00 -07:00
Kbuild
…