From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH v5 4/5] Inter-VM shared memory PCI device Date: Mon, 10 May 2010 19:40:05 +0300 Message-ID: <4BE836E5.9070106@redhat.com> References: <1271872408-22842-1-git-send-email-cam@cs.ualberta.ca> <1271872408-22842-2-git-send-email-cam@cs.ualberta.ca> <1271872408-22842-3-git-send-email-cam@cs.ualberta.ca> <1271872408-22842-4-git-send-email-cam@cs.ualberta.ca> <1271872408-22842-5-git-send-email-cam@cs.ualberta.ca> <4BE7F517.5010707@redhat.com> <4BE82623.4000905@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org, qemu-devel@nongnu.org, Anthony Liguori To: Cam Macdonell Return-path: Received: from mx1.redhat.com ([209.132.183.28]:38900 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752228Ab0EJQkM (ORCPT ); Mon, 10 May 2010 12:40:12 -0400 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: 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. -- error compiling committee.c: too many arguments to function