[Top][All Lists]
[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
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] [PATCH 0/4] Add virtio disk identification support,
john cooper <=