On Thu, 2011-08-25 at 17:00 +0300, Avi Kivity wrote: > On 08/25/2011 04:29 PM, Sasha Levin wrote: > > 2. The spec describes DOORBELL as an array of DWORDs, when one guest > > wants to poke a different guest it would write something into the offset > > of the other guest in the DOORBELL array. > > Looking at the implementation in QEMU, DOORBELL is one DWORD, when > > writing to it the upper WORD is the guest id and the lower WORD is the > > value. > > What am I missing here? > > > > The spec in qemu.git is accurate. The intent is to use an ioeventfd > bound into an irqfd so a write into the doorbell injects an interrupt > directly into the other guest, without going through qemu^Wkvm tool. > But the doorbell is a single DWORD, so if a guest writes to it we'd still need to figure out which guest/vector he wants to poke from userspace, no? If it was an array of doorbells then yes, we could assign an ioeventfd to each offset - but now I don't quite see how we can avoid passing through the userspace. -- Sasha. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html