mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-17 07:02:03 -06:00
qemu-config: Add new -add-fd command line option
This option can be used for passing file descriptors on the command line. It mirrors the existing add-fd QMP command which allows an fd to be passed to QEMU via SCM_RIGHTS and added to an fd set. This can be combined with commands such as -drive to link file descriptors in an fd set to a drive: qemu-kvm -add-fd fd=3,set=2,opaque="rdwr:/path/to/file" -add-fd fd=4,set=2,opaque="rdonly:/path/to/file" -drive file=/dev/fdset/2,index=0,media=disk This example adds dups of fds 3 and 4, and the accompanying opaque strings to the fd set with ID=2. qemu_open() already knows how to handle a filename of this format. qemu_open() searches the corresponding fd set for an fd and when it finds a match, QEMU goes on to use a dup of that fd just like it would have used an fd that it opened itself. Signed-off-by: Corey Bryant <coreyb@linux.vnet.ibm.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
ebe52b592d
commit
587ed6be0b
3 changed files with 152 additions and 0 deletions
|
@ -653,6 +653,27 @@ QemuOptsList qemu_boot_opts = {
|
|||
},
|
||||
};
|
||||
|
||||
static QemuOptsList qemu_add_fd_opts = {
|
||||
.name = "add-fd",
|
||||
.head = QTAILQ_HEAD_INITIALIZER(qemu_add_fd_opts.head),
|
||||
.desc = {
|
||||
{
|
||||
.name = "fd",
|
||||
.type = QEMU_OPT_NUMBER,
|
||||
.help = "file descriptor of which a duplicate is added to fd set",
|
||||
},{
|
||||
.name = "set",
|
||||
.type = QEMU_OPT_NUMBER,
|
||||
.help = "ID of the fd set to add fd to",
|
||||
},{
|
||||
.name = "opaque",
|
||||
.type = QEMU_OPT_STRING,
|
||||
.help = "free-form string used to describe fd",
|
||||
},
|
||||
{ /* end of list */ }
|
||||
},
|
||||
};
|
||||
|
||||
static QemuOptsList *vm_config_groups[32] = {
|
||||
&qemu_drive_opts,
|
||||
&qemu_chardev_opts,
|
||||
|
@ -669,6 +690,7 @@ static QemuOptsList *vm_config_groups[32] = {
|
|||
&qemu_boot_opts,
|
||||
&qemu_iscsi_opts,
|
||||
&qemu_sandbox_opts,
|
||||
&qemu_add_fd_opts,
|
||||
NULL,
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue