linux/arch/x86/include/asm
Naoya Horiguchi ab6e3d0939 mm: soft-dirty: keep soft-dirty bits over thp migration
Soft dirty bit is designed to keep tracked over page migration.  This
patch makes it work in the same manner for thp migration too.

Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: Zi Yan <zi.yan@cs.rutgers.edu>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Anshuman Khandual <khandual@linux.vnet.ibm.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: David Nellans <dnellans@nvidia.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Michal Hocko <mhocko@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-09-08 18:26:45 -07:00
..
crypto crypto: glue_helper - remove the le128_gf128mul_x_ble function 2017-04-05 21:58:37 +08:00
e820 x86/boot/e820: Add support to determine the E820 type of an address 2017-07-18 11:38:01 +02:00
fpu KVM, pkeys: do not use PKRU value in vcpu->arch.guest_fpu.state 2017-08-25 09:28:37 +02:00
numachip
trace Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-07 09:25:15 -07:00
uv x86/mm: Pass flush_tlb_info to flush_tlb_others() etc 2017-06-05 09:59:35 +02:00
xen xen: fixes and features for 4.14 2017-09-07 10:24:21 -07:00
a.out-core.h sched/headers: Prepare to remove the <linux/mm_types.h> dependency from <linux/sched.h> 2017-03-02 08:42:37 +01:00
acenv.h
acpi.h acpi, x86/mm: Remove encryption mask from ACPI page protection type 2017-07-30 12:09:12 +02:00
agp.h
alternative-asm.h
alternative.h
amd_nb.h x86/mce: Convert threshold_bank.cpus from atomic_t to refcount_t 2017-05-21 21:55:13 +02:00
apb_timer.h
apic.h x86/apic: Add irq_data argument to apic->cpu_mask_to_apicid() 2017-06-22 18:21:22 +02:00
apic_flat_64.h
apicdef.h
apm.h
arch_hweight.h
archrandom.h
asm-offsets.h
asm-prototypes.h
asm.h locking/refcounts, x86/asm: Implement fast refcount overflow protection 2017-08-17 10:40:26 +02:00
atomic.h locking/atomic/x86: Un-macro-ify atomic ops implementation 2017-06-28 18:55:55 +02:00
atomic64_32.h locking/atomic/x86: Un-macro-ify atomic ops implementation 2017-06-28 18:55:55 +02:00
atomic64_64.h locking/atomic/x86: Use 's64 *' for 'old' argument of atomic64_try_cmpxchg() 2017-06-28 18:55:55 +02:00
barrier.h
bios_ebda.h
bitops.h
boot.h
bootparam_utils.h
bug.h debug: Fix WARN_ON_ONCE() for modules 2017-07-20 12:31:04 +02:00
bugs.h
cache.h
cacheflush.h treewide: decouple cacheflush.h and set_memory.h 2017-05-08 17:15:14 -07:00
calgary.h
ce4100.h
checksum.h
checksum_32.h
checksum_64.h
clocksource.h x86/vdso: Add VCLOCK_HVCLOCK vDSO clock read method 2017-03-11 14:47:28 +01:00
cmdline.h x86/boot: Add early cmdline parsing for options with arguments 2017-07-18 11:38:06 +02:00
cmpxchg.h locking/atomic/x86: Use 's64 *' for 'old' argument of atomic64_try_cmpxchg() 2017-06-28 18:55:55 +02:00
cmpxchg_32.h
cmpxchg_64.h
compat.h take compat_sys_old_getrlimit() to native syscall 2017-05-27 15:38:06 -04:00
cpu.h
cpu_device_id.h
cpufeature.h
cpufeatures.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-04 12:21:28 -07:00
cpumask.h
crash.h
current.h
debugreg.h
delay.h
desc.h x86/idt: Hide set_intr_gate() 2017-08-29 12:07:29 +02:00
desc_defs.h x86/ldttss: Clean up 32-bit descriptors 2017-08-29 12:07:25 +02:00
device.h
disabled-features.h x86/mm: Disable PCID on 32-bit kernels 2017-07-05 10:52:57 +02:00
div64.h
dma-mapping.h x86, swiotlb: Add memory encryption support 2017-07-18 11:38:03 +02:00
dma.h
dmi.h x86, mpparse, x86/acpi, x86/PCI, x86/dmi, SFI: Use memremap() for RAM mappings 2017-07-18 11:37:58 +02:00
dwarf2.h
edac.h
efi.h x86/efi: move asmlinkage before return type 2017-07-12 16:26:04 -07:00
elf.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-04 12:21:28 -07:00
emergency-restart.h
entry_arch.h x86/ipi: Make platform IPI depend on APIC 2017-08-29 11:42:29 +02:00
espfix.h
exec.h
export.h
extable.h x86/debug: Handle early WARN_ONs proper 2017-06-12 21:17:48 +02:00
fb.h
fixmap.h x86/mm: Extend early_memremap() support with additional attrs 2017-07-18 11:38:00 +02:00
floppy.h
frame.h
ftrace.h
futex.h futex: Remove duplicated code and fix undefined behaviour 2017-08-25 22:49:59 +02:00
gart.h
genapic.h
geode.h
hardirq.h x86: irq: Define a global vector for nested posted interrupts 2017-07-26 18:57:45 +02:00
highmem.h
hpet.h
hugetlb.h mm/hugetlb: clean up ARCH_HAS_GIGANTIC_PAGE 2017-07-06 16:24:33 -07:00
hw_breakpoint.h
hw_irq.h x86/idt: Remove the tracing IDT completely 2017-08-29 11:42:28 +02:00
hypertransport.h
hypervisor.h x86: provide an init_mem_mapping hypervisor hook 2017-08-11 15:50:21 +02:00
i8259.h
ia32.h
ia32_unistd.h
imr.h
inat.h
inat_types.h
init.h x86/mm, kexec: Allow kexec to be used with SME 2017-07-18 11:38:04 +02:00
insn.h
inst.h
intel-family.h x86/cpu: Keep model defines sorted by model number 2017-04-14 21:22:38 +02:00
intel-mid.h
intel_mid_vrtc.h
intel_pmc_ipc.h platform/x86: intel_pmc_ipc: use gcr mem base for S0ix counter read 2017-04-28 21:51:28 +03:00
intel_pt.h
intel_punit_ipc.h
intel_rdt_sched.h x86/intel_rdt: Modify the intel_pqr_state for better performance 2017-08-14 11:47:47 +02:00
intel_scu_ipc.h platform/x86: intel_scu_ipc: Introduce intel_scu_ipc_raw_command() 2017-04-13 10:16:04 -07:00
intel_telemetry.h
io.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-04 12:21:28 -07:00
io_apic.h
iomap.h
iommu.h x86: remove arch specific dma_supported implementation 2017-06-28 06:54:46 -07:00
iommu_table.h
iosf_mbi.h x86/platform/intel/iosf_mbi: Add a PMIC bus access notifier 2017-03-02 15:46:25 +01:00
ipi.h
irq.h x86/irq: Remove duplicated used_vectors definition 2017-08-29 11:42:21 +02:00
irq_regs.h
irq_remapping.h x86/msi: Remove unused remap irq domain interface 2017-06-22 18:21:11 +02:00
irq_vectors.h x86: irq: Define a global vector for nested posted interrupts 2017-07-26 18:57:45 +02:00
irq_work.h x86/irq_work: Make it depend on APIC 2017-08-29 11:42:30 +02:00
irqdomain.h
irqflags.h
ist.h
jump_label.h
kasan.h x86/mm: Define virtual memory map for 5-level paging 2017-04-04 08:22:33 +02:00
kaslr.h
kbdleds.h
Kbuild
kdebug.h
kexec-bzimage64.h
kexec.h x86/mm, kexec: Fix memory corruption with SME on successive kexecs 2017-07-30 12:09:12 +02:00
kgdb.h
kmap_types.h
kmemcheck.h
kprobes.h x86: mark kprobe templates as character arrays, not single characters 2017-07-20 11:34:47 -07:00
kvm_emulate.h KVM: async_pf: Force a nested vmexit if the injected #PF is async_pf 2017-07-14 14:26:16 +02:00
kvm_guest.h
kvm_host.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-04 12:21:28 -07:00
kvm_page_track.h KVM: x86: cleanup the page tracking SRCU instance 2017-03-28 14:08:02 +02:00
kvm_para.h
kvmclock.h
linkage.h
livepatch.h
local.h
local64.h
mach_timer.h
mach_traps.h
math_emu.h
mc146818rtc.h
mce.h x86/mce: Get rid of register_mce_write_callback() 2017-06-14 07:32:07 +02:00
mem_encrypt.h x86/mm: Add support to make use of Secure Memory Encryption 2017-07-18 20:23:26 +02:00
microcode.h
microcode_amd.h
microcode_intel.h
misc.h
mmconfig.h
mmu.h x86/mm: Give each mm TLB flush generation a unique ID 2017-07-05 10:52:56 +02:00
mmu_context.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-04 12:21:28 -07:00
mmx.h
mmzone.h
mmzone_32.h
mmzone_64.h
module.h x86/unwind: Add the ORC unwinder 2017-07-26 13:18:20 +02:00
mpspec.h
mpspec_def.h
mpx.h x86/mpx: Do not allow MPX if we have mappings above 47-bit 2017-07-21 10:05:18 +02:00
mshyperv.h Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-07 09:25:15 -07:00
msi.h
msidef.h
msr-index.h x86/cpu/AMD: Add the Secure Memory Encryption CPU feature 2017-07-18 11:37:59 +02:00
msr-trace.h
msr.h
mtrr.h
mwait.h sched/headers: Prepare for new header dependencies before moving code to <linux/sched/idle.h> 2017-03-02 08:42:26 +01:00
nmi.h
nops.h
numa.h
numa_32.h
olpc.h
olpc_ofw.h
orc_lookup.h x86/unwind: Add the ORC unwinder 2017-07-26 13:18:20 +02:00
orc_types.h x86/unwind: Add the ORC unwinder 2017-07-26 13:18:20 +02:00
page.h
page_32.h
page_32_types.h
page_64.h x86/mm, mm/hwpoison: Clear PRESENT bit for kernel 1:1 mappings of poison pages 2017-08-17 10:30:49 +02:00
page_64_types.h x86/mm: Define virtual memory map for 5-level paging 2017-04-04 08:22:33 +02:00
page_types.h x86/mm: Provide general kernel support for memory encryption 2017-07-18 11:38:00 +02:00
paravirt.h x86/xen: Get rid of paravirt op adjust_exception_frame 2017-08-31 21:35:10 +02:00
paravirt_types.h x86/xen: Get rid of paravirt op adjust_exception_frame 2017-08-31 21:35:10 +02:00
parport.h
pat.h x86/mm/pat: Don't report PAT on CPUs that don't support it 2017-07-05 09:01:24 +02:00
pci-direct.h
pci-functions.h
pci.h x86/PCI: Remove duplicate defines 2017-06-28 22:32:55 +02:00
pci_64.h
pci_x86.h
percpu.h
perf_event.h
perf_event_p4.h
pgalloc.h x86/paravirt: Add 5-level support to the paravirt code 2017-04-04 08:22:34 +02:00
pgtable-2level.h mm, x86: add support for PUD-sized transparent hugepages 2017-02-24 17:46:54 -08:00
pgtable-2level_types.h x86/mm: Extend headers with basic definitions to support 5-level paging 2017-03-14 08:45:07 +01:00
pgtable-3level.h x86/mm/gup: Switch GUP to the generic get_user_page_fast() implementation 2017-06-13 08:56:50 +02:00
pgtable-3level_types.h x86/mm: Extend headers with basic definitions to support 5-level paging 2017-03-14 08:45:07 +01:00
pgtable.h mm: soft-dirty: keep soft-dirty bits over thp migration 2017-09-08 18:26:45 -07:00
pgtable_32.h x86/headers: Simplify asm/fixmap.h inclusion into asm/pgtable*.h 2017-03-21 08:21:17 +01:00
pgtable_32_types.h
pgtable_64.h mm: thp: enable thp migration in generic path 2017-09-08 18:26:45 -07:00
pgtable_64_types.h x86/espfix: Add support for 5-level paging 2017-04-04 08:22:34 +02:00
pgtable_types.h mm: x86: move _PAGE_SWP_SOFT_DIRTY from bit 7 to bit 1 2017-09-08 18:26:45 -07:00
pkeys.h x86/pkeys: Check against max pkey to avoid overflows 2017-03-01 10:51:50 +01:00
platform_sst_audio.h
pm-trace.h
pmc_core.h
posix_types.h
preempt.h
probe_roms.h
processor-cyrix.h
processor-flags.h x86/CPU: Align CR3 defines 2017-08-21 11:35:50 +02:00
processor.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-04 12:21:28 -07:00
prom.h
proto.h x86/xen: Get rid of paravirt op adjust_exception_frame 2017-08-31 21:35:10 +02:00
ptrace.h x86/asm/32: Fix regs_get_register() on segment registers 2017-08-10 13:14:58 +02:00
purgatory.h kexec, x86/purgatory: Unbreak it and clean it up 2017-03-10 20:55:09 +01:00
pvclock-abi.h
pvclock.h
qrwlock.h
qspinlock.h
qspinlock_paravirt.h
realmode.h x86/boot/realmode: Check for memory encryption on the APs 2017-07-18 11:38:04 +02:00
reboot.h x86/mce: Handle broadcasted MCE gracefully with kexec 2017-03-13 20:18:07 +01:00
reboot_fixups.h
refcount.h locking/refcounts, x86/asm: Implement fast refcount overflow protection 2017-08-17 10:40:26 +02:00
required-features.h x86/boot: Detect 5-level paging support 2017-04-04 08:22:33 +02:00
rio.h
rmwcc.h x86/asm: Add suffix macro for GEN_*_RMWcc() 2017-07-25 11:18:09 +02:00
rwsem.h
seccomp.h
sections.h
segment.h x86/idt: Move early IDT setup out of 32-bit asm 2017-08-29 12:07:26 +02:00
serial.h
set_memory.h x86/mm: Add support for changing the memory encryption attribute 2017-07-18 11:38:02 +02:00
setup.h treewide: Consolidate Apple DMI checks 2017-08-03 23:26:22 +02:00
setup_arch.h
shmparam.h
sigcontext.h
sigframe.h
sighandling.h
signal.h
simd.h
smap.h
smp.h x86/smp: Remove the redundant #ifdef CONFIG_SMP directive 2017-04-14 22:43:00 +02:00
sparsemem.h x86/mm: Define virtual memory map for 5-level paging 2017-04-04 08:22:33 +02:00
special_insns.h x86/mm: Split read_cr3() into read_cr3_pa() and __read_cr3() 2017-06-13 08:48:09 +02:00
spinlock.h
spinlock_types.h
sta2x11.h
stackprotector.h x86: ascii armor the x86_64 boot init stack canary 2017-07-12 16:26:03 -07:00
stacktrace.h
string.h
string_32.h include/linux/string.h: add the option of fortified string.h functions 2017-07-12 16:26:03 -07:00
string_64.h include/linux/string.h: add the option of fortified string.h functions 2017-07-12 16:26:03 -07:00
suspend.h
suspend_32.h
suspend_64.h x86/power/64: Use char arrays for asm function names 2017-06-22 03:10:12 +02:00
svm.h KVM: SVM: Enable Virtual VMLOAD VMSAVE feature 2017-07-12 22:38:30 +02:00
swiotlb.h
switch_to.h
sync_bitops.h
sys_ia32.h
syscall.h
syscalls.h
sysfb.h
tce.h
text-patching.h
thread_info.h x86/syscalls: Check address limit on user-mode return 2017-07-08 14:05:32 +02:00
time.h
timer.h x86/tsc: Remodel cyc2ns to use seqcount_latch() 2017-05-15 10:15:15 +02:00
timex.h
tlb.h x86/mm: Enable RCU based page table freeing (CONFIG_HAVE_RCU_TABLE_FREE=y) 2017-08-31 11:07:07 +02:00
tlbbatch.h x86/mm: Remove the UP asm/tlbflush.h code, always use the (formerly) SMP code 2017-06-05 09:59:44 +02:00
tlbflush.h x86/mm: Reinitialize TLB state on hotplug and resume 2017-09-06 20:12:57 -07:00
topology.h x86/topology: Remove the unused parent_node() macro 2017-07-27 10:53:00 +02:00
trace_clock.h
traps.h x86/xen: Get rid of paravirt op adjust_exception_frame 2017-08-31 21:35:10 +02:00
tsc.h
uaccess.h Merge branch 'x86-syscall-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-09-04 11:18:17 -07:00
uaccess_32.h x86: switch to RAW_COPY_USER 2017-03-29 12:06:28 -04:00
uaccess_64.h x86, uaccess: introduce copy_from_iter_flushcache for pmem / cache-bypass operations 2017-06-09 09:09:56 -07:00
unaligned.h
unistd.h Remove compat_sys_getdents64() 2017-04-17 12:52:22 -04:00
unwind.h x86/kconfig: Consolidate unwinders into multiple choice selection 2017-07-26 14:05:36 +02:00
unwind_hints.h x86/asm: Fix UNWIND_HINT_REGS macro for older binutils 2017-08-10 14:16:19 +02:00
uprobes.h
user.h
user32.h
user_32.h
user_64.h
vdso.h x86/vdso: Add VCLOCK_HVCLOCK vDSO clock read method 2017-03-11 14:47:28 +01:00
vga.h x86, drm, fbdev: Do not specify encrypted memory for video mappings 2017-07-18 11:38:04 +02:00
vgtod.h
virtext.h
vm86.h
vmx.h KVM: nVMX: support RDRAND and RDSEED exiting 2017-04-07 16:49:00 +02:00
vsyscall.h
vvar.h
word-at-a-time.h
x2apic.h
x86_init.h
xor.h
xor_32.h
xor_64.h
xor_avx.h