qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH 0/4] Add virtio disk identification support


From: john cooper
Subject: [Qemu-devel] [PATCH 0/4] Add virtio disk identification support
Date: Thu, 25 Mar 2010 01:31:45 -0400
User-agent: Thunderbird 2.0.0.9 (X11/20071115)

This series adds the minimal support to qemu and virtio_blk
to support passing of a virtio_blk serial id string from qemu
through the guest driver and to the guest userland.

This is derived in part from a patch set posted by Rusty some
time ago, but has been minimized to remove support for prior
versions which attempted to provide the same functionality via
pci config/io space.  This version rather uses a virtio request
as proposed in Rusty's example.

Also removed is the packaging of the serial/id string within
the glorious bag of bits returned by the ATA_IDENTIFY command.
Here we transfer only the 20 bytes of serial/id string from
qemu to the guest userland.  In the proposed interface, this
is made available by an ioctl() into the virtio_blk driver
however other interfaces (eg: /sys) have also been proposed.
A code snippet is attached below as an example of ioctl usage.

The resulting code is quite minimal and I believe it addresses
all concerns raised in prior versions.

-john



#include <stdio.h>
#include <strings.h>
#include <sys/types.h>
#include <fcntl.h>
#include <linux/hdreg.h>

#define IOCTL_CMD       'VBID'

main()
{
        int fd, rv;
        char buf[512];

        bzero(buf, sizeof (buf));
        if ((fd = open("/dev/vda", O_RDONLY)) < 0)
                perror("open");
        else if (ioctl(fd, IOCTL_CMD, buf) < 0)
                perror("ioctl");
        else
                printf("[%s]\n", buf);
}

-- 
address@hidden




reply via email to

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