A bunch of one-liners (except the s390 one).
The two more serious bugs ("KVM: SVM: Fix CPL export via SS.DPL" and
 "KVM: s390: add sie.h uapi header file to Kbuild and remove header
 dependency") were introduced in the 3.16 merge window.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTso6OAAoJEBvWZb6bTYbyB5IP/j/1d0hKsVjOGMco+dJ3uwjh
 X2gYBVxT3Nm9fyjAjSM6OjbFF2mj9zFNEGu0NvEaDnIlWtifvtXckFB1asp/o3/M
 UTbeaaN5US9Ou9W87KpJQLp7Wp9ENMgXeFsywpf9qMNyV04OHSP5cCwIspShCkNH
 r21oEwgvrnc4Trh4oBVUaykuPuU4mzAMBSiXxbQWVXkkPYBVBjGYNzdas7K3EfS9
 YmY1NgS1HDrUvRuM0b3guHqEizA717xFxpVpXAYhuxRqb1fRWMDuIy7q21hEoXxE
 RtuFjztfpAWIgK9O2j4mTuqR32nedzsieVMzF486oMPXRrUs+oQ16/AYV7K5eOZF
 Q1QJ5zx7890ncfxjXYMdUTI7d5sDFCc7F3DmRwtWh1jYrsNh8p+VRDTbNdmiNuIa
 1wXkoNpTsFHidXA6Uhl2pfI+o9OOWleEP3bB746RanS4bk54cDrx6UK2gJK6MMHl
 bekjzQrXRlh3qN1mqS+nMShq/vd2G6cCG0Y9ez8/aHrJoU5DPIOQ7IcOt2IZGtwZ
 MiBZAoWgHuYpEV4tXzqjHQy8IAddvGnM3RqWfNc0XLlVwcKosdI4fusg8wKnR02Z
 sLYRfe5BTnHG/ieIlx/iQmRXN04hhIUJiggFZrLizGemGYi16SaN/ixwb4YoA3nH
 ksZxlGKUi9SUftnv0Ph6
 =Rjb4
 -----END PGP SIGNATURE-----
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Pull KVM fixes from Paolo Bonzini:
 "A bunch of one-liners (except the s390 one).
  The two more serious bugs ("KVM: SVM: Fix CPL export via SS.DPL" and
  "KVM: s390: add sie.h uapi header file to Kbuild and remove header
  dependency") were introduced in the 3.16 merge window"
* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM: SVM: Fix CPL export via SS.DPL
  KVM: s390: add sie.h uapi header file to Kbuild and remove header dependency
  MIPS: KVM: Fix memory leak on VCPU
  KVM: x86: preserve the high 32-bits of the PAT register
  kvm: fix wrong address when writing Hyper-V tsc page
  KVM: x86: Increase the number of fixed MTRR regs to 10
	
	
This commit is contained in:
		
				commit
				
					
						4f23174981
					
				
			
		
					 6 changed files with 18 additions and 17 deletions
				
			
		| 
						 | 
					@ -384,6 +384,7 @@ void kvm_arch_vcpu_free(struct kvm_vcpu *vcpu)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	kfree(vcpu->arch.guest_ebase);
 | 
						kfree(vcpu->arch.guest_ebase);
 | 
				
			||||||
	kfree(vcpu->arch.kseg0_commpage);
 | 
						kfree(vcpu->arch.kseg0_commpage);
 | 
				
			||||||
 | 
						kfree(vcpu);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu)
 | 
					void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,6 +36,7 @@ header-y += signal.h
 | 
				
			||||||
header-y += socket.h
 | 
					header-y += socket.h
 | 
				
			||||||
header-y += sockios.h
 | 
					header-y += sockios.h
 | 
				
			||||||
header-y += sclp_ctl.h
 | 
					header-y += sclp_ctl.h
 | 
				
			||||||
 | 
					header-y += sie.h
 | 
				
			||||||
header-y += stat.h
 | 
					header-y += stat.h
 | 
				
			||||||
header-y += statfs.h
 | 
					header-y += statfs.h
 | 
				
			||||||
header-y += swab.h
 | 
					header-y += swab.h
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,8 +1,6 @@
 | 
				
			||||||
#ifndef _UAPI_ASM_S390_SIE_H
 | 
					#ifndef _UAPI_ASM_S390_SIE_H
 | 
				
			||||||
#define _UAPI_ASM_S390_SIE_H
 | 
					#define _UAPI_ASM_S390_SIE_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <asm/sigp.h>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#define diagnose_codes						\
 | 
					#define diagnose_codes						\
 | 
				
			||||||
	{ 0x10, "DIAG (0x10) release pages" },			\
 | 
						{ 0x10, "DIAG (0x10) release pages" },			\
 | 
				
			||||||
	{ 0x44, "DIAG (0x44) time slice end" },			\
 | 
						{ 0x44, "DIAG (0x44) time slice end" },			\
 | 
				
			||||||
| 
						 | 
					@ -14,17 +12,17 @@
 | 
				
			||||||
	{ 0x501, "DIAG (0x501) KVM breakpoint" }
 | 
						{ 0x501, "DIAG (0x501) KVM breakpoint" }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define sigp_order_codes					\
 | 
					#define sigp_order_codes					\
 | 
				
			||||||
	{ SIGP_SENSE, "SIGP sense" },					\
 | 
						{ 0x01, "SIGP sense" },					\
 | 
				
			||||||
	{ SIGP_EXTERNAL_CALL, "SIGP external call" },			\
 | 
						{ 0x02, "SIGP external call" },				\
 | 
				
			||||||
	{ SIGP_EMERGENCY_SIGNAL, "SIGP emergency signal" },		\
 | 
						{ 0x03, "SIGP emergency signal" },			\
 | 
				
			||||||
	{ SIGP_STOP, "SIGP stop" },					\
 | 
						{ 0x05, "SIGP stop" },					\
 | 
				
			||||||
	{ SIGP_STOP_AND_STORE_STATUS, "SIGP stop and store status" },	\
 | 
						{ 0x06, "SIGP restart" },				\
 | 
				
			||||||
	{ SIGP_SET_ARCHITECTURE, "SIGP set architecture" },		\
 | 
						{ 0x09, "SIGP stop and store status" },			\
 | 
				
			||||||
	{ SIGP_SET_PREFIX, "SIGP set prefix" },				\
 | 
						{ 0x0b, "SIGP initial cpu reset" },			\
 | 
				
			||||||
	{ SIGP_SENSE_RUNNING, "SIGP sense running" },			\
 | 
						{ 0x0d, "SIGP set prefix" },				\
 | 
				
			||||||
	{ SIGP_RESTART, "SIGP restart" },				\
 | 
						{ 0x0e, "SIGP store status at address" },		\
 | 
				
			||||||
	{ SIGP_INITIAL_CPU_RESET, "SIGP initial cpu reset" },		\
 | 
						{ 0x12, "SIGP set architecture" },			\
 | 
				
			||||||
	{ SIGP_STORE_STATUS_AT_ADDRESS, "SIGP store status at address" }
 | 
						{ 0x15, "SIGP sense running" }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define icpt_prog_codes						\
 | 
					#define icpt_prog_codes						\
 | 
				
			||||||
	{ 0x0001, "Prog Operation" },				\
 | 
						{ 0x0001, "Prog Operation" },				\
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -95,7 +95,7 @@ static inline gfn_t gfn_to_index(gfn_t gfn, gfn_t base_gfn, int level)
 | 
				
			||||||
#define KVM_REFILL_PAGES 25
 | 
					#define KVM_REFILL_PAGES 25
 | 
				
			||||||
#define KVM_MAX_CPUID_ENTRIES 80
 | 
					#define KVM_MAX_CPUID_ENTRIES 80
 | 
				
			||||||
#define KVM_NR_FIXED_MTRR_REGION 88
 | 
					#define KVM_NR_FIXED_MTRR_REGION 88
 | 
				
			||||||
#define KVM_NR_VAR_MTRR 8
 | 
					#define KVM_NR_VAR_MTRR 10
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define ASYNC_PF_PER_VCPU 64
 | 
					#define ASYNC_PF_PER_VCPU 64
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -461,7 +461,7 @@ struct kvm_vcpu_arch {
 | 
				
			||||||
	bool nmi_injected;    /* Trying to inject an NMI this entry */
 | 
						bool nmi_injected;    /* Trying to inject an NMI this entry */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	struct mtrr_state_type mtrr_state;
 | 
						struct mtrr_state_type mtrr_state;
 | 
				
			||||||
	u32 pat;
 | 
						u64 pat;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	unsigned switch_db_regs;
 | 
						unsigned switch_db_regs;
 | 
				
			||||||
	unsigned long db[KVM_NR_DB_REGS];
 | 
						unsigned long db[KVM_NR_DB_REGS];
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1462,6 +1462,7 @@ static void svm_get_segment(struct kvm_vcpu *vcpu,
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		if (var->unusable)
 | 
							if (var->unusable)
 | 
				
			||||||
			var->db = 0;
 | 
								var->db = 0;
 | 
				
			||||||
 | 
							var->dpl = to_svm(vcpu)->vmcb->save.cpl;
 | 
				
			||||||
		break;
 | 
							break;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1898,7 +1898,7 @@ static int set_msr_hyperv_pw(struct kvm_vcpu *vcpu, u32 msr, u64 data)
 | 
				
			||||||
		if (!(data & HV_X64_MSR_TSC_REFERENCE_ENABLE))
 | 
							if (!(data & HV_X64_MSR_TSC_REFERENCE_ENABLE))
 | 
				
			||||||
			break;
 | 
								break;
 | 
				
			||||||
		gfn = data >> HV_X64_MSR_TSC_REFERENCE_ADDRESS_SHIFT;
 | 
							gfn = data >> HV_X64_MSR_TSC_REFERENCE_ADDRESS_SHIFT;
 | 
				
			||||||
		if (kvm_write_guest(kvm, data,
 | 
							if (kvm_write_guest(kvm, gfn << HV_X64_MSR_TSC_REFERENCE_ADDRESS_SHIFT,
 | 
				
			||||||
			&tsc_ref, sizeof(tsc_ref)))
 | 
								&tsc_ref, sizeof(tsc_ref)))
 | 
				
			||||||
			return 1;
 | 
								return 1;
 | 
				
			||||||
		mark_page_dirty(kvm, gfn);
 | 
							mark_page_dirty(kvm, gfn);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue