linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL] KVM/arm fixes for 5.7, take #2
@ 2020-05-01 10:12 Marc Zyngier
  2020-05-01 10:12 ` [PATCH 1/4] KVM: arm64: Delete duplicated label in invalid_vector Marc Zyngier
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Marc Zyngier @ 2020-05-01 10:12 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Nick Desaulniers, James Morse, linux-arm-kernel, Zenghui Yu,
	Will Deacon, kvmarm, Julien Thierry

Paolo,

This is the second batch of KVM/arm fixes for 5.7. A compilation fix,
a GICv4.1 fix, plus a couple of sanity checks (SP_EL0 save/restore,
and the sanitising of AArch32 registers).

Note that the pull request I sent a week ago[1] is still valid, and
that this new series is built on top of the previous one.

Please pull,

	M.

[1] https://lore.kernel.org/kvm/20200423154009.4113562-1-maz@kernel.org/

The following changes since commit 446c0768f5509793a0e527a439d4866b24707b0e:

  Merge branch 'kvm-arm64/vgic-fixes-5.7' into kvmarm-master/master (2020-04-23 16:27:33 +0100)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git tags/kvmarm-fixes-5.7-2

for you to fetch changes up to 0225fd5e0a6a32af7af0aefac45c8ebf19dc5183:

  KVM: arm64: Fix 32bit PC wrap-around (2020-05-01 09:51:08 +0100)

----------------------------------------------------------------
KVM/arm fixes for Linux 5.7, take #2

- Fix compilation with Clang
- Correctly initialize GICv4.1 in the absence of a virtual ITS
- Move SP_EL0 save/restore to the guest entry/exit code
- Handle PC wrap around on 32bit guests, and narrow all 32bit
  registers on userspace access

----------------------------------------------------------------
Fangrui Song (1):
      KVM: arm64: Delete duplicated label in invalid_vector

Marc Zyngier (3):
      KVM: arm64: Save/restore sp_el0 as part of __guest_enter
      KVM: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS
      KVM: arm64: Fix 32bit PC wrap-around

 arch/arm64/kvm/guest.c           |  7 +++++++
 arch/arm64/kvm/hyp/entry.S       | 23 +++++++++++++++++++++++
 arch/arm64/kvm/hyp/hyp-entry.S   |  1 -
 arch/arm64/kvm/hyp/sysreg-sr.c   | 17 +++--------------
 virt/kvm/arm/hyp/aarch32.c       |  8 ++++++--
 virt/kvm/arm/vgic/vgic-init.c    |  9 ++++++++-
 virt/kvm/arm/vgic/vgic-mmio-v3.c |  3 ++-
 7 files changed, 49 insertions(+), 19 deletions(-)

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/4] KVM: arm64: Delete duplicated label in invalid_vector
  2020-05-01 10:12 [GIT PULL] KVM/arm fixes for 5.7, take #2 Marc Zyngier
@ 2020-05-01 10:12 ` Marc Zyngier
  2020-05-01 10:12 ` [PATCH 2/4] KVM: arm64: Save/restore sp_el0 as part of __guest_enter Marc Zyngier
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Marc Zyngier @ 2020-05-01 10:12 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Nick Desaulniers, James Morse, linux-arm-kernel, Zenghui Yu,
	Will Deacon, kvmarm, Julien Thierry

From: Fangrui Song <maskray@google.com>

SYM_CODE_START defines \label , so it is redundant to define \label again.
A redefinition at the same place is accepted by GNU as
(https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=159fbb6088f17a341bcaaac960623cab881b4981)
but rejected by the clang integrated assembler.

Fixes: 617a2f392c92 ("arm64: kvm: Annotate assembly using modern annoations")
Signed-off-by: Fangrui Song <maskray@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Link: https://github.com/ClangBuiltLinux/linux/issues/988
Link: https://lore.kernel.org/r/20200413231016.250737-1-maskray@google.com
---
 arch/arm64/kvm/hyp/hyp-entry.S | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/arm64/kvm/hyp/hyp-entry.S b/arch/arm64/kvm/hyp/hyp-entry.S
index c2a13ab3c471..9c5cfb04170e 100644
--- a/arch/arm64/kvm/hyp/hyp-entry.S
+++ b/arch/arm64/kvm/hyp/hyp-entry.S
@@ -198,7 +198,6 @@ SYM_CODE_END(__hyp_panic)
 .macro invalid_vector	label, target = __hyp_panic
 	.align	2
 SYM_CODE_START(\label)
-\label:
 	b \target
 SYM_CODE_END(\label)
 .endm
-- 
2.26.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 2/4] KVM: arm64: Save/restore sp_el0 as part of __guest_enter
  2020-05-01 10:12 [GIT PULL] KVM/arm fixes for 5.7, take #2 Marc Zyngier
  2020-05-01 10:12 ` [PATCH 1/4] KVM: arm64: Delete duplicated label in invalid_vector Marc Zyngier
@ 2020-05-01 10:12 ` Marc Zyngier
  2020-05-01 10:12 ` [PATCH 3/4] KVM: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS Marc Zyngier
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Marc Zyngier @ 2020-05-01 10:12 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Nick Desaulniers, James Morse, linux-arm-kernel, Zenghui Yu,
	Will Deacon, kvmarm, Julien Thierry

We currently save/restore sp_el0 in C code. This is a bit unsafe,
as a lot of the C code expects 'current' to be accessible from
there (and the opportunity to run kernel code in HYP is specially
great with VHE).

Instead, let's move the save/restore of sp_el0 to the assembly
code (in __guest_enter), making sure that sp_el0 is correct
very early on when we exit the guest, and is preserved as long
as possible to its host value when we enter the guest.

Reviewed-by: Andrew Jones <drjones@redhat.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
---
 arch/arm64/kvm/hyp/entry.S     | 23 +++++++++++++++++++++++
 arch/arm64/kvm/hyp/sysreg-sr.c | 17 +++--------------
 2 files changed, 26 insertions(+), 14 deletions(-)

diff --git a/arch/arm64/kvm/hyp/entry.S b/arch/arm64/kvm/hyp/entry.S
index d22d0534dd60..90186cf6473e 100644
--- a/arch/arm64/kvm/hyp/entry.S
+++ b/arch/arm64/kvm/hyp/entry.S
@@ -18,6 +18,7 @@
 
 #define CPU_GP_REG_OFFSET(x)	(CPU_GP_REGS + x)
 #define CPU_XREG_OFFSET(x)	CPU_GP_REG_OFFSET(CPU_USER_PT_REGS + 8*x)
+#define CPU_SP_EL0_OFFSET	(CPU_XREG_OFFSET(30) + 8)
 
 	.text
 	.pushsection	.hyp.text, "ax"
@@ -47,6 +48,16 @@
 	ldp	x29, lr,  [\ctxt, #CPU_XREG_OFFSET(29)]
 .endm
 
+.macro save_sp_el0 ctxt, tmp
+	mrs	\tmp,	sp_el0
+	str	\tmp,	[\ctxt, #CPU_SP_EL0_OFFSET]
+.endm
+
+.macro restore_sp_el0 ctxt, tmp
+	ldr	\tmp,	  [\ctxt, #CPU_SP_EL0_OFFSET]
+	msr	sp_el0, \tmp
+.endm
+
 /*
  * u64 __guest_enter(struct kvm_vcpu *vcpu,
  *		     struct kvm_cpu_context *host_ctxt);
@@ -60,6 +71,9 @@ SYM_FUNC_START(__guest_enter)
 	// Store the host regs
 	save_callee_saved_regs x1
 
+	// Save the host's sp_el0
+	save_sp_el0	x1, x2
+
 	// Now the host state is stored if we have a pending RAS SError it must
 	// affect the host. If any asynchronous exception is pending we defer
 	// the guest entry. The DSB isn't necessary before v8.2 as any SError
@@ -83,6 +97,9 @@ alternative_else_nop_endif
 	// when this feature is enabled for kernel code.
 	ptrauth_switch_to_guest x29, x0, x1, x2
 
+	// Restore the guest's sp_el0
+	restore_sp_el0 x29, x0
+
 	// Restore guest regs x0-x17
 	ldp	x0, x1,   [x29, #CPU_XREG_OFFSET(0)]
 	ldp	x2, x3,   [x29, #CPU_XREG_OFFSET(2)]
@@ -130,6 +147,9 @@ SYM_INNER_LABEL(__guest_exit, SYM_L_GLOBAL)
 	// Store the guest regs x18-x29, lr
 	save_callee_saved_regs x1
 
+	// Store the guest's sp_el0
+	save_sp_el0	x1, x2
+
 	get_host_ctxt	x2, x3
 
 	// Macro ptrauth_switch_to_guest format:
@@ -139,6 +159,9 @@ SYM_INNER_LABEL(__guest_exit, SYM_L_GLOBAL)
 	// when this feature is enabled for kernel code.
 	ptrauth_switch_to_host x1, x2, x3, x4, x5
 
+	// Restore the hosts's sp_el0
+	restore_sp_el0 x2, x3
+
 	// Now restore the host regs
 	restore_callee_saved_regs x2
 
diff --git a/arch/arm64/kvm/hyp/sysreg-sr.c b/arch/arm64/kvm/hyp/sysreg-sr.c
index 75b1925763f1..6d2df9fe0b5d 100644
--- a/arch/arm64/kvm/hyp/sysreg-sr.c
+++ b/arch/arm64/kvm/hyp/sysreg-sr.c
@@ -15,8 +15,9 @@
 /*
  * Non-VHE: Both host and guest must save everything.
  *
- * VHE: Host and guest must save mdscr_el1 and sp_el0 (and the PC and pstate,
- * which are handled as part of the el2 return state) on every switch.
+ * VHE: Host and guest must save mdscr_el1 and sp_el0 (and the PC and
+ * pstate, which are handled as part of the el2 return state) on every
+ * switch (sp_el0 is being dealt with in the assembly code).
  * tpidr_el0 and tpidrro_el0 only need to be switched when going
  * to host userspace or a different VCPU.  EL1 registers only need to be
  * switched when potentially going to run a different VCPU.  The latter two
@@ -26,12 +27,6 @@
 static void __hyp_text __sysreg_save_common_state(struct kvm_cpu_context *ctxt)
 {
 	ctxt->sys_regs[MDSCR_EL1]	= read_sysreg(mdscr_el1);
-
-	/*
-	 * The host arm64 Linux uses sp_el0 to point to 'current' and it must
-	 * therefore be saved/restored on every entry/exit to/from the guest.
-	 */
-	ctxt->gp_regs.regs.sp		= read_sysreg(sp_el0);
 }
 
 static void __hyp_text __sysreg_save_user_state(struct kvm_cpu_context *ctxt)
@@ -99,12 +94,6 @@ NOKPROBE_SYMBOL(sysreg_save_guest_state_vhe);
 static void __hyp_text __sysreg_restore_common_state(struct kvm_cpu_context *ctxt)
 {
 	write_sysreg(ctxt->sys_regs[MDSCR_EL1],	  mdscr_el1);
-
-	/*
-	 * The host arm64 Linux uses sp_el0 to point to 'current' and it must
-	 * therefore be saved/restored on every entry/exit to/from the guest.
-	 */
-	write_sysreg(ctxt->gp_regs.regs.sp,	  sp_el0);
 }
 
 static void __hyp_text __sysreg_restore_user_state(struct kvm_cpu_context *ctxt)
-- 
2.26.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 3/4] KVM: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS
  2020-05-01 10:12 [GIT PULL] KVM/arm fixes for 5.7, take #2 Marc Zyngier
  2020-05-01 10:12 ` [PATCH 1/4] KVM: arm64: Delete duplicated label in invalid_vector Marc Zyngier
  2020-05-01 10:12 ` [PATCH 2/4] KVM: arm64: Save/restore sp_el0 as part of __guest_enter Marc Zyngier
@ 2020-05-01 10:12 ` Marc Zyngier
  2020-05-01 10:12 ` [PATCH 4/4] KVM: arm64: Fix 32bit PC wrap-around Marc Zyngier
  2020-05-04 11:30 ` [GIT PULL] KVM/arm fixes for 5.7, take #2 Will Deacon
  4 siblings, 0 replies; 9+ messages in thread
From: Marc Zyngier @ 2020-05-01 10:12 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Nick Desaulniers, James Morse, linux-arm-kernel, Zenghui Yu,
	Will Deacon, kvmarm, Julien Thierry

KVM now expects to be able to use HW-accelerated delivery of vSGIs
as soon as the guest has enabled thm. Unfortunately, we only
initialize the GICv4 context if we have a virtual ITS exposed to
the guest.

Fix it by always initializing the GICv4.1 context if it is
available on the host.

Fixes: 2291ff2f2a56 ("KVM: arm64: GICv4.1: Plumb SGI implementation selection in the distributor")
Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
---
 virt/kvm/arm/vgic/vgic-init.c    | 9 ++++++++-
 virt/kvm/arm/vgic/vgic-mmio-v3.c | 3 ++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/virt/kvm/arm/vgic/vgic-init.c b/virt/kvm/arm/vgic/vgic-init.c
index 30dbec9fe0b4..32e32d67a127 100644
--- a/virt/kvm/arm/vgic/vgic-init.c
+++ b/virt/kvm/arm/vgic/vgic-init.c
@@ -294,8 +294,15 @@ int vgic_init(struct kvm *kvm)
 		}
 	}
 
-	if (vgic_has_its(kvm)) {
+	if (vgic_has_its(kvm))
 		vgic_lpi_translation_cache_init(kvm);
+
+	/*
+	 * If we have GICv4.1 enabled, unconditionnaly request enable the
+	 * v4 support so that we get HW-accelerated vSGIs. Otherwise, only
+	 * enable it if we present a virtual ITS to the guest.
+	 */
+	if (vgic_supports_direct_msis(kvm)) {
 		ret = vgic_v4_init(kvm);
 		if (ret)
 			goto out;
diff --git a/virt/kvm/arm/vgic/vgic-mmio-v3.c b/virt/kvm/arm/vgic/vgic-mmio-v3.c
index 416613f2400c..89a14ec8b33b 100644
--- a/virt/kvm/arm/vgic/vgic-mmio-v3.c
+++ b/virt/kvm/arm/vgic/vgic-mmio-v3.c
@@ -50,7 +50,8 @@ bool vgic_has_its(struct kvm *kvm)
 
 bool vgic_supports_direct_msis(struct kvm *kvm)
 {
-	return kvm_vgic_global_state.has_gicv4 && vgic_has_its(kvm);
+	return (kvm_vgic_global_state.has_gicv4_1 ||
+		(kvm_vgic_global_state.has_gicv4 && vgic_has_its(kvm)));
 }
 
 /*
-- 
2.26.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 4/4] KVM: arm64: Fix 32bit PC wrap-around
  2020-05-01 10:12 [GIT PULL] KVM/arm fixes for 5.7, take #2 Marc Zyngier
                   ` (2 preceding siblings ...)
  2020-05-01 10:12 ` [PATCH 3/4] KVM: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS Marc Zyngier
@ 2020-05-01 10:12 ` Marc Zyngier
  2020-05-04 11:30 ` [GIT PULL] KVM/arm fixes for 5.7, take #2 Will Deacon
  4 siblings, 0 replies; 9+ messages in thread
From: Marc Zyngier @ 2020-05-01 10:12 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Nick Desaulniers, stable, James Morse, linux-arm-kernel,
	Zenghui Yu, Will Deacon, kvmarm, Julien Thierry

In the unlikely event that a 32bit vcpu traps into the hypervisor
on an instruction that is located right at the end of the 32bit
range, the emulation of that instruction is going to increment
PC past the 32bit range. This isn't great, as userspace can then
observe this value and get a bit confused.

Conversly, userspace can do things like (in the context of a 64bit
guest that is capable of 32bit EL0) setting PSTATE to AArch64-EL0,
set PC to a 64bit value, change PSTATE to AArch32-USR, and observe
that PC hasn't been truncated. More confusion.

Fix both by:
- truncating PC increments for 32bit guests
- sanitizing all 32bit regs every time a core reg is changed by
  userspace, and that PSTATE indicates a 32bit mode.

Cc: stable@vger.kernel.org
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
---
 arch/arm64/kvm/guest.c     | 7 +++++++
 virt/kvm/arm/hyp/aarch32.c | 8 ++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/kvm/guest.c b/arch/arm64/kvm/guest.c
index 23ebe51410f0..50a279d3ddd7 100644
--- a/arch/arm64/kvm/guest.c
+++ b/arch/arm64/kvm/guest.c
@@ -200,6 +200,13 @@ static int set_core_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg)
 	}
 
 	memcpy((u32 *)regs + off, valp, KVM_REG_SIZE(reg->id));
+
+	if (*vcpu_cpsr(vcpu) & PSR_MODE32_BIT) {
+		int i;
+
+		for (i = 0; i < 16; i++)
+			*vcpu_reg32(vcpu, i) = (u32)*vcpu_reg32(vcpu, i);
+	}
 out:
 	return err;
 }
diff --git a/virt/kvm/arm/hyp/aarch32.c b/virt/kvm/arm/hyp/aarch32.c
index d31f267961e7..25c0e47d57cb 100644
--- a/virt/kvm/arm/hyp/aarch32.c
+++ b/virt/kvm/arm/hyp/aarch32.c
@@ -125,12 +125,16 @@ static void __hyp_text kvm_adjust_itstate(struct kvm_vcpu *vcpu)
  */
 void __hyp_text kvm_skip_instr32(struct kvm_vcpu *vcpu, bool is_wide_instr)
 {
+	u32 pc = *vcpu_pc(vcpu);
 	bool is_thumb;
 
 	is_thumb = !!(*vcpu_cpsr(vcpu) & PSR_AA32_T_BIT);
 	if (is_thumb && !is_wide_instr)
-		*vcpu_pc(vcpu) += 2;
+		pc += 2;
 	else
-		*vcpu_pc(vcpu) += 4;
+		pc += 4;
+
+	*vcpu_pc(vcpu) = pc;
+
 	kvm_adjust_itstate(vcpu);
 }
-- 
2.26.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [GIT PULL] KVM/arm fixes for 5.7, take #2
  2020-05-01 10:12 [GIT PULL] KVM/arm fixes for 5.7, take #2 Marc Zyngier
                   ` (3 preceding siblings ...)
  2020-05-01 10:12 ` [PATCH 4/4] KVM: arm64: Fix 32bit PC wrap-around Marc Zyngier
@ 2020-05-04 11:30 ` Will Deacon
  2020-05-04 16:05   ` Paolo Bonzini
  4 siblings, 1 reply; 9+ messages in thread
From: Will Deacon @ 2020-05-04 11:30 UTC (permalink / raw)
  To: Marc Zyngier, pbonzini
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Nick Desaulniers, James Morse, linux-arm-kernel, Zenghui Yu,
	kvmarm, Julien Thierry

Hi Marc, Paolo,

On Fri, May 01, 2020 at 11:12:00AM +0100, Marc Zyngier wrote:
> This is the second batch of KVM/arm fixes for 5.7. A compilation fix,
> a GICv4.1 fix, plus a couple of sanity checks (SP_EL0 save/restore,
> and the sanitising of AArch32 registers).
> 
> Note that the pull request I sent a week ago[1] is still valid, and
> that this new series is built on top of the previous one.
> 
> Please pull,

I don't see this queued up in the kvm tree, which appears to have been
sitting dormant for 10 days. Consequently, there are fixes sitting in
limbo and we /still/ don't have a sensible base for arm64/kvm patches
targetting 5.8.

Paolo -- how can I help get this stuff moving again? I'm more than happy
to send this lot up to Linus via arm64 if you're busy atm. Please just
let me know.

Cheers,

Will

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [GIT PULL] KVM/arm fixes for 5.7, take #2
  2020-05-04 11:30 ` [GIT PULL] KVM/arm fixes for 5.7, take #2 Will Deacon
@ 2020-05-04 16:05   ` Paolo Bonzini
  2020-05-04 16:51     ` Will Deacon
  0 siblings, 1 reply; 9+ messages in thread
From: Paolo Bonzini @ 2020-05-04 16:05 UTC (permalink / raw)
  To: Will Deacon, Marc Zyngier
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Nick Desaulniers, James Morse, linux-arm-kernel, Zenghui Yu,
	kvmarm, Julien Thierry

On 04/05/20 13:30, Will Deacon wrote:
> I don't see this queued up in the kvm tree, which appears to have been
> sitting dormant for 10 days. Consequently, there are fixes sitting in
> limbo and we /still/ don't have a sensible base for arm64/kvm patches
> targetting 5.8.
> 
> Paolo -- how can I help get this stuff moving again? I'm more than happy
> to send this lot up to Linus via arm64 if you're busy atm. Please just
> let me know.

10 days is one week during which I could hardly work and the two
adjacent weekends.  So this is basically really bad timing in Marc's
first pull request, that he couldn't have anticipated.

I have pulled both trees now, so you can base 5.8 development on
kvm/master.  It will get to Linus in a couple days.

Paolo


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [GIT PULL] KVM/arm fixes for 5.7, take #2
  2020-05-04 16:05   ` Paolo Bonzini
@ 2020-05-04 16:51     ` Will Deacon
  2020-05-04 17:02       ` Paolo Bonzini
  0 siblings, 1 reply; 9+ messages in thread
From: Will Deacon @ 2020-05-04 16:51 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Marc Zyngier, Nick Desaulniers, James Morse, linux-arm-kernel,
	Zenghui Yu, kvmarm, Julien Thierry

On Mon, May 04, 2020 at 06:05:51PM +0200, Paolo Bonzini wrote:
> On 04/05/20 13:30, Will Deacon wrote:
> > I don't see this queued up in the kvm tree, which appears to have been
> > sitting dormant for 10 days. Consequently, there are fixes sitting in
> > limbo and we /still/ don't have a sensible base for arm64/kvm patches
> > targetting 5.8.
> > 
> > Paolo -- how can I help get this stuff moving again? I'm more than happy
> > to send this lot up to Linus via arm64 if you're busy atm. Please just
> > let me know.
> 
> 10 days is one week during which I could hardly work and the two
> adjacent weekends.  So this is basically really bad timing in Marc's
> first pull request, that he couldn't have anticipated.

Understood, and thanks for the quick reply. If possible, please just let us
know in future as we can probably figure something out rather than having
things sit in limbo.

> I have pulled both trees now, so you can base 5.8 development on
> kvm/master.  It will get to Linus in a couple days.

Thanks, Paolo!

Will

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [GIT PULL] KVM/arm fixes for 5.7, take #2
  2020-05-04 16:51     ` Will Deacon
@ 2020-05-04 17:02       ` Paolo Bonzini
  0 siblings, 0 replies; 9+ messages in thread
From: Paolo Bonzini @ 2020-05-04 17:02 UTC (permalink / raw)
  To: Will Deacon
  Cc: Mark Rutland, Andrew Jones, kvm, Fangrui Song, Suzuki K Poulose,
	Marc Zyngier, Nick Desaulniers, James Morse, linux-arm-kernel,
	Zenghui Yu, kvmarm, Julien Thierry

On 04/05/20 18:51, Will Deacon wrote:
>> 10 days is one week during which I could hardly work and the two
>> adjacent weekends.  So this is basically really bad timing in Marc's
>> first pull request, that he couldn't have anticipated.
> 
> Understood, and thanks for the quick reply. If possible, please just let us
> know in future as we can probably figure something out rather than having
> things sit in limbo.

Indeed, it was my fault.  I got stuck in a "1: tomorrow should be
better" / "no it was actually worse" / "goto 1b" loop.

Paolo


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-05-04 17:02 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-01 10:12 [GIT PULL] KVM/arm fixes for 5.7, take #2 Marc Zyngier
2020-05-01 10:12 ` [PATCH 1/4] KVM: arm64: Delete duplicated label in invalid_vector Marc Zyngier
2020-05-01 10:12 ` [PATCH 2/4] KVM: arm64: Save/restore sp_el0 as part of __guest_enter Marc Zyngier
2020-05-01 10:12 ` [PATCH 3/4] KVM: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS Marc Zyngier
2020-05-01 10:12 ` [PATCH 4/4] KVM: arm64: Fix 32bit PC wrap-around Marc Zyngier
2020-05-04 11:30 ` [GIT PULL] KVM/arm fixes for 5.7, take #2 Will Deacon
2020-05-04 16:05   ` Paolo Bonzini
2020-05-04 16:51     ` Will Deacon
2020-05-04 17:02       ` Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).