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

Commit e9cbde8c authored by Avi Kivity's avatar Avi Kivity
Browse files

KVM: ia64: fix build failures due to ia64/unsigned long mismatches



Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
parent c428dcc9
Loading
Loading
Loading
Loading
+4 −2
Original line number Original line Diff line number Diff line
@@ -247,7 +247,8 @@ void emulate_io_inst(struct kvm_vcpu *vcpu, u64 padr, u64 ma)
		vcpu_get_fpreg(vcpu, inst.M9.f2, &v);
		vcpu_get_fpreg(vcpu, inst.M9.f2, &v);
		/* Write high word. FIXME: this is a kludge!  */
		/* Write high word. FIXME: this is a kludge!  */
		v.u.bits[1] &= 0x3ffff;
		v.u.bits[1] &= 0x3ffff;
		mmio_access(vcpu, padr + 8, &v.u.bits[1], 8, ma, IOREQ_WRITE);
		mmio_access(vcpu, padr + 8, (u64 *)&v.u.bits[1], 8,
			    ma, IOREQ_WRITE);
		data = v.u.bits[0];
		data = v.u.bits[0];
		size = 3;
		size = 3;
	} else if (inst.M10.major == 7 && inst.M10.x6 == 0x3B) {
	} else if (inst.M10.major == 7 && inst.M10.x6 == 0x3B) {
@@ -265,7 +266,8 @@ void emulate_io_inst(struct kvm_vcpu *vcpu, u64 padr, u64 ma)


		/* Write high word.FIXME: this is a kludge!  */
		/* Write high word.FIXME: this is a kludge!  */
		v.u.bits[1] &= 0x3ffff;
		v.u.bits[1] &= 0x3ffff;
		mmio_access(vcpu, padr + 8, &v.u.bits[1], 8, ma, IOREQ_WRITE);
		mmio_access(vcpu, padr + 8, (u64 *)&v.u.bits[1],
			    8, ma, IOREQ_WRITE);
		data = v.u.bits[0];
		data = v.u.bits[0];
		size = 3;
		size = 3;
	} else if (inst.M10.major == 7 && inst.M10.x6 == 0x31) {
	} else if (inst.M10.major == 7 && inst.M10.x6 == 0x31) {
+3 −3
Original line number Original line Diff line number Diff line
@@ -461,7 +461,7 @@ void setreg(unsigned long regnum, unsigned long val,
u64 vcpu_get_gr(struct kvm_vcpu *vcpu, unsigned long reg)
u64 vcpu_get_gr(struct kvm_vcpu *vcpu, unsigned long reg)
{
{
	struct kvm_pt_regs *regs = vcpu_regs(vcpu);
	struct kvm_pt_regs *regs = vcpu_regs(vcpu);
	u64 val;
	unsigned long val;


	if (!reg)
	if (!reg)
		return 0;
		return 0;
@@ -469,7 +469,7 @@ u64 vcpu_get_gr(struct kvm_vcpu *vcpu, unsigned long reg)
	return val;
	return val;
}
}


void vcpu_set_gr(struct kvm_vcpu *vcpu, u64 reg, u64 value, int nat)
void vcpu_set_gr(struct kvm_vcpu *vcpu, unsigned long reg, u64 value, int nat)
{
{
	struct kvm_pt_regs *regs = vcpu_regs(vcpu);
	struct kvm_pt_regs *regs = vcpu_regs(vcpu);
	long sof = (regs->cr_ifs) & 0x7f;
	long sof = (regs->cr_ifs) & 0x7f;
@@ -1072,7 +1072,7 @@ void kvm_ttag(struct kvm_vcpu *vcpu, INST64 inst)
	vcpu_set_gr(vcpu, inst.M46.r1, tag, 0);
	vcpu_set_gr(vcpu, inst.M46.r1, tag, 0);
}
}


int vcpu_tpa(struct kvm_vcpu *vcpu, u64 vadr, u64 *padr)
int vcpu_tpa(struct kvm_vcpu *vcpu, u64 vadr, unsigned long *padr)
{
{
	struct thash_data *data;
	struct thash_data *data;
	union ia64_isr visr, pt_isr;
	union ia64_isr visr, pt_isr;
+7 −6
Original line number Original line Diff line number Diff line
@@ -686,14 +686,15 @@ static inline int highest_inservice_irq(struct kvm_vcpu *vcpu)
	return highest_bits((int *)&(VMX(vcpu, insvc[0])));
	return highest_bits((int *)&(VMX(vcpu, insvc[0])));
}
}


extern void vcpu_get_fpreg(struct kvm_vcpu *vcpu, u64 reg,
extern void vcpu_get_fpreg(struct kvm_vcpu *vcpu, unsigned long reg,
					struct ia64_fpreg *val);
					struct ia64_fpreg *val);
extern void vcpu_set_fpreg(struct kvm_vcpu *vcpu, u64 reg,
extern void vcpu_set_fpreg(struct kvm_vcpu *vcpu, unsigned long reg,
					struct ia64_fpreg *val);
					struct ia64_fpreg *val);
extern u64 vcpu_get_gr(struct kvm_vcpu *vcpu, u64 reg);
extern u64 vcpu_get_gr(struct kvm_vcpu *vcpu, unsigned long reg);
extern void vcpu_set_gr(struct kvm_vcpu *vcpu, u64 reg, u64 val, int nat);
extern void vcpu_set_gr(struct kvm_vcpu *vcpu, unsigned long reg,
extern u64 vcpu_get_psr(struct kvm_vcpu *vcpu);
			u64 val, int nat);
extern void vcpu_set_psr(struct kvm_vcpu *vcpu, u64 val);
extern unsigned long vcpu_get_psr(struct kvm_vcpu *vcpu);
extern void vcpu_set_psr(struct kvm_vcpu *vcpu, unsigned long val);
extern u64 vcpu_thash(struct kvm_vcpu *vcpu, u64 vadr);
extern u64 vcpu_thash(struct kvm_vcpu *vcpu, u64 vadr);
extern void vcpu_bsw0(struct kvm_vcpu *vcpu);
extern void vcpu_bsw0(struct kvm_vcpu *vcpu);
extern void thash_vhpt_insert(struct kvm_vcpu *v, u64 pte,
extern void thash_vhpt_insert(struct kvm_vcpu *v, u64 pte,