qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH v5 4/5] Inter-VM shared memory PCI device


From: Avi Kivity
Subject: [Qemu-devel] Re: [PATCH v5 4/5] Inter-VM shared memory PCI device
Date: Wed, 12 May 2010 18:49:42 +0300
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100330 Fedora/3.0.4-1.fc12 Thunderbird/3.0.4

On 05/10/2010 07:48 PM, Cam Macdonell wrote:
On Mon, May 10, 2010 at 10:40 AM, Avi Kivity<address@hidden>  wrote:
On 05/10/2010 06:41 PM, Cam Macdonell wrote:
What would happen to any data written to the BAR before the the handshake
completed?  I think it would disappear.

But, the BAR isn't there until the handshake is completed.  Only after
receiving the shared memory fd does my device call pci_register_bar()
in the callback function.  So there may be a case with BAR2 (the
shared memory BAR) missing during initialization.  FWIW, I haven't
encountered this.

Well, that violates PCI.  You can't have a PCI device with no BAR, then have
a BAR appear.  It may work since the BAR is registered a lot faster than the
BIOS is able to peek at it, but it's a race nevertheless.
Agreed.  I'll get Anthony's idea up and running.  It seems that is the
way forward.

What, with the separate allocation and memcpy?  Or another one?

Why can't we complete initialization before exposing the card and BAR? Seems to be the simplest solution.

--
Do not meddle in the internals of kernels, for they are subtle and quick to 
panic.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]