From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MsW09-0001XM-0s for qemu-devel@nongnu.org; Tue, 29 Sep 2009 02:15:53 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MsW04-0001X6-5l for qemu-devel@nongnu.org; Tue, 29 Sep 2009 02:15:52 -0400 Received: from [199.232.76.173] (port=38532 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MsW04-0001X3-26 for qemu-devel@nongnu.org; Tue, 29 Sep 2009 02:15:48 -0400 Received: from mx1.redhat.com ([209.132.183.28]:11390) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MsW03-0000u7-LX for qemu-devel@nongnu.org; Tue, 29 Sep 2009 02:15:47 -0400 Message-ID: <4AC1A49A.1010308@redhat.com> Date: Tue, 29 Sep 2009 02:09:30 -0400 From: john cooper MIME-Version: 1.0 References: <20090907181436.GA8538@redhat.com> <4AA60A58.4090703@redhat.com> <20090908075831.GA9875@redhat.com> <200909212039.01126.rusty@rustcorp.com.au> <4AB7A01A.3000206@redhat.com> <4AB8992B.7070709@redhat.com> <4AB8DD53.7070806@redhat.com> <4AB8DECA.3090908@redhat.com> <4AB8E88C.4040103@redhat.com> <4AB980E6.2070203@codemonkey.ws> <4AB9AA8E.7060800@third-harmonic.com> In-Reply-To: <4AB9AA8E.7060800@third-harmonic.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [PATCH 0/2] fix virtio_blk serial pci config breakage List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: john cooper , "Michael S. Tsirkin" , Rusty Russell , Avi Kivity , jens.axboe@oracle.com, Vadim Rozenfeld This is a correction to the previous version which violated the PCI config space 256 byte limitation. The crux of the feature is simply passing a qemu received virtio serial number to/through the guest driver and making it available to guest userspace via a preexisting interface. To accomplish this, ATA IDENTIFY data as implemented by the HDIO_GET_IDENTITY ioctl is returned to the caller for the virtio_blk drive of interest. Content of this identify structure is created by qemu and passed wholesale to guest userspace without interpretation by the guest driver. The change this patch implements is passing of the identify data through a mapping established by PCI BAR #5 rather than the PCI config area, the latter of which resulted in the above breakage. virtio_blk with this patch now pulls the information from the mapped bar area and includes minimal scaffolding to help map bars external to virtio_pci. -john -- john.cooper@redhat.com