Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-19 Thread Jan Kiszka
On 2016-08-17 18:58, Alexander Popov wrote: > On 17.08.2016 17:36, Jan Kiszka wrote: >> On 2016-08-15 14:37, Paolo Bonzini wrote: >>> On 15/08/2016 13:51, Alexander Popov wrote: It seems to me that the idea of an irq_domain for interrupts injected by a hypervisor is quite generic. >>> >>>

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-17 Thread Alexander Popov
On 17.08.2016 17:36, Jan Kiszka wrote: > On 2016-08-15 14:37, Paolo Bonzini wrote: >> On 15/08/2016 13:51, Alexander Popov wrote: >>> It seems to me that the idea of an irq_domain for interrupts injected >>> by a hypervisor is quite generic. >> >> True, but all of Xen, KVM and VMware use PCI device

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-17 Thread Jan Kiszka
On 2016-08-15 14:37, Paolo Bonzini wrote: > On 15/08/2016 13:51, Alexander Popov wrote: >> On 13.08.2016 09:20, Paolo Bonzini wrote: >>> On 13/08/2016 00:07, Alexander Popov wrote: I.e. our irq_mask()/irq_unmask() callbacks get irq_desc of the interrupt which should be masked/unmasked and

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-16 Thread Alexander Popov
On 15.08.2016 15:37, Paolo Bonzini wrote: > On 15/08/2016 13:51, Alexander Popov wrote: >> On 13.08.2016 09:20, Paolo Bonzini wrote: >>> So just let the irqdomain know about your hypervisor and avoid the >>> pointless indirection through function pointers, and only call >>> arch_init_paravirq_domai

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-15 Thread Paolo Bonzini
On 15/08/2016 13:51, Alexander Popov wrote: > On 13.08.2016 09:20, Paolo Bonzini wrote: >> On 13/08/2016 00:07, Alexander Popov wrote: >>> I.e. our irq_mask()/irq_unmask() callbacks get irq_desc of the interrupt >>> which should be masked/unmasked and can ask the hypervisor to stop/start >>> inje

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-15 Thread Alexander Popov
On 13.08.2016 09:20, Paolo Bonzini wrote: > On 13/08/2016 00:07, Alexander Popov wrote: >> I.e. our irq_mask()/irq_unmask() callbacks get irq_desc of the interrupt >> which should be masked/unmasked and can ask the hypervisor to stop/start >> injecting the vector of that particular interrupt. > >

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-12 Thread Paolo Bonzini
On 13/08/2016 00:07, Alexander Popov wrote: > I.e. our irq_mask()/irq_unmask() callbacks get irq_desc of the interrupt > which should be masked/unmasked and can ask the hypervisor to stop/start > injecting the vector of that particular interrupt. So just let the irqdomain know about your hypervi

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-12 Thread Alexander Popov
On 12.08.2016 14:43, Paolo Bonzini wrote: > On 12/08/2016 12:56, Alexander Popov wrote: >> Maybe the name "paravirq" is not very good, I'll try to describe the idea. >> >> There is some kernel module for special interactions between guest VMs. >> Currently it has to register a MSI-capable PCI devic

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-12 Thread Paolo Bonzini
On 12/08/2016 12:56, Alexander Popov wrote: > Maybe the name "paravirq" is not very good, I'll try to describe the idea. > > There is some kernel module for special interactions between guest VMs. > Currently it has to register a MSI-capable PCI device to handle interrupts > injected by the hype

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-12 Thread Alexander Popov
On 11.08.2016 19:44, Paolo Bonzini wrote: > >> Introduce paravirq irq_domain for interrupts injected by the hypervisor >> using Intel VT-x technology. Paravirq irq_domain allows registering >> IRQ handlers for these interrupts and avoid emulating an MSI-capable >> PCI device by the hypervisor. He

Re: [PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-11 Thread Paolo Bonzini
> Introduce paravirq irq_domain for interrupts injected by the hypervisor > using Intel VT-x technology. Paravirq irq_domain allows registering > IRQ handlers for these interrupts and avoid emulating an MSI-capable > PCI device by the hypervisor. What hypervisor are you implementing this on? (And

[PATCH 1/1] x86/apic: Introduce paravirq irq_domain

2016-08-11 Thread Alexander Popov
Introduce paravirq irq_domain for interrupts injected by the hypervisor using Intel VT-x technology. Paravirq irq_domain allows registering IRQ handlers for these interrupts and avoid emulating an MSI-capable PCI device by the hypervisor. Signed-off-by: Alexander Popov --- arch/x86/Kconfig