Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4f231749 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
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
parents 16874b2c 9a630d15
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -384,6 +384,7 @@ void kvm_arch_vcpu_free(struct kvm_vcpu *vcpu)

	kfree(vcpu->arch.guest_ebase);
	kfree(vcpu->arch.kseg0_commpage);
	kfree(vcpu);
}

void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu)
+1 −0
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@ header-y += signal.h
header-y += socket.h
header-y += sockios.h
header-y += sclp_ctl.h
header-y += sie.h
header-y += stat.h
header-y += statfs.h
header-y += swab.h
+12 −14
Original line number Diff line number Diff line
#ifndef _UAPI_ASM_S390_SIE_H
#define _UAPI_ASM_S390_SIE_H

#include <asm/sigp.h>

#define diagnose_codes						\
	{ 0x10, "DIAG (0x10) release pages" },			\
	{ 0x44, "DIAG (0x44) time slice end" },			\
@@ -14,17 +12,17 @@
	{ 0x501, "DIAG (0x501) KVM breakpoint" }

#define sigp_order_codes					\
	{ SIGP_SENSE, "SIGP sense" },					\
	{ SIGP_EXTERNAL_CALL, "SIGP external call" },			\
	{ SIGP_EMERGENCY_SIGNAL, "SIGP emergency signal" },		\
	{ SIGP_STOP, "SIGP stop" },					\
	{ SIGP_STOP_AND_STORE_STATUS, "SIGP stop and store status" },	\
	{ SIGP_SET_ARCHITECTURE, "SIGP set architecture" },		\
	{ SIGP_SET_PREFIX, "SIGP set prefix" },				\
	{ SIGP_SENSE_RUNNING, "SIGP sense running" },			\
	{ SIGP_RESTART, "SIGP restart" },				\
	{ SIGP_INITIAL_CPU_RESET, "SIGP initial cpu reset" },		\
	{ SIGP_STORE_STATUS_AT_ADDRESS, "SIGP store status at address" }
	{ 0x01, "SIGP sense" },					\
	{ 0x02, "SIGP external call" },				\
	{ 0x03, "SIGP emergency signal" },			\
	{ 0x05, "SIGP stop" },					\
	{ 0x06, "SIGP restart" },				\
	{ 0x09, "SIGP stop and store status" },			\
	{ 0x0b, "SIGP initial cpu reset" },			\
	{ 0x0d, "SIGP set prefix" },				\
	{ 0x0e, "SIGP store status at address" },		\
	{ 0x12, "SIGP set architecture" },			\
	{ 0x15, "SIGP sense running" }

#define icpt_prog_codes						\
	{ 0x0001, "Prog Operation" },				\
+2 −2
Original line number Diff line number Diff line
@@ -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_MAX_CPUID_ENTRIES 80
#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

@@ -461,7 +461,7 @@ struct kvm_vcpu_arch {
	bool nmi_injected;    /* Trying to inject an NMI this entry */

	struct mtrr_state_type mtrr_state;
	u32 pat;
	u64 pat;

	unsigned switch_db_regs;
	unsigned long db[KVM_NR_DB_REGS];
+1 −0
Original line number Diff line number Diff line
@@ -1462,6 +1462,7 @@ static void svm_get_segment(struct kvm_vcpu *vcpu,
		 */
		if (var->unusable)
			var->db = 0;
		var->dpl = to_svm(vcpu)->vmcb->save.cpl;
		break;
	}
}
Loading