linux_dsm_epyc7002/arch/c6x/include/asm
Masahiro Yamada 3d9683cf3b KVM: export <linux/kvm_para.h> and <asm/kvm_para.h> iif KVM is supported
I do not see any consistency about headers_install of <linux/kvm_para.h>
and <asm/kvm_para.h>.

According to my analysis of Linux 5.1-rc1, there are 3 groups:

 [1] Both <linux/kvm_para.h> and <asm/kvm_para.h> are exported

    alpha, arm, hexagon, mips, powerpc, s390, sparc, x86

 [2] <asm/kvm_para.h> is exported, but <linux/kvm_para.h> is not

    arc, arm64, c6x, h8300, ia64, m68k, microblaze, nios2, openrisc,
    parisc, sh, unicore32, xtensa

 [3] Neither <linux/kvm_para.h> nor <asm/kvm_para.h> is exported

    csky, nds32, riscv

This does not match to the actual KVM support. At least, [2] is
half-baked.

Nor do arch maintainers look like they care about this. For example,
commit 0add53713b ("microblaze: Add missing kvm_para.h to Kbuild")
exported <asm/kvm_para.h> to user-space in order to fix an in-kernel
build error.

We have two ways to make this consistent:

 [A] export both <linux/kvm_para.h> and <asm/kvm_para.h> for all
     architectures, irrespective of the KVM support

 [B] Match the header export of <linux/kvm_para.h> and <asm/kvm_para.h>
     to the KVM support

My first attempt was [A] because the code looks cleaner, but Paolo
suggested [B].

So, this commit goes with [B].

For most architectures, <asm/kvm_para.h> was moved to the kernel-space.
I changed include/uapi/linux/Kbuild so that it checks generated
asm/kvm_para.h as well as check-in ones.

After this commit, there will be two groups:

 [1] Both <linux/kvm_para.h> and <asm/kvm_para.h> are exported

    arm, arm64, mips, powerpc, s390, x86

 [2] Neither <linux/kvm_para.h> nor <asm/kvm_para.h> is exported

    alpha, arc, c6x, csky, h8300, hexagon, ia64, m68k, microblaze,
    nds32, nios2, openrisc, parisc, riscv, sh, sparc, unicore32, xtensa

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2019-03-28 17:27:42 +01:00
..
asm-offsets.h C6X: headers 2011-10-06 19:48:20 -04:00
bitops.h fls: change parameter to unsigned int 2019-01-04 13:13:46 -08:00
bug.h Disintegrate asm/system.h for C6X 2012-03-28 18:30:02 +01:00
cache.h c6x: fix build failure caused by cache.h 2014-03-04 17:21:58 -05:00
cacheflush.h C6X: cache control 2011-10-06 19:48:10 -04:00
checksum.h ipv4: Update parameters for csum_tcpudp_magic to their original types 2016-03-13 23:55:13 -04:00
clock.h c6x: Fix misspellings in comments. 2016-04-18 12:45:53 +02:00
cmpxchg.h locking/cmpxchg, arch: Remove tas() definitions 2015-12-04 11:39:51 +01:00
delay.h C6X: headers 2011-10-06 19:48:20 -04:00
dscr.h C6X: DSCR - Device State Configuration Registers 2011-10-06 19:48:36 -04:00
elf.h default SET_PERSONALITY() in linux/elf.h 2013-02-26 02:46:08 -05:00
flat.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ftrace.h C6X: headers 2011-10-06 19:48:20 -04:00
hardirq.h C6X: interrupt handling 2011-10-06 19:47:54 -04:00
irq.h C6X: remove dependence on legacy IRQs 2012-07-18 23:49:40 -04:00
irqflags.h add memory barrier to arch_local_irq_restore 2013-04-09 15:35:46 -04:00
Kbuild KVM: export <linux/kvm_para.h> and <asm/kvm_para.h> iif KVM is supported 2019-03-28 17:27:42 +01:00
linkage.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
megamod-pic.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
module.h Make most arch asm/module.h files use asm-generic/module.h 2012-09-28 14:31:03 +09:30
page.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pgtable.h arch/c6x/include/asm/pgtable.h: define dummy pgprot_writecombine for !MMU 2015-03-12 18:46:08 -07:00
processor.h treewide: remove current_text_addr 2018-10-31 08:54:12 -07:00
procinfo.h C6X: headers 2011-10-06 19:48:20 -04:00
ptrace.h UAPI: (Scripted) Disintegrate arch/c6x/include/asm 2012-10-09 14:56:38 -04:00
sections.h c6x: use common built-in dtb support 2018-10-02 09:22:49 -05:00
setup.h c6x: use generic dma_noncoherent_ops 2018-05-19 08:46:12 +02:00
soc.h C6X: general SoC support 2011-10-06 19:48:26 -04:00
special_insns.h Disintegrate asm/system.h for C6X 2012-03-28 18:30:02 +01:00
string.h C6X: headers 2011-10-06 19:48:20 -04:00
switch_to.h Disintegrate asm/system.h for C6X 2012-03-28 18:30:02 +01:00
syscall.h C6X: headers 2011-10-06 19:48:20 -04:00
syscalls.h c6x: sanitize copy_thread(), get rid of clone(2) wrapper, switch to generic clone() 2012-11-28 23:43:39 -05:00
thread_info.h Construct init thread stack in the linker script rather than by union 2018-01-09 23:21:02 +00:00
timer64.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
timex.h C6X: time management 2011-10-06 19:47:51 -04:00
tlb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
traps.h C6X: build infrastructure 2011-10-06 19:48:02 -04:00
uaccess.h c6x: switch to RAW_COPY_USER 2017-03-28 18:23:28 -04:00
unaligned.h C6X: headers 2011-10-06 19:48:20 -04:00