# git rev-parse -q --verify 413200579cd0a250a328ff150497356bf60f1eeb^{commit} 413200579cd0a250a328ff150497356bf60f1eeb already have revision, skipping fetch # git checkout -q -f -B kisskb 413200579cd0a250a328ff150497356bf60f1eeb # git clean -qxdf # < git log -1 # commit 413200579cd0a250a328ff150497356bf60f1eeb # Author: Alexey Kardashevskiy # Date: Fri Sep 3 15:15:25 2021 +1000 # # KVM: PPC: Merge powerpc's debugfs entry content into generic entry # # At the moment KVM on PPC creates 3 types of entries under the kvm debugfs: # 1) "%pid-%fd" per a KVM instance (for all platforms); # 2) "vm%pid" (for PPC Book3s HV KVM); # 3) "vm%u_vcpu%u_timing" (for PPC Book3e KVM). # # The problem with this is that multiple VMs per process is not allowed for # 2) and 3) which makes it possible for userspace to trigger errors when # creating duplicated debugfs entries. # # This merges all these onto 1). # # This defines kvm_arch_create_kvm_debugfs() similar to # kvm_arch_create_vcpu_debugfs(). # # This defines 2 hooks in kvmppc_ops that allow specific KVM implementations # add necessary entries, this adds the _e500 suffix to # kvmppc_create_vcpu_debugfs_e500() to make it clear what platform it is for. # # This makes use of already existing kvm_arch_create_vcpu_debugfs() on PPC. # # This removes no more used debugfs_dir pointers from PPC kvm_arch structs. # # This stops removing vcpu entries as once created vcpus stay around # for the entire life of a VM and removed when the KVM instance is closed, # see d56f5136b010 ("KVM: let kvm_destroy_vm_debugfs clean up vCPU # debugfs directories". # # Suggested-by: Fabiano Rosas # Signed-off-by: Alexey Kardashevskiy # --- # Changes: # v3: # * reworked commit log, especially, the bit about removing vcpus # # v2: # * handled powerpc-booke # * s/kvm/vm/ in arch hooks # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 413200579cd0a250a328ff150497356bf60f1eeb # < make -s -j 80 ARCH=x86 O=/kisskb/build/aik_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_SAMPLES=n # < make -s -j 80 ARCH=x86 O=/kisskb/build/aik_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- help # make -s -j 80 ARCH=x86 O=/kisskb/build/aik_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- olddefconfig # make -s -j 80 ARCH=x86 O=/kisskb/build/aik_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- /kisskb/src/arch/x86/kvm/../../../virt/kvm/kvm_main.c: In function 'kvm_create_vm_debugfs': /kisskb/src/arch/x86/kvm/../../../virt/kvm/kvm_main.c:997:8: error: implicit declaration of function 'kvm_arch_create_vm_debugfs'; did you mean 'kvm_arch_create_vcpu_debugfs'? [-Werror=implicit-function-declaration] ret = kvm_arch_create_vm_debugfs(kvm); ^~~~~~~~~~~~~~~~~~~~~~~~~~ kvm_arch_create_vcpu_debugfs cc1: all warnings being treated as errors make[3]: *** [/kisskb/src/scripts/Makefile.build:287: arch/x86/kvm/../../../virt/kvm/kvm_main.o] Error 1 make[3]: *** Waiting for unfinished jobs.... make[2]: *** [/kisskb/src/scripts/Makefile.build:549: arch/x86/kvm] Error 2 make[2]: *** Waiting for unfinished jobs.... /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-objdump: mm/kfence/kfence_test.o: unable to initialize decompress status for section .debug_info /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-objdump: mm/kfence/kfence_test.o: unable to initialize decompress status for section .debug_info /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-objdump: mm/kfence/kfence_test.o: File format not recognized make[1]: *** [/kisskb/src/Makefile:1846: arch/x86] Error 2 make[1]: *** Waiting for unfinished jobs.... make: *** [Makefile:219: __sub-make] Error 2 Command 'make -s -j 80 ARCH=x86 O=/kisskb/build/aik_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/aik_x86-allmodconfig_x86_64-gcc8 # Build took: 0:27:39.082916