[libvirt] [PATCH v10 6/7] block: Enable qemu_open/close to work with fd sets

Kevin Wolf kwolf at redhat.com
Tue Aug 14 12:07:53 UTC 2012


Am 13.08.2012 16:08, schrieb Corey Bryant:
> When qemu_open is passed a filename of the "/dev/fdset/nnn"
> format (where nnn is the fdset ID), an fd with matching access
> mode flags will be searched for within the specified monitor
> fd set.  If the fd is found, a dup of the fd will be returned
> from qemu_open.
> 
> Signed-off-by: Corey Bryant <coreyb at linux.vnet.ibm.com>

>  cutils.c      |    5 +++
>  monitor.c     |   83 ++++++++++++++++++++++++++++++++++++++++++-
>  monitor.h     |    5 +++
>  osdep.c       |  109 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  qemu-common.h |    1 +
>  qemu-tool.c   |   20 +++++++++++
>  6 files changed, 222 insertions(+), 1 deletion(-)

This breaks the build of vscclient and the qtest cases, because osdep.c
has now a new dependency on the fdset monitor functions. The easy way to
fix it would be to squash the following in (linking vscclient and qtests
with qemu-tool.o). Any objections?

Kevin


diff --git a/Makefile b/Makefile
index d736ea5..a11a7f4 100644
--- a/Makefile
+++ b/Makefile
@@ -148,9 +148,6 @@ install-libcacard: libcacard.la
        $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C libcacard
V="$(V)" TARGET_DIR="$*/" install-libcacard,)
 endif

-vscclient$(EXESUF): $(libcacard-y) $(oslib-obj-y) $(trace-obj-y)
qemu-timer-common.o libcacard/vscclient.o
-       $(call quiet-command,$(CC) $(LDFLAGS) -o $@ $^ $(libcacard_libs)
$(LIBS),"  LINK  $@")
-
 ######################################################################

 qemu-img.o: qemu-img-cmds.h
@@ -166,6 +163,9 @@ qemu-io$(EXESUF): qemu-io.o cmd.o $(tools-obj-y)
$(block-obj-y)

 qemu-bridge-helper$(EXESUF): qemu-bridge-helper.o

+vscclient$(EXESUF): $(tools-obj-y) $(libcacard-y) $(oslib-obj-y)
$(trace-obj-y) qemu-timer-common.o libcacard/vscclient.o
+       $(call quiet-command,$(CC) $(LDFLAGS) -o $@ $^ $(libcacard_libs)
$(LIBS),"  LINK  $@")
+
 fsdev/virtfs-proxy-helper$(EXESUF): fsdev/virtfs-proxy-helper.o
fsdev/virtio-9p-marshal.o oslib-posix.o $(trace-obj-y)
 fsdev/virtfs-proxy-helper$(EXESUF): LIBS += -lcap

diff --git a/tests/Makefile b/tests/Makefile
index f3f4159..26a67ce 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -81,7 +81,7 @@ TARGETS=$(patsubst %-softmmu,%, $(filter
%-softmmu,$(TARGET_DIRS)))
 QTEST_TARGETS=$(foreach TARGET,$(TARGETS), $(if
$(check-qtest-$(TARGET)-y), $(TARGET),))
 check-qtest-$(CONFIG_POSIX)=$(foreach TARGET,$(TARGETS),
$(check-qtest-$(TARGET)-y))

-qtest-obj-y = tests/libqtest.o $(oslib-obj-y)
+qtest-obj-y = tests/libqtest.o $(oslib-obj-y) $(tools-obj-y)
 $(check-qtest-y): $(qtest-obj-y)

 .PHONY: check-help




More information about the libvir-list mailing list