From: john cooper <john.cooper@third-harmonic.com>
To: Marc Haber <mh+qemu-devel@zugschlus.de>
Cc: john cooper <john.cooper@redhat.com>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] virtio block device and sysfs
Date: Mon, 22 Mar 2010 02:26:11 -0400 [thread overview]
Message-ID: <4BA70D83.4070806@third-harmonic.com> (raw)
In-Reply-To: <20100321161638.GA4174@shareable.org>
Jamie Lokier wrote:
> Anthony Liguori wrote:
>> On 03/06/2010 04:42 PM, Marc Haber wrote:
>>> Hi,
>>>
>>> I am looking to get in touch with somebody who knows more about the
>>> connection between host configuration, qemu, kvm, and the virtio block
>>> device driver guest side than I know.
>>>
>>> My goal is to have a possibility to give a "speaking" name to any
>>> block device handed into a guest instance by the host. That name
>>> should be visible inside the guest, just as a LV is visible with its
>>> name in the system running the LVM.
>>>
>>> For example I would like to say on the qemu or kvm command line
>>> '-drive file=some-file,label=some-label,if=virtio', and have the
>>> string "some-label" show up somewhere in /sys/block in the guest, much
>>> as /sys/block/sda/device/model shows the hardware vendor and type for
>>> a standard SATA disk. The guest could then handle the information
>>> passed into it by the host with udev rules, allowing fstab constructs
>>> like "mount /dev/virtio/block/by-label/some-label as /usr"
Sorry, I missed Anthony's earlier mail.
>> You probably would just want to plumb ,serial=X into the virtio-blk
>> config space and have the driver use it. Then you can do
>> /dev/block/by-id/XXXXX
This is a tad ironic as that is how this saga begun. Namely stuffing
20 bytes of serial number string into the virtio-blk PCI config space
on qemu's side and pushing it over to the guest driver. I exposed this
to the guest app via a new ioctl cmd which itself was the original
point of contention. Someone took issue with introducing a new
interface citing the existence of ATA and SCSI counterparts. However
dragging in the associated baggage in order to emulate those interfaces
unintentionally bloated usage of the config space to the point of breakage.
To address this I'd moved from using config space to an unused BAR which
(understandably) didn't go over too well. Somewhere along the line Rusty
posted a minimal alternative version which directly used a virtio request
to retrieve the data from qemu which is arguably the right way to do the
job.
That said we still had a dispute over what interface would be used to
pass the S/N back to the guest: a new interface or reuse of an existing
interface (eg: ATA IDENTIFY). That's where things fizzled when we
couldn't immediately resolve the issue. So publishing the S/N in
/sys would seem to side step this snag.
I could have swore I sent out a guest-driver-app-interface-less
version of the patch using virtio to pass the S/N but didn't find it in
the archives. I did however locate it and can bring it forward as a
reference for the above if interest exists.
-john
--
john.cooper@third-harmonic.com
next prev parent reply other threads:[~2010-03-22 7:01 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-06 22:42 [Qemu-devel] virtio block device and sysfs Marc Haber
2010-03-09 1:17 ` jvrao
2010-03-09 8:21 ` Marc Haber
2010-03-09 20:04 ` jvrao
2010-03-09 20:06 ` jvrao
2010-03-09 21:15 ` Marc Haber
2010-03-09 21:34 ` Anthony Liguori
2010-03-21 16:16 ` Jamie Lokier
2010-03-22 6:26 ` john cooper [this message]
2010-03-22 12:42 ` Marc Haber
2010-03-22 14:59 ` john cooper
2010-03-25 5:30 ` john cooper
2010-06-29 18:15 ` Marc Haber
2010-06-29 18:03 ` john cooper
2010-06-29 20:20 ` Marc Haber
2010-06-29 18:33 ` Ryan Harper
2010-06-29 18:36 ` Marc Haber
2010-06-29 18:36 ` Marc Haber
2010-06-30 7:01 ` Markus Armbruster
2010-09-13 8:55 ` Marc Haber
2010-09-13 14:34 ` Ryan Harper
2010-09-14 7:43 ` Marc Haber
2011-03-10 12:14 ` Marc Haber
2010-03-22 12:38 ` Marc Haber
2010-03-22 14:22 ` john cooper
2010-03-22 16:24 ` Jamie Lokier
2010-03-22 16:33 ` john cooper
2010-04-22 20:30 ` Marc Haber
2010-04-22 20:48 ` john cooper
2010-03-22 15:14 ` Paul Brook
2010-04-22 20:33 ` Marc Haber
2010-03-22 14:46 ` [Qemu-devel] " Michael S. Tsirkin
2010-03-22 14:52 ` Anthony Liguori
2010-03-20 18:32 ` [Qemu-devel] " Richard W.M. Jones
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4BA70D83.4070806@third-harmonic.com \
--to=john.cooper@third-harmonic.com \
--cc=john.cooper@redhat.com \
--cc=mh+qemu-devel@zugschlus.de \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).