Thread (25 messages) flat view 25 messages, 2 authors, 2021-06-23

Re: [PATCH v4 5/9] KVM: arm64: vgic: move irq->get_input_level into an ops structure

From: Marc Zyngier <maz@kernel.org>
Date: 2021-06-22 15:57:20
Also in: kvm, kvmarm

On Tue, 15 Jun 2021 15:45:03 +0100,
Alexandru Elisei [off-list ref] wrote:
Hi Marc,

On 6/1/21 11:40 AM, Marc Zyngier wrote:
quoted
We already have the option to attach a callback to an interrupt
to retrieve its pending state. As we are planning to expand this
facility, move this callback into its own data structure.

This will limit the size of individual interrupts as the ops
structures can be shared across multiple interrupts.
I can't figure out what you mean by that. If you are referring to
struct vgic_irq, the change I am seeing is a pointer being replaced
by another pointer, which shouldn't affect its size. Are you
referring to something else?
Eventually, we have more than just a pointer (we also get flags in the
same structure), so this saves some space.
quoted
Signed-off-by: Marc Zyngier <maz@kernel.org>
---
 arch/arm64/kvm/arch_timer.c |  8 ++++++--
 arch/arm64/kvm/vgic/vgic.c  | 14 +++++++-------
 include/kvm/arm_vgic.h      | 28 +++++++++++++++++-----------
 3 files changed, 30 insertions(+), 20 deletions(-)
diff --git a/arch/arm64/kvm/arch_timer.c b/arch/arm64/kvm/arch_timer.c
index 74e0699661e9..e2288b6bf435 100644
--- a/arch/arm64/kvm/arch_timer.c
+++ b/arch/arm64/kvm/arch_timer.c
@@ -1116,6 +1116,10 @@ bool kvm_arch_timer_get_input_level(int vintid)
 	return kvm_timer_should_fire(timer);
 }
 
+static struct irq_ops arch_timer_irq_ops = {
+	.get_input_level = kvm_arch_timer_get_input_level,
Since kvm_arch_timer_get_input_level() is used only indirectly, through the
get_input_level field of the static struct, I think we can make
kvm_arch_timer_get_input_level() static and remove the declaration from
include/kvm/arm_arch_timer.h.
Ah, good point. I'll stash a patch on top of the existing series (I'm
trying not to change what is currently queued in -next).

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help