* [RFC PATCH] tools: remove blktap2 related code and documentation
@ 2016-08-15 10:50 Wei Liu
2016-08-16 12:42 ` Yang Hongyang
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Wei Liu @ 2016-08-15 10:50 UTC (permalink / raw)
To: Xen-devel
Cc: Lars Kurth, Stefano Stabellini, Wei Liu, Ross Philipson,
George Dunlap, Andrew Cooper, Ian Jackson, Tim Deegan,
Yang Hongyang, Jan Beulich, Shriram Rajagopalan
Blktap2 is effectively dead code for a few years.
Notable changes in this patch:
0. Unhook blktap2 from build system
1. Now libxl no longer supports TAP ask backend, appropriate assertions
are added and some code paths now return ERROR_FAIL
2. Tap is no longer a supported backend in doc
3. Remove relevant entries in MAINTAINERS
A patch to actually remove blktap2 directory will come later.
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
Compile-test only at this stage.
Ross, do you have any objection for this? I haven't seen update from the
joint blktap2 maintenance for a few months.
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Tim Deegan <tim@xen.org>
Cc: Shriram Rajagopalan <rshriram@cs.ubc.ca>
Cc: Yang Hongyang <imhy.yang@gmail.com>
Cc: Ross Philipson <ross.philipson@gmail.com>
Cc: Lars Kurth <lars.kurth@citrix.com>
---
.gitignore | 14 ------
INSTALL | 4 --
MAINTAINERS | 2 -
config/Tools.mk.in | 1 -
docs/misc/xl-disk-configuration.txt | 2 +-
tools/Makefile | 1 -
tools/Rules.mk | 17 +------
tools/config.h.in | 6 ---
tools/configure | 83 --------------------------------
tools/configure.ac | 22 ---------
tools/libxl/Makefile | 8 +---
tools/libxl/check-xl-disk-parse | 2 +-
tools/libxl/libxl.c | 25 ++--------
tools/libxl/libxl_blktap2.c | 94 -------------------------------------
tools/libxl/libxl_device.c | 32 ++-----------
tools/libxl/libxl_dm.c | 17 ++-----
tools/libxl/libxl_internal.h | 19 --------
tools/libxl/libxl_noblktap2.c | 42 -----------------
tools/xenstore/hashtable.c | 5 --
tools/xenstore/hashtable.h | 5 --
tools/xenstore/hashtable_private.h | 5 --
21 files changed, 13 insertions(+), 393 deletions(-)
delete mode 100644 tools/libxl/libxl_blktap2.c
delete mode 100644 tools/libxl/libxl_noblktap2.c
diff --git a/.gitignore b/.gitignore
index d193820..ea27777 100644
--- a/.gitignore
+++ b/.gitignore
@@ -97,19 +97,6 @@ tools/libs/evtchn/headers.chk
tools/libs/gnttab/headers.chk
tools/libs/call/headers.chk
tools/libs/foreignmemory/headers.chk
-tools/blktap2/daemon/blktapctrl
-tools/blktap2/drivers/img2qcow
-tools/blktap2/drivers/lock-util
-tools/blktap2/drivers/qcow-create
-tools/blktap2/drivers/qcow2raw
-tools/blktap2/drivers/tapdisk
-tools/blktap2/drivers/tapdisk-client
-tools/blktap2/drivers/tapdisk-diff
-tools/blktap2/drivers/tapdisk-stream
-tools/blktap2/drivers/tapdisk2
-tools/blktap2/drivers/td-util
-tools/blktap2/vhd/vhd-update
-tools/blktap2/vhd/vhd-util
tools/console/xenconsole
tools/console/xenconsoled
tools/console/client/_paths.h
@@ -327,7 +314,6 @@ tools/libxl/*.pyc
tools/libxl/libxl-save-helper
tools/libxl/test_timedereg
tools/libxl/test_fdderegrace
-tools/blktap2/control/tap-ctl
tools/firmware/etherboot/eb-roms.h
tools/firmware/etherboot/gpxe-git-snapshot.tar.gz
tools/misc/xenwatchdogd
diff --git a/INSTALL b/INSTALL
index 9759354..3b255c7 100644
--- a/INSTALL
+++ b/INSTALL
@@ -144,10 +144,6 @@ this detection and the sysv runlevel scripts have to be used.
--with-systemd=DIR
--with-systemd-modules-load=DIR
-The old backend drivers are disabled because qdisk is now the default.
-This option can be used to build them anyway.
- --enable-blktap2
-
Build various stubom components, some are only example code. Its usually
enough to specify just --enable-stubdom and leave these options alone.
--enable-ioemu-stubdom
diff --git a/MAINTAINERS b/MAINTAINERS
index 97720a8..d54795b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -322,8 +322,6 @@ M: Shriram Rajagopalan <rshriram@cs.ubc.ca>
M: Yang Hongyang <imhy.yang@gmail.com>
S: Maintained
F: docs/README.remus
-F: tools/blktap2/drivers/block-remus.c
-F: tools/blktap2/drivers/hashtable*
F: tools/libxl/libxl_remus_*
F: tools/libxl/libxl_netbuffer.c
F: tools/libxl/libxl_nonetbuffer.c
diff --git a/config/Tools.mk.in b/config/Tools.mk.in
index 0f79f4e..511406c 100644
--- a/config/Tools.mk.in
+++ b/config/Tools.mk.in
@@ -56,7 +56,6 @@ CONFIG_ROMBIOS := @rombios@
CONFIG_SEABIOS := @seabios@
CONFIG_QEMU_TRAD := @qemu_traditional@
CONFIG_QEMU_XEN := @qemu_xen@
-CONFIG_BLKTAP2 := @blktap2@
CONFIG_QEMUU_EXTRA_ARGS:= @EXTRA_QEMUU_CONFIGURE_ARGS@
CONFIG_LIBNL := @libnl@
diff --git a/docs/misc/xl-disk-configuration.txt b/docs/misc/xl-disk-configuration.txt
index b3402bc..2e9345c 100644
--- a/docs/misc/xl-disk-configuration.txt
+++ b/docs/misc/xl-disk-configuration.txt
@@ -155,7 +155,7 @@ backendtype=<backend-type>
--------------------------
Description: Specifies the backend implementation to use
-Supported values: phy, tap, qdisk
+Supported values: phy, qdisk
Mandatory: No
Default value: Automatically determine which backend to use.
diff --git a/tools/Makefile b/tools/Makefile
index 71515b4..b8fe2ce 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -17,7 +17,6 @@ SUBDIRS-y += console
SUBDIRS-y += xenmon
SUBDIRS-y += xenstat
SUBDIRS-$(CONFIG_Linux) += memshr
-SUBDIRS-$(CONFIG_BLKTAP2) += blktap2
SUBDIRS-$(CONFIG_NetBSD) += xenbackendd
SUBDIRS-y += libfsimage
SUBDIRS-$(CONFIG_Linux) += libvchan
diff --git a/tools/Rules.mk b/tools/Rules.mk
index 5a80fec..bbeef14 100644
--- a/tools/Rules.mk
+++ b/tools/Rules.mk
@@ -19,7 +19,6 @@ XEN_LIBXC = $(XEN_ROOT)/tools/libxc
XEN_XENLIGHT = $(XEN_ROOT)/tools/libxl
XEN_XENSTORE = $(XEN_ROOT)/tools/xenstore
XEN_LIBXENSTAT = $(XEN_ROOT)/tools/xenstat/libxenstat/src
-XEN_BLKTAP2 = $(XEN_ROOT)/tools/blktap2
XEN_LIBVCHAN = $(XEN_ROOT)/tools/libvchan
CFLAGS_xeninclude = -I$(XEN_INCLUDE)
@@ -143,22 +142,8 @@ CFLAGS += -O0 -g3
PY_CFLAGS += $(PY_NOOPT_CFLAGS)
endif
-LIBXL_BLKTAP ?= $(CONFIG_BLKTAP2)
-
-ifeq ($(LIBXL_BLKTAP),y)
-CFLAGS_libblktapctl = -I$(XEN_BLKTAP2)/control -I$(XEN_BLKTAP2)/include $(CFLAGS_xeninclude)
-SHDEPS_libblktapctl =
-LDLIBS_libblktapctl = $(SHDEPS_libblktapctl) $(XEN_BLKTAP2)/control/libblktapctl$(libextension)
-SHLIB_libblktapctl = $(SHDEPS_libblktapctl) -Wl,-rpath-link=$(XEN_BLKTAP2)/control
-else
-CFLAGS_libblktapctl =
-SHDEPS_libblktapctl =
-LDLIBS_libblktapctl =
-SHLIB_libblktapctl =
-endif
-
CFLAGS_libxenlight = -I$(XEN_XENLIGHT) $(CFLAGS_libxenctrl) $(CFLAGS_xeninclude)
-SHDEPS_libxenlight = $(SHLIB_libxenctrl) $(SHLIB_libxenstore) $(SHLIB_libblktapctl)
+SHDEPS_libxenlight = $(SHLIB_libxenctrl) $(SHLIB_libxenstore)
LDLIBS_libxenlight = $(SHDEPS_libxenlight) $(XEN_XENLIGHT)/libxenlight$(libextension)
SHLIB_libxenlight = $(SHDEPS_libxenlight) -Wl,-rpath-link=$(XEN_XENLIGHT)
diff --git a/tools/config.h.in b/tools/config.h.in
index 478a2cc..1b2df2e 100644
--- a/tools/config.h.in
+++ b/tools/config.h.in
@@ -3,9 +3,6 @@
/* Enabling support partial device tree in libxl */
#undef ENABLE_PARTIAL_DEVICE_TREE
-/* Blktap2 enabled */
-#undef HAVE_BLKTAP2
-
/* Define to 1 if you have the declaration of `fdt_first_subnode', and to 0 if
you don't. */
#undef HAVE_DECL_FDT_FIRST_SUBNODE
@@ -27,9 +24,6 @@
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
-/* Define to 1 if you have the `aio' library (-laio). */
-#undef HAVE_LIBAIO
-
/* Define to 1 if you have the `crypto' library (-lcrypto). */
#undef HAVE_LIBCRYPTO
diff --git a/tools/configure b/tools/configure
index 51f16c5..53b9a33 100755
--- a/tools/configure
+++ b/tools/configure
@@ -705,7 +705,6 @@ BCC
LD86
AS86
qemu_traditional
-blktap2
LINUX_BACKEND_MODULES
seabios
ovmf
@@ -804,7 +803,6 @@ enable_xsmpolicy
enable_ovmf
enable_seabios
with_linux_backend_modules
-enable_blktap2
enable_qemu_traditional
enable_rombios
with_system_qemu
@@ -1477,8 +1475,6 @@ Optional Features:
--disable-xsmpolicy Disable XSM policy compilation (default is ENABLED)
--enable-ovmf Enable OVMF (default is DISABLED)
--disable-seabios Disable SeaBIOS (default is ENABLED)
- --enable-blktap2 Enable blktap2, (DEFAULT is on for Linux, otherwise
- off)
--enable-qemu-traditional
Enable qemu traditional device model, (DEFAULT is on
for Linux or NetBSD x86, otherwise off)
@@ -4161,7 +4157,6 @@ xen-scsibk
usbbk
pciback
xen-acpi-processor
-blktap2
"
;;
*)
@@ -4173,33 +4168,6 @@ fi
LINUX_BACKEND_MODULES="`eval echo $LINUX_BACKEND_MODULES`"
-# Check whether --enable-blktap2 was given.
-if test "${enable_blktap2+set}" = set; then :
- enableval=$enable_blktap2;
-else
-
- case "$host_os" in
- linux*)
- enable_blktap2="yes";;
- *) enable_blktap2="no";;
- esac
-
-fi
-
-if test "x$enable_blktap2" = "xyes"; then :
-
-
-$as_echo "#define HAVE_BLKTAP2 1" >>confdefs.h
-
- blktap2=y
-else
-
- blktap2=n
-
-fi
-
-
-
# Check whether --enable-qemu-traditional was given.
if test "${enable_qemu_traditional+set}" = set; then :
enableval=$enable_qemu_traditional;
@@ -8290,57 +8258,6 @@ fi
-if test "x$enable_blktap2" = "xyes"; then :
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for io_setup in -laio" >&5
-$as_echo_n "checking for io_setup in -laio... " >&6; }
-if ${ac_cv_lib_aio_io_setup+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-laio $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char io_setup ();
-int
-main ()
-{
-return io_setup ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_aio_io_setup=yes
-else
- ac_cv_lib_aio_io_setup=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_aio_io_setup" >&5
-$as_echo "$ac_cv_lib_aio_io_setup" >&6; }
-if test "x$ac_cv_lib_aio_io_setup" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBAIO 1
-_ACEOF
-
- LIBS="-laio $LIBS"
-
-else
- as_fn_error $? "Could not find libaio" "$LINENO" 5
-fi
-
-
-fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5 in -lcrypto" >&5
$as_echo_n "checking for MD5 in -lcrypto... " >&6; }
diff --git a/tools/configure.ac b/tools/configure.ac
index 3a4abb5..1cfbcaf 100644
--- a/tools/configure.ac
+++ b/tools/configure.ac
@@ -108,7 +108,6 @@ xen-scsibk
usbbk
pciback
xen-acpi-processor
-blktap2
"
;;
*)
@@ -118,24 +117,6 @@ esac])
LINUX_BACKEND_MODULES="`eval echo $LINUX_BACKEND_MODULES`"
AC_SUBST(LINUX_BACKEND_MODULES)
-dnl Enable blktap2 on Linux only.
-AC_ARG_ENABLE([blktap2],
- AS_HELP_STRING([--enable-blktap2],
- [Enable blktap2, (DEFAULT is on for Linux, otherwise off)]),,[
- case "$host_os" in
- linux*)
- enable_blktap2="yes";;
- *) enable_blktap2="no";;
- esac
-])
-AS_IF([test "x$enable_blktap2" = "xyes"], [
-AC_DEFINE([HAVE_BLKTAP2], [1], [Blktap2 enabled])
- blktap2=y],[
- blktap2=n
-])
-AC_SUBST(blktap2)
-
-
AC_ARG_ENABLE([qemu-traditional],
AS_HELP_STRING([--enable-qemu-traditional],
[Enable qemu traditional device model, (DEFAULT is on for Linux or NetBSD x86, otherwise off)]),,[
@@ -357,9 +338,6 @@ AC_CHECK_HEADER([lzo/lzo1x.h], [
AC_CHECK_LIB([lzo2], [lzo1x_decompress], [zlib="$zlib -DHAVE_LZO1X -llzo2"])
])
AC_SUBST(zlib)
-AS_IF([test "x$enable_blktap2" = "xyes"], [
-AC_CHECK_LIB([aio], [io_setup], [], [AC_MSG_ERROR([Could not find libaio])])
-])
AC_SUBST(system_aio)
AC_CHECK_LIB([crypto], [MD5], [], [AC_MSG_ERROR([Could not find libcrypto])])
AX_CHECK_EXTFS
diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
index 14a1a8e..6994c58 100644
--- a/tools/libxl/Makefile
+++ b/tools/libxl/Makefile
@@ -20,7 +20,7 @@ LIBUUID_LIBS += -luuid
endif
LIBXL_LIBS =
-LIBXL_LIBS = $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore) $(LDLIBS_libblktapctl) $(PTYFUNCS_LIBS) $(LIBUUID_LIBS)
+LIBXL_LIBS = $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore) $(PTYFUNCS_LIBS) $(LIBUUID_LIBS)
ifeq ($(CONFIG_LIBNL),y)
LIBXL_LIBS += $(LIBNL3_LIBS)
endif
@@ -30,7 +30,6 @@ CFLAGS_LIBXL += $(CFLAGS_libxenevtchn)
CFLAGS_LIBXL += $(CFLAGS_libxenctrl)
CFLAGS_LIBXL += $(CFLAGS_libxenguest)
CFLAGS_LIBXL += $(CFLAGS_libxenstore)
-CFLAGS_LIBXL += $(CFLAGS_libblktapctl)
ifeq ($(CONFIG_LIBNL),y)
CFLAGS_LIBXL += $(LIBNL3_CFLAGS)
endif
@@ -46,11 +45,6 @@ LIBXL_LIBS += $(LIBXL_LIBS-y)
LIBXLU_LIBS = $(LDLIBS_libxenlight)
LIBXL_OBJS-y = osdeps.o libxl_paths.o libxl_bootloader.o flexarray.o
-ifeq ($(LIBXL_BLKTAP),y)
-LIBXL_OBJS-y += libxl_blktap2.o
-else
-LIBXL_OBJS-y += libxl_noblktap2.o
-endif
ifeq ($(CONFIG_LIBNL),y)
LIBXL_OBJS-y += libxl_netbuffer.o
diff --git a/tools/libxl/check-xl-disk-parse b/tools/libxl/check-xl-disk-parse
index 03572e4..643f4f4 100755
--- a/tools/libxl/check-xl-disk-parse
+++ b/tools/libxl/check-xl-disk-parse
@@ -3,7 +3,7 @@
set -e
if [ -x ./xl ] ; then
- export LD_LIBRARY_PATH=.:../libxc:../xenstore:../blktap2/control
+ export LD_LIBRARY_PATH=.:../libxc:../xenstore
XL=./xl
else
XL=xl
diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
index 6a50e49..577ed35 100644
--- a/tools/libxl/libxl.c
+++ b/tools/libxl/libxl.c
@@ -2218,7 +2218,6 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
case LIBXL_DISK_BACKEND_PHY:
dev = disk->pdev_path;
- do_backend_phy:
flexarray_append(back, "params");
flexarray_append(back, dev);
@@ -2230,27 +2229,9 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
break;
case LIBXL_DISK_BACKEND_TAP:
- if (dev == NULL) {
- dev = libxl__blktap_devpath(gc, disk->pdev_path,
- disk->format);
- if (!dev) {
- LOG(ERROR, "failed to get blktap devpath for %p",
- disk->pdev_path);
- rc = ERROR_FAIL;
- goto out;
- }
- }
- flexarray_append(back, "tapdisk-params");
- flexarray_append(back, GCSPRINTF("%s:%s",
- libxl__device_disk_string_of_format(disk->format),
- disk->pdev_path));
-
- /* tap backends with scripts are rejected by
- * libxl__device_disk_set_backend */
- assert(!disk->script);
-
- /* now create a phy device to export the device to the guest */
- goto do_backend_phy;
+ LOG(ERROR, "blktap is not supported");
+ rc = ERROR_FAIL;
+ goto out;
case LIBXL_DISK_BACKEND_QDISK:
flexarray_append(back, "params");
flexarray_append(back, GCSPRINTF("%s:%s",
diff --git a/tools/libxl/libxl_blktap2.c b/tools/libxl/libxl_blktap2.c
deleted file mode 100644
index 5c9a0a2..0000000
--- a/tools/libxl/libxl_blktap2.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (C) 2010 Advanced Micro Devices
- * Author Christoph Egger <Christoph.Egger@amd.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published
- * by the Free Software Foundation; version 2.1 only.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- */
-
-#include "libxl_osdeps.h" /* must come before any other headers */
-#include "libxl_internal.h"
-
-#include "tap-ctl.h"
-
-int libxl__blktap_enabled(libxl__gc *gc)
-{
- const char *msg;
- return !tap_ctl_check(&msg);
-}
-
-char *libxl__blktap_devpath(libxl__gc *gc,
- const char *disk,
- libxl_disk_format format)
-{
- const char *type;
- char *params, *devname = NULL;
- tap_list_t tap;
- int err;
-
- type = libxl__device_disk_string_of_format(format);
- err = tap_ctl_find(type, disk, &tap);
- if (err == 0) {
- devname = GCSPRINTF("/dev/xen/blktap-2/tapdev%d", tap.minor);
- if (devname)
- return devname;
- }
-
- params = GCSPRINTF("%s:%s", type, disk);
- err = tap_ctl_create(params, &devname);
- if (!err) {
- libxl__ptr_add(gc, devname);
- return devname;
- }
-
- free(devname);
- return NULL;
-}
-
-
-int libxl__device_destroy_tapdisk(libxl__gc *gc, const char *params)
-{
- char *type, *disk;
- int err;
- tap_list_t tap;
-
- type = libxl__strdup(gc, params);
-
- disk = strchr(type, ':');
- if (!disk) {
- LOG(ERROR, "Unable to parse params %s", params);
- return ERROR_INVAL;
- }
-
- *disk++ = '\0';
-
- err = tap_ctl_find(type, disk, &tap);
- if (err < 0) {
- /* returns -errno */
- LOGEV(ERROR, -err, "Unable to find type %s disk %s", type, disk);
- return ERROR_FAIL;
- }
-
- err = tap_ctl_destroy(tap.id, tap.minor);
- if (err < 0) {
- LOGEV(ERROR, -err, "Failed to destroy tap device id %d minor %d",
- tap.id, tap.minor);
- return ERROR_FAIL;
- }
-
- return 0;
-}
-
-/*
- * Local variables:
- * mode: C
- * c-basic-offset: 4
- * indent-tabs-mode: nil
- * End:
- */
diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c
index dbf157d..9c77b62 100644
--- a/tools/libxl/libxl_device.c
+++ b/tools/libxl/libxl_device.c
@@ -271,26 +271,9 @@ static int disk_try_backend(disk_try_backend_args *a,
return 0;
case LIBXL_DISK_BACKEND_TAP:
- if (a->disk->script) goto bad_script;
-
- if (libxl_defbool_val(a->disk->colo_enable))
- goto bad_colo;
-
- if (a->disk->is_cdrom) {
- LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable for cdroms",
- a->disk->vdev);
- return 0;
- }
- if (!libxl__blktap_enabled(a->gc)) {
- LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable because blktap "
- "not available", a->disk->vdev);
- return 0;
- }
- if (!(a->disk->format == LIBXL_DISK_FORMAT_RAW ||
- a->disk->format == LIBXL_DISK_FORMAT_VHD)) {
- goto bad_format;
- }
- return backend;
+ LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable because blktap "
+ "not supported", a->disk->vdev);
+ return 0;
case LIBXL_DISK_BACKEND_QDISK:
if (a->disk->script) goto bad_script;
@@ -682,8 +665,6 @@ int libxl__device_destroy(libxl__gc *gc, libxl__device *dev)
const char *be_path = libxl__device_backend_path(gc, dev);
const char *fe_path = libxl__device_frontend_path(gc, dev);
const char *libxl_path = libxl__device_libxl_path(gc, dev);
- const char *tapdisk_path = GCSPRINTF("%s/%s", be_path, "tapdisk-params");
- const char *tapdisk_params;
xs_transaction_t t = 0;
int rc;
uint32_t domid;
@@ -695,10 +676,6 @@ int libxl__device_destroy(libxl__gc *gc, libxl__device *dev)
rc = libxl__xs_transaction_start(gc, &t);
if (rc) goto out;
- /* May not exist if this is not a tap device */
- rc = libxl__xs_read_checked(gc, t, tapdisk_path, &tapdisk_params);
- if (rc) goto out;
-
if (domid == LIBXL_TOOLSTACK_DOMID) {
/*
* The toolstack domain is in charge of removing the
@@ -720,9 +697,6 @@ int libxl__device_destroy(libxl__gc *gc, libxl__device *dev)
if (rc < 0) goto out;
}
- if (tapdisk_params)
- rc = libxl__device_destroy_tapdisk(gc, tapdisk_params);
-
out:
libxl__xs_transaction_abort(gc, &t);
return rc;
diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
index e3bf28f..1da956e 100644
--- a/tools/libxl/libxl_dm.c
+++ b/tools/libxl/libxl_dm.c
@@ -1362,20 +1362,9 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
continue;
}
- /*
- * We can't call libxl__blktap_devpath from
- * libxl__device_disk_find_local_path for now because
- * the bootloader is called before the disks are set
- * up, so this function would set up a blktap node,
- * but there's no TAP tear-down on error conditions in
- * the bootloader path.
- */
- if (disks[i].backend == LIBXL_DISK_BACKEND_TAP)
- target_path = libxl__blktap_devpath(gc, disks[i].pdev_path,
- disks[i].format);
- else
- target_path = libxl__device_disk_find_local_path(gc,
- guest_domid, &disks[i], true);
+ assert(disks[i].backend != LIBXL_DISK_BACKEND_TAP);
+ target_path = libxl__device_disk_find_local_path(gc,
+ guest_domid, &disks[i], true);
if (!target_path) {
LOG(WARN, "No way to get local access disk to image: %s\n"
diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h
index 1222ffa..51d505f 100644
--- a/tools/libxl/libxl_internal.h
+++ b/tools/libxl/libxl_internal.h
@@ -1705,25 +1705,6 @@ struct libxl__cpuid_policy {
char *policy[4];
};
-/*
- * blktap2 support
- */
-
-/* libxl__blktap_enabled:
- * return true if blktap/blktap2 support is available.
- */
-_hidden int libxl__blktap_enabled(libxl__gc *gc);
-
-/* libxl__blktap_devpath:
- * Argument: path and disk image as specified in config file.
- * The type specifies whether this is aio, qcow, qcow2, etc.
- * returns device path xenstore wants to have. returns NULL
- * if no device corresponds to the disk.
- */
-_hidden char *libxl__blktap_devpath(libxl__gc *gc,
- const char *disk,
- libxl_disk_format format);
-
/* libxl__device_destroy_tapdisk:
* Destroys any tapdisk process associated with the backend represented
* by be_path.
diff --git a/tools/libxl/libxl_noblktap2.c b/tools/libxl/libxl_noblktap2.c
deleted file mode 100644
index 5a86ed1..0000000
--- a/tools/libxl/libxl_noblktap2.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (C) 2010 Advanced Micro Devices
- * Author Christoph Egger <Christoph.Egger@amd.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published
- * by the Free Software Foundation; version 2.1 only.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- */
-
-#include "libxl_osdeps.h" /* must come before any other headers */
-
-#include "libxl_internal.h"
-
-int libxl__blktap_enabled(libxl__gc *gc)
-{
- return 0;
-}
-
-char *libxl__blktap_devpath(libxl__gc *gc,
- const char *disk,
- libxl_disk_format format)
-{
- return NULL;
-}
-
-int libxl__device_destroy_tapdisk(libxl__gc *gc, const char *params)
-{
- return 0;
-}
-
-/*
- * Local variables:
- * mode: C
- * c-basic-offset: 4
- * indent-tabs-mode: nil
- * End:
- */
diff --git a/tools/xenstore/hashtable.c b/tools/xenstore/hashtable.c
index 0ba1d55..394b1cf 100644
--- a/tools/xenstore/hashtable.c
+++ b/tools/xenstore/hashtable.c
@@ -1,10 +1,5 @@
/* Copyright (C) 2004 Christopher Clark <firstname.lastname@cl.cam.ac.uk> */
-/*
- * There are duplicates of this code in:
- * - tools/blktap2/drivers/hashtable.c
- */
-
#include "hashtable.h"
#include "hashtable_private.h"
#include <stdlib.h>
diff --git a/tools/xenstore/hashtable.h b/tools/xenstore/hashtable.h
index 4d68223..b90781a 100644
--- a/tools/xenstore/hashtable.h
+++ b/tools/xenstore/hashtable.h
@@ -1,10 +1,5 @@
/* Copyright (C) 2002 Christopher Clark <firstname.lastname@cl.cam.ac.uk> */
-/*
- * There are duplicates of this code in:
- * - tools/blktap2/drivers/hashtable.h
- */
-
#ifndef __HASHTABLE_CWC22_H__
#define __HASHTABLE_CWC22_H__
diff --git a/tools/xenstore/hashtable_private.h b/tools/xenstore/hashtable_private.h
index a08559d..3e95f60 100644
--- a/tools/xenstore/hashtable_private.h
+++ b/tools/xenstore/hashtable_private.h
@@ -1,10 +1,5 @@
/* Copyright (C) 2002, 2004 Christopher Clark <firstname.lastname@cl.cam.ac.uk> */
-/*
- * There are duplicates of this code in:
- * - tools/blktap2/drivers/hashtable_private.h
- */
-
#ifndef __HASHTABLE_PRIVATE_CWC22_H__
#define __HASHTABLE_PRIVATE_CWC22_H__
--
2.1.4
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [RFC PATCH] tools: remove blktap2 related code and documentation
2016-08-15 10:50 [RFC PATCH] tools: remove blktap2 related code and documentation Wei Liu
@ 2016-08-16 12:42 ` Yang Hongyang
2016-08-18 10:31 ` George Dunlap
2016-08-26 10:45 ` Wei Liu
2 siblings, 0 replies; 4+ messages in thread
From: Yang Hongyang @ 2016-08-16 12:42 UTC (permalink / raw)
To: Wei Liu
Cc: Lars Kurth, Stefano Stabellini, Ross Philipson, George Dunlap,
Andrew Cooper, Ian Jackson, Tim Deegan, Jan Beulich,
Shriram Rajagopalan, Xen-devel
[-- Attachment #1.1: Type: text/plain, Size: 27477 bytes --]
On Mon, Aug 15, 2016 at 6:50 PM, Wei Liu <wei.liu2@citrix.com> wrote:
> Blktap2 is effectively dead code for a few years.
>
> Notable changes in this patch:
>
> 0. Unhook blktap2 from build system
> 1. Now libxl no longer supports TAP ask backend, appropriate assertions
>
s/ask/disk/
are added and some code paths now return ERROR_FAIL
> 2. Tap is no longer a supported backend in doc
> 3. Remove relevant entries in MAINTAINERS
>
> A patch to actually remove blktap2 directory will come later.
>
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> ---
> Compile-test only at this stage.
>
> Ross, do you have any objection for this? I haven't seen update from the
> joint blktap2 maintenance for a few months.
>
> Cc: Andrew Cooper <andrew.cooper3@citrix.com>
> Cc: George Dunlap <George.Dunlap@eu.citrix.com>
> Cc: Ian Jackson <ian.jackson@eu.citrix.com>
> Cc: Jan Beulich <jbeulich@suse.com>
> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> Cc: Stefano Stabellini <sstabellini@kernel.org>
> Cc: Tim Deegan <tim@xen.org>
> Cc: Shriram Rajagopalan <rshriram@cs.ubc.ca>
> Cc: Yang Hongyang <imhy.yang@gmail.com>
> Cc: Ross Philipson <ross.philipson@gmail.com>
> Cc: Lars Kurth <lars.kurth@citrix.com>
> ---
> .gitignore | 14 ------
> INSTALL | 4 --
> MAINTAINERS | 2 -
> config/Tools.mk.in | 1 -
> docs/misc/xl-disk-configuration.txt | 2 +-
> tools/Makefile | 1 -
> tools/Rules.mk | 17 +------
> tools/config.h.in | 6 ---
> tools/configure | 83 --------------------------------
> tools/configure.ac | 22 ---------
> tools/libxl/Makefile | 8 +---
> tools/libxl/check-xl-disk-parse | 2 +-
> tools/libxl/libxl.c | 25 ++--------
> tools/libxl/libxl_blktap2.c | 94 ------------------------------
> -------
> tools/libxl/libxl_device.c | 32 ++-----------
> tools/libxl/libxl_dm.c | 17 ++-----
> tools/libxl/libxl_internal.h | 19 --------
> tools/libxl/libxl_noblktap2.c | 42 -----------------
> tools/xenstore/hashtable.c | 5 --
> tools/xenstore/hashtable.h | 5 --
> tools/xenstore/hashtable_private.h | 5 --
> 21 files changed, 13 insertions(+), 393 deletions(-)
> delete mode 100644 tools/libxl/libxl_blktap2.c
> delete mode 100644 tools/libxl/libxl_noblktap2.c
>
> diff --git a/.gitignore b/.gitignore
> index d193820..ea27777 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -97,19 +97,6 @@ tools/libs/evtchn/headers.chk
> tools/libs/gnttab/headers.chk
> tools/libs/call/headers.chk
> tools/libs/foreignmemory/headers.chk
> -tools/blktap2/daemon/blktapctrl
> -tools/blktap2/drivers/img2qcow
> -tools/blktap2/drivers/lock-util
> -tools/blktap2/drivers/qcow-create
> -tools/blktap2/drivers/qcow2raw
> -tools/blktap2/drivers/tapdisk
> -tools/blktap2/drivers/tapdisk-client
> -tools/blktap2/drivers/tapdisk-diff
> -tools/blktap2/drivers/tapdisk-stream
> -tools/blktap2/drivers/tapdisk2
> -tools/blktap2/drivers/td-util
> -tools/blktap2/vhd/vhd-update
> -tools/blktap2/vhd/vhd-util
> tools/console/xenconsole
> tools/console/xenconsoled
> tools/console/client/_paths.h
> @@ -327,7 +314,6 @@ tools/libxl/*.pyc
> tools/libxl/libxl-save-helper
> tools/libxl/test_timedereg
> tools/libxl/test_fdderegrace
> -tools/blktap2/control/tap-ctl
> tools/firmware/etherboot/eb-roms.h
> tools/firmware/etherboot/gpxe-git-snapshot.tar.gz
> tools/misc/xenwatchdogd
> diff --git a/INSTALL b/INSTALL
> index 9759354..3b255c7 100644
> --- a/INSTALL
> +++ b/INSTALL
> @@ -144,10 +144,6 @@ this detection and the sysv runlevel scripts have to
> be used.
> --with-systemd=DIR
> --with-systemd-modules-load=DIR
>
> -The old backend drivers are disabled because qdisk is now the default.
> -This option can be used to build them anyway.
> - --enable-blktap2
> -
> Build various stubom components, some are only example code. Its usually
> enough to specify just --enable-stubdom and leave these options alone.
> --enable-ioemu-stubdom
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 97720a8..d54795b 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -322,8 +322,6 @@ M: Shriram Rajagopalan <rshriram@cs.ubc.ca>
> M: Yang Hongyang <imhy.yang@gmail.com>
> S: Maintained
> F: docs/README.remus
> -F: tools/blktap2/drivers/block-remus.c
> -F: tools/blktap2/drivers/hashtable*
> F: tools/libxl/libxl_remus_*
> F: tools/libxl/libxl_netbuffer.c
> F: tools/libxl/libxl_nonetbuffer.c
> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
> index 0f79f4e..511406c 100644
> --- a/config/Tools.mk.in
> +++ b/config/Tools.mk.in
> @@ -56,7 +56,6 @@ CONFIG_ROMBIOS := @rombios@
> CONFIG_SEABIOS := @seabios@
> CONFIG_QEMU_TRAD := @qemu_traditional@
> CONFIG_QEMU_XEN := @qemu_xen@
> -CONFIG_BLKTAP2 := @blktap2@
> CONFIG_QEMUU_EXTRA_ARGS:= @EXTRA_QEMUU_CONFIGURE_ARGS@
> CONFIG_LIBNL := @libnl@
>
> diff --git a/docs/misc/xl-disk-configuration.txt b/docs/misc/xl-disk-
> configuration.txt
> index b3402bc..2e9345c 100644
> --- a/docs/misc/xl-disk-configuration.txt
> +++ b/docs/misc/xl-disk-configuration.txt
> @@ -155,7 +155,7 @@ backendtype=<backend-type>
> --------------------------
>
> Description: Specifies the backend implementation to use
> -Supported values: phy, tap, qdisk
> +Supported values: phy, qdisk
> Mandatory: No
> Default value: Automatically determine which backend to use.
>
> diff --git a/tools/Makefile b/tools/Makefile
> index 71515b4..b8fe2ce 100644
> --- a/tools/Makefile
> +++ b/tools/Makefile
> @@ -17,7 +17,6 @@ SUBDIRS-y += console
> SUBDIRS-y += xenmon
> SUBDIRS-y += xenstat
> SUBDIRS-$(CONFIG_Linux) += memshr
> -SUBDIRS-$(CONFIG_BLKTAP2) += blktap2
> SUBDIRS-$(CONFIG_NetBSD) += xenbackendd
> SUBDIRS-y += libfsimage
> SUBDIRS-$(CONFIG_Linux) += libvchan
> diff --git a/tools/Rules.mk b/tools/Rules.mk
> index 5a80fec..bbeef14 100644
> --- a/tools/Rules.mk
> +++ b/tools/Rules.mk
> @@ -19,7 +19,6 @@ XEN_LIBXC = $(XEN_ROOT)/tools/libxc
> XEN_XENLIGHT = $(XEN_ROOT)/tools/libxl
> XEN_XENSTORE = $(XEN_ROOT)/tools/xenstore
> XEN_LIBXENSTAT = $(XEN_ROOT)/tools/xenstat/libxenstat/src
> -XEN_BLKTAP2 = $(XEN_ROOT)/tools/blktap2
> XEN_LIBVCHAN = $(XEN_ROOT)/tools/libvchan
>
> CFLAGS_xeninclude = -I$(XEN_INCLUDE)
> @@ -143,22 +142,8 @@ CFLAGS += -O0 -g3
> PY_CFLAGS += $(PY_NOOPT_CFLAGS)
> endif
>
> -LIBXL_BLKTAP ?= $(CONFIG_BLKTAP2)
> -
> -ifeq ($(LIBXL_BLKTAP),y)
> -CFLAGS_libblktapctl = -I$(XEN_BLKTAP2)/control -I$(XEN_BLKTAP2)/include
> $(CFLAGS_xeninclude)
> -SHDEPS_libblktapctl =
> -LDLIBS_libblktapctl = $(SHDEPS_libblktapctl) $(XEN_BLKTAP2)/control/
> libblktapctl$(libextension)
> -SHLIB_libblktapctl = $(SHDEPS_libblktapctl)
> -Wl,-rpath-link=$(XEN_BLKTAP2)/control
> -else
> -CFLAGS_libblktapctl =
> -SHDEPS_libblktapctl =
> -LDLIBS_libblktapctl =
> -SHLIB_libblktapctl =
> -endif
> -
> CFLAGS_libxenlight = -I$(XEN_XENLIGHT) $(CFLAGS_libxenctrl)
> $(CFLAGS_xeninclude)
> -SHDEPS_libxenlight = $(SHLIB_libxenctrl) $(SHLIB_libxenstore)
> $(SHLIB_libblktapctl)
> +SHDEPS_libxenlight = $(SHLIB_libxenctrl) $(SHLIB_libxenstore)
> LDLIBS_libxenlight = $(SHDEPS_libxenlight) $(XEN_XENLIGHT)/libxenlight$(
> libextension)
> SHLIB_libxenlight = $(SHDEPS_libxenlight) -Wl,-rpath-link=$(XEN_
> XENLIGHT)
>
> diff --git a/tools/config.h.in b/tools/config.h.in
> index 478a2cc..1b2df2e 100644
> --- a/tools/config.h.in
> +++ b/tools/config.h.in
> @@ -3,9 +3,6 @@
> /* Enabling support partial device tree in libxl */
> #undef ENABLE_PARTIAL_DEVICE_TREE
>
> -/* Blktap2 enabled */
> -#undef HAVE_BLKTAP2
> -
> /* Define to 1 if you have the declaration of `fdt_first_subnode', and to
> 0 if
> you don't. */
> #undef HAVE_DECL_FDT_FIRST_SUBNODE
> @@ -27,9 +24,6 @@
> /* Define to 1 if you have the <inttypes.h> header file. */
> #undef HAVE_INTTYPES_H
>
> -/* Define to 1 if you have the `aio' library (-laio). */
> -#undef HAVE_LIBAIO
> -
> /* Define to 1 if you have the `crypto' library (-lcrypto). */
> #undef HAVE_LIBCRYPTO
>
> diff --git a/tools/configure b/tools/configure
> index 51f16c5..53b9a33 100755
> --- a/tools/configure
> +++ b/tools/configure
> @@ -705,7 +705,6 @@ BCC
> LD86
> AS86
> qemu_traditional
> -blktap2
> LINUX_BACKEND_MODULES
> seabios
> ovmf
> @@ -804,7 +803,6 @@ enable_xsmpolicy
> enable_ovmf
> enable_seabios
> with_linux_backend_modules
> -enable_blktap2
> enable_qemu_traditional
> enable_rombios
> with_system_qemu
> @@ -1477,8 +1475,6 @@ Optional Features:
> --disable-xsmpolicy Disable XSM policy compilation (default is
> ENABLED)
> --enable-ovmf Enable OVMF (default is DISABLED)
> --disable-seabios Disable SeaBIOS (default is ENABLED)
> - --enable-blktap2 Enable blktap2, (DEFAULT is on for Linux,
> otherwise
> - off)
> --enable-qemu-traditional
> Enable qemu traditional device model, (DEFAULT
> is on
> for Linux or NetBSD x86, otherwise off)
> @@ -4161,7 +4157,6 @@ xen-scsibk
> usbbk
> pciback
> xen-acpi-processor
> -blktap2
> "
> ;;
> *)
> @@ -4173,33 +4168,6 @@ fi
> LINUX_BACKEND_MODULES="`eval echo $LINUX_BACKEND_MODULES`"
>
>
> -# Check whether --enable-blktap2 was given.
> -if test "${enable_blktap2+set}" = set; then :
> - enableval=$enable_blktap2;
> -else
> -
> - case "$host_os" in
> - linux*)
> - enable_blktap2="yes";;
> - *) enable_blktap2="no";;
> - esac
> -
> -fi
> -
> -if test "x$enable_blktap2" = "xyes"; then :
> -
> -
> -$as_echo "#define HAVE_BLKTAP2 1" >>confdefs.h
> -
> - blktap2=y
> -else
> -
> - blktap2=n
> -
> -fi
> -
> -
> -
> # Check whether --enable-qemu-traditional was given.
> if test "${enable_qemu_traditional+set}" = set; then :
> enableval=$enable_qemu_traditional;
> @@ -8290,57 +8258,6 @@ fi
>
>
>
> -if test "x$enable_blktap2" = "xyes"; then :
> -
> -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for io_setup in -laio"
> >&5
> -$as_echo_n "checking for io_setup in -laio... " >&6; }
> -if ${ac_cv_lib_aio_io_setup+:} false; then :
> - $as_echo_n "(cached) " >&6
> -else
> - ac_check_lib_save_LIBS=$LIBS
> -LIBS="-laio $LIBS"
> -cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> -/* end confdefs.h. */
> -
> -/* Override any GCC internal prototype to avoid an error.
> - Use char because int might match the return type of a GCC
> - builtin and then its argument prototype would still apply. */
> -#ifdef __cplusplus
> -extern "C"
> -#endif
> -char io_setup ();
> -int
> -main ()
> -{
> -return io_setup ();
> - ;
> - return 0;
> -}
> -_ACEOF
> -if ac_fn_c_try_link "$LINENO"; then :
> - ac_cv_lib_aio_io_setup=yes
> -else
> - ac_cv_lib_aio_io_setup=no
> -fi
> -rm -f core conftest.err conftest.$ac_objext \
> - conftest$ac_exeext conftest.$ac_ext
> -LIBS=$ac_check_lib_save_LIBS
> -fi
> -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_aio_io_setup"
> >&5
> -$as_echo "$ac_cv_lib_aio_io_setup" >&6; }
> -if test "x$ac_cv_lib_aio_io_setup" = xyes; then :
> - cat >>confdefs.h <<_ACEOF
> -#define HAVE_LIBAIO 1
> -_ACEOF
> -
> - LIBS="-laio $LIBS"
> -
> -else
> - as_fn_error $? "Could not find libaio" "$LINENO" 5
> -fi
> -
> -
> -fi
>
> { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5 in -lcrypto" >&5
> $as_echo_n "checking for MD5 in -lcrypto... " >&6; }
> diff --git a/tools/configure.ac b/tools/configure.ac
> index 3a4abb5..1cfbcaf 100644
> --- a/tools/configure.ac
> +++ b/tools/configure.ac
> @@ -108,7 +108,6 @@ xen-scsibk
> usbbk
> pciback
> xen-acpi-processor
> -blktap2
> "
> ;;
> *)
> @@ -118,24 +117,6 @@ esac])
> LINUX_BACKEND_MODULES="`eval echo $LINUX_BACKEND_MODULES`"
> AC_SUBST(LINUX_BACKEND_MODULES)
>
> -dnl Enable blktap2 on Linux only.
> -AC_ARG_ENABLE([blktap2],
> - AS_HELP_STRING([--enable-blktap2],
> - [Enable blktap2, (DEFAULT is on for Linux, otherwise
> off)]),,[
> - case "$host_os" in
> - linux*)
> - enable_blktap2="yes";;
> - *) enable_blktap2="no";;
> - esac
> -])
> -AS_IF([test "x$enable_blktap2" = "xyes"], [
> -AC_DEFINE([HAVE_BLKTAP2], [1], [Blktap2 enabled])
> - blktap2=y],[
> - blktap2=n
> -])
> -AC_SUBST(blktap2)
> -
> -
> AC_ARG_ENABLE([qemu-traditional],
> AS_HELP_STRING([--enable-qemu-traditional],
> [Enable qemu traditional device model, (DEFAULT is on
> for Linux or NetBSD x86, otherwise off)]),,[
> @@ -357,9 +338,6 @@ AC_CHECK_HEADER([lzo/lzo1x.h], [
> AC_CHECK_LIB([lzo2], [lzo1x_decompress], [zlib="$zlib -DHAVE_LZO1X
> -llzo2"])
> ])
> AC_SUBST(zlib)
> -AS_IF([test "x$enable_blktap2" = "xyes"], [
> -AC_CHECK_LIB([aio], [io_setup], [], [AC_MSG_ERROR([Could not find
> libaio])])
> -])
> AC_SUBST(system_aio)
> AC_CHECK_LIB([crypto], [MD5], [], [AC_MSG_ERROR([Could not find
> libcrypto])])
> AX_CHECK_EXTFS
> diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
> index 14a1a8e..6994c58 100644
> --- a/tools/libxl/Makefile
> +++ b/tools/libxl/Makefile
> @@ -20,7 +20,7 @@ LIBUUID_LIBS += -luuid
> endif
>
> LIBXL_LIBS =
> -LIBXL_LIBS = $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn)
> $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore)
> $(LDLIBS_libblktapctl) $(PTYFUNCS_LIBS) $(LIBUUID_LIBS)
> +LIBXL_LIBS = $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn)
> $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore)
> $(PTYFUNCS_LIBS) $(LIBUUID_LIBS)
> ifeq ($(CONFIG_LIBNL),y)
> LIBXL_LIBS += $(LIBNL3_LIBS)
> endif
> @@ -30,7 +30,6 @@ CFLAGS_LIBXL += $(CFLAGS_libxenevtchn)
> CFLAGS_LIBXL += $(CFLAGS_libxenctrl)
> CFLAGS_LIBXL += $(CFLAGS_libxenguest)
> CFLAGS_LIBXL += $(CFLAGS_libxenstore)
> -CFLAGS_LIBXL += $(CFLAGS_libblktapctl)
> ifeq ($(CONFIG_LIBNL),y)
> CFLAGS_LIBXL += $(LIBNL3_CFLAGS)
> endif
> @@ -46,11 +45,6 @@ LIBXL_LIBS += $(LIBXL_LIBS-y)
> LIBXLU_LIBS = $(LDLIBS_libxenlight)
>
> LIBXL_OBJS-y = osdeps.o libxl_paths.o libxl_bootloader.o flexarray.o
> -ifeq ($(LIBXL_BLKTAP),y)
> -LIBXL_OBJS-y += libxl_blktap2.o
> -else
> -LIBXL_OBJS-y += libxl_noblktap2.o
> -endif
>
> ifeq ($(CONFIG_LIBNL),y)
> LIBXL_OBJS-y += libxl_netbuffer.o
> diff --git a/tools/libxl/check-xl-disk-parse b/tools/libxl/check-xl-disk-
> parse
> index 03572e4..643f4f4 100755
> --- a/tools/libxl/check-xl-disk-parse
> +++ b/tools/libxl/check-xl-disk-parse
> @@ -3,7 +3,7 @@
> set -e
>
> if [ -x ./xl ] ; then
> - export LD_LIBRARY_PATH=.:../libxc:../xenstore:../blktap2/control
> + export LD_LIBRARY_PATH=.:../libxc:../xenstore
> XL=./xl
> else
> XL=xl
> diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
> index 6a50e49..577ed35 100644
> --- a/tools/libxl/libxl.c
> +++ b/tools/libxl/libxl.c
> @@ -2218,7 +2218,6 @@ static void device_disk_add(libxl__egc *egc,
> uint32_t domid,
> case LIBXL_DISK_BACKEND_PHY:
> dev = disk->pdev_path;
>
> - do_backend_phy:
> flexarray_append(back, "params");
> flexarray_append(back, dev);
>
> @@ -2230,27 +2229,9 @@ static void device_disk_add(libxl__egc *egc,
> uint32_t domid,
> break;
>
> case LIBXL_DISK_BACKEND_TAP:
> - if (dev == NULL) {
> - dev = libxl__blktap_devpath(gc, disk->pdev_path,
> - disk->format);
> - if (!dev) {
> - LOG(ERROR, "failed to get blktap devpath for %p",
> - disk->pdev_path);
> - rc = ERROR_FAIL;
> - goto out;
> - }
> - }
> - flexarray_append(back, "tapdisk-params");
> - flexarray_append(back, GCSPRINTF("%s:%s",
> - libxl__device_disk_string_of_format(disk->format),
> - disk->pdev_path));
> -
> - /* tap backends with scripts are rejected by
> - * libxl__device_disk_set_backend */
> - assert(!disk->script);
> -
> - /* now create a phy device to export the device to the
> guest */
> - goto do_backend_phy;
> + LOG(ERROR, "blktap is not supported");
> + rc = ERROR_FAIL;
> + goto out;
> case LIBXL_DISK_BACKEND_QDISK:
> flexarray_append(back, "params");
> flexarray_append(back, GCSPRINTF("%s:%s",
> diff --git a/tools/libxl/libxl_blktap2.c b/tools/libxl/libxl_blktap2.c
> deleted file mode 100644
> index 5c9a0a2..0000000
> --- a/tools/libxl/libxl_blktap2.c
> +++ /dev/null
> @@ -1,94 +0,0 @@
> -/*
> - * Copyright (C) 2010 Advanced Micro Devices
> - * Author Christoph Egger <Christoph.Egger@amd.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU Lesser General Public License as
> published
> - * by the Free Software Foundation; version 2.1 only.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> - * GNU Lesser General Public License for more details.
> - */
> -
> -#include "libxl_osdeps.h" /* must come before any other headers */
> -#include "libxl_internal.h"
> -
> -#include "tap-ctl.h"
> -
> -int libxl__blktap_enabled(libxl__gc *gc)
> -{
> - const char *msg;
> - return !tap_ctl_check(&msg);
> -}
> -
> -char *libxl__blktap_devpath(libxl__gc *gc,
> - const char *disk,
> - libxl_disk_format format)
> -{
> - const char *type;
> - char *params, *devname = NULL;
> - tap_list_t tap;
> - int err;
> -
> - type = libxl__device_disk_string_of_format(format);
> - err = tap_ctl_find(type, disk, &tap);
> - if (err == 0) {
> - devname = GCSPRINTF("/dev/xen/blktap-2/tapdev%d", tap.minor);
> - if (devname)
> - return devname;
> - }
> -
> - params = GCSPRINTF("%s:%s", type, disk);
> - err = tap_ctl_create(params, &devname);
> - if (!err) {
> - libxl__ptr_add(gc, devname);
> - return devname;
> - }
> -
> - free(devname);
> - return NULL;
> -}
> -
> -
> -int libxl__device_destroy_tapdisk(libxl__gc *gc, const char *params)
> -{
> - char *type, *disk;
> - int err;
> - tap_list_t tap;
> -
> - type = libxl__strdup(gc, params);
> -
> - disk = strchr(type, ':');
> - if (!disk) {
> - LOG(ERROR, "Unable to parse params %s", params);
> - return ERROR_INVAL;
> - }
> -
> - *disk++ = '\0';
> -
> - err = tap_ctl_find(type, disk, &tap);
> - if (err < 0) {
> - /* returns -errno */
> - LOGEV(ERROR, -err, "Unable to find type %s disk %s", type, disk);
> - return ERROR_FAIL;
> - }
> -
> - err = tap_ctl_destroy(tap.id, tap.minor);
> - if (err < 0) {
> - LOGEV(ERROR, -err, "Failed to destroy tap device id %d minor %d",
> - tap.id, tap.minor);
> - return ERROR_FAIL;
> - }
> -
> - return 0;
> -}
> -
> -/*
> - * Local variables:
> - * mode: C
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */
> diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c
> index dbf157d..9c77b62 100644
> --- a/tools/libxl/libxl_device.c
> +++ b/tools/libxl/libxl_device.c
> @@ -271,26 +271,9 @@ static int disk_try_backend(disk_try_backend_args *a,
> return 0;
>
> case LIBXL_DISK_BACKEND_TAP:
> - if (a->disk->script) goto bad_script;
> -
> - if (libxl_defbool_val(a->disk->colo_enable))
> - goto bad_colo;
> -
> - if (a->disk->is_cdrom) {
> - LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable for cdroms",
> - a->disk->vdev);
> - return 0;
> - }
> - if (!libxl__blktap_enabled(a->gc)) {
> - LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable because
> blktap "
> - "not available", a->disk->vdev);
> - return 0;
> - }
> - if (!(a->disk->format == LIBXL_DISK_FORMAT_RAW ||
> - a->disk->format == LIBXL_DISK_FORMAT_VHD)) {
> - goto bad_format;
> - }
> - return backend;
> + LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable because blktap "
> + "not supported", a->disk->vdev);
> + return 0;
>
> case LIBXL_DISK_BACKEND_QDISK:
> if (a->disk->script) goto bad_script;
> @@ -682,8 +665,6 @@ int libxl__device_destroy(libxl__gc *gc,
> libxl__device *dev)
> const char *be_path = libxl__device_backend_path(gc, dev);
> const char *fe_path = libxl__device_frontend_path(gc, dev);
> const char *libxl_path = libxl__device_libxl_path(gc, dev);
> - const char *tapdisk_path = GCSPRINTF("%s/%s", be_path,
> "tapdisk-params");
> - const char *tapdisk_params;
> xs_transaction_t t = 0;
> int rc;
> uint32_t domid;
> @@ -695,10 +676,6 @@ int libxl__device_destroy(libxl__gc *gc,
> libxl__device *dev)
> rc = libxl__xs_transaction_start(gc, &t);
> if (rc) goto out;
>
> - /* May not exist if this is not a tap device */
> - rc = libxl__xs_read_checked(gc, t, tapdisk_path, &tapdisk_params);
> - if (rc) goto out;
> -
> if (domid == LIBXL_TOOLSTACK_DOMID) {
> /*
> * The toolstack domain is in charge of removing the
> @@ -720,9 +697,6 @@ int libxl__device_destroy(libxl__gc *gc,
> libxl__device *dev)
> if (rc < 0) goto out;
> }
>
> - if (tapdisk_params)
> - rc = libxl__device_destroy_tapdisk(gc, tapdisk_params);
> -
> out:
> libxl__xs_transaction_abort(gc, &t);
> return rc;
> diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
> index e3bf28f..1da956e 100644
> --- a/tools/libxl/libxl_dm.c
> +++ b/tools/libxl/libxl_dm.c
> @@ -1362,20 +1362,9 @@ static int libxl__build_device_model_args_new(libxl__gc
> *gc,
> continue;
> }
>
> - /*
> - * We can't call libxl__blktap_devpath from
> - * libxl__device_disk_find_local_path for now because
> - * the bootloader is called before the disks are set
> - * up, so this function would set up a blktap node,
> - * but there's no TAP tear-down on error conditions in
> - * the bootloader path.
> - */
> - if (disks[i].backend == LIBXL_DISK_BACKEND_TAP)
> - target_path = libxl__blktap_devpath(gc,
> disks[i].pdev_path,
> - disks[i].format);
> - else
> - target_path = libxl__device_disk_find_local_path(gc,
> - guest_domid, &disks[i],
> true);
> + assert(disks[i].backend != LIBXL_DISK_BACKEND_TAP);
> + target_path = libxl__device_disk_find_local_path(gc,
> + guest_domid, &disks[i], true);
>
> if (!target_path) {
> LOG(WARN, "No way to get local access disk to image:
> %s\n"
> diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h
> index 1222ffa..51d505f 100644
> --- a/tools/libxl/libxl_internal.h
> +++ b/tools/libxl/libxl_internal.h
> @@ -1705,25 +1705,6 @@ struct libxl__cpuid_policy {
> char *policy[4];
> };
>
> -/*
> - * blktap2 support
> - */
> -
> -/* libxl__blktap_enabled:
> - * return true if blktap/blktap2 support is available.
> - */
> -_hidden int libxl__blktap_enabled(libxl__gc *gc);
> -
> -/* libxl__blktap_devpath:
> - * Argument: path and disk image as specified in config file.
> - * The type specifies whether this is aio, qcow, qcow2, etc.
> - * returns device path xenstore wants to have. returns NULL
> - * if no device corresponds to the disk.
> - */
> -_hidden char *libxl__blktap_devpath(libxl__gc *gc,
> - const char *disk,
> - libxl_disk_format format);
> -
> /* libxl__device_destroy_tapdisk:
> * Destroys any tapdisk process associated with the backend represented
> * by be_path.
> diff --git a/tools/libxl/libxl_noblktap2.c b/tools/libxl/libxl_noblktap2.c
> deleted file mode 100644
> index 5a86ed1..0000000
> --- a/tools/libxl/libxl_noblktap2.c
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -/*
> - * Copyright (C) 2010 Advanced Micro Devices
> - * Author Christoph Egger <Christoph.Egger@amd.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU Lesser General Public License as
> published
> - * by the Free Software Foundation; version 2.1 only.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> - * GNU Lesser General Public License for more details.
> - */
> -
> -#include "libxl_osdeps.h" /* must come before any other headers */
> -
> -#include "libxl_internal.h"
> -
> -int libxl__blktap_enabled(libxl__gc *gc)
> -{
> - return 0;
> -}
> -
> -char *libxl__blktap_devpath(libxl__gc *gc,
> - const char *disk,
> - libxl_disk_format format)
> -{
> - return NULL;
> -}
> -
> -int libxl__device_destroy_tapdisk(libxl__gc *gc, const char *params)
> -{
> - return 0;
> -}
> -
> -/*
> - * Local variables:
> - * mode: C
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */
> diff --git a/tools/xenstore/hashtable.c b/tools/xenstore/hashtable.c
> index 0ba1d55..394b1cf 100644
> --- a/tools/xenstore/hashtable.c
> +++ b/tools/xenstore/hashtable.c
> @@ -1,10 +1,5 @@
> /* Copyright (C) 2004 Christopher Clark <firstname.lastname@cl.cam.ac.uk>
> */
>
> -/*
> - * There are duplicates of this code in:
> - * - tools/blktap2/drivers/hashtable.c
> - */
> -
> #include "hashtable.h"
> #include "hashtable_private.h"
> #include <stdlib.h>
> diff --git a/tools/xenstore/hashtable.h b/tools/xenstore/hashtable.h
> index 4d68223..b90781a 100644
> --- a/tools/xenstore/hashtable.h
> +++ b/tools/xenstore/hashtable.h
> @@ -1,10 +1,5 @@
> /* Copyright (C) 2002 Christopher Clark <firstname.lastname@cl.cam.ac.uk>
> */
>
> -/*
> - * There are duplicates of this code in:
> - * - tools/blktap2/drivers/hashtable.h
> - */
> -
> #ifndef __HASHTABLE_CWC22_H__
> #define __HASHTABLE_CWC22_H__
>
> diff --git a/tools/xenstore/hashtable_private.h
> b/tools/xenstore/hashtable_private.h
> index a08559d..3e95f60 100644
> --- a/tools/xenstore/hashtable_private.h
> +++ b/tools/xenstore/hashtable_private.h
> @@ -1,10 +1,5 @@
> /* Copyright (C) 2002, 2004 Christopher Clark <
> firstname.lastname@cl.cam.ac.uk> */
>
> -/*
> - * There are duplicates of this code in:
> - * - tools/blktap2/drivers/hashtable_private.h
> - */
> -
> #ifndef __HASHTABLE_PRIVATE_CWC22_H__
> #define __HASHTABLE_PRIVATE_CWC22_H__
>
> --
> 2.1.4
>
>
--
Thanks,
Yang
[-- Attachment #1.2: Type: text/html, Size: 35392 bytes --]
[-- Attachment #2: Type: text/plain, Size: 127 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [RFC PATCH] tools: remove blktap2 related code and documentation
2016-08-15 10:50 [RFC PATCH] tools: remove blktap2 related code and documentation Wei Liu
2016-08-16 12:42 ` Yang Hongyang
@ 2016-08-18 10:31 ` George Dunlap
2016-08-26 10:45 ` Wei Liu
2 siblings, 0 replies; 4+ messages in thread
From: George Dunlap @ 2016-08-18 10:31 UTC (permalink / raw)
To: Wei Liu, Xen-devel
Cc: Lars Kurth, Stefano Stabellini, Ross Philipson, George Dunlap,
Andrew Cooper, Ian Jackson, Tim Deegan, Yang Hongyang,
Jan Beulich, Shriram Rajagopalan
On 15/08/16 11:50, Wei Liu wrote:
> Blktap2 is effectively dead code for a few years.
>
> Notable changes in this patch:
>
> 0. Unhook blktap2 from build system
> 1. Now libxl no longer supports TAP ask backend, appropriate assertions
> are added and some code paths now return ERROR_FAIL
> 2. Tap is no longer a supported backend in doc
> 3. Remove relevant entries in MAINTAINERS
>
> A patch to actually remove blktap2 directory will come later.
>
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Oh right -- I'd actually forgotten that we've had the build disabled for
several releases now.
Acked-by: George Dunlap <george.dunlap@citrix.com>
> ---
> Compile-test only at this stage.
>
> Ross, do you have any objection for this? I haven't seen update from the
> joint blktap2 maintenance for a few months.
>
> Cc: Andrew Cooper <andrew.cooper3@citrix.com>
> Cc: George Dunlap <George.Dunlap@eu.citrix.com>
> Cc: Ian Jackson <ian.jackson@eu.citrix.com>
> Cc: Jan Beulich <jbeulich@suse.com>
> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> Cc: Stefano Stabellini <sstabellini@kernel.org>
> Cc: Tim Deegan <tim@xen.org>
> Cc: Shriram Rajagopalan <rshriram@cs.ubc.ca>
> Cc: Yang Hongyang <imhy.yang@gmail.com>
> Cc: Ross Philipson <ross.philipson@gmail.com>
> Cc: Lars Kurth <lars.kurth@citrix.com>
> ---
> .gitignore | 14 ------
> INSTALL | 4 --
> MAINTAINERS | 2 -
> config/Tools.mk.in | 1 -
> docs/misc/xl-disk-configuration.txt | 2 +-
> tools/Makefile | 1 -
> tools/Rules.mk | 17 +------
> tools/config.h.in | 6 ---
> tools/configure | 83 --------------------------------
> tools/configure.ac | 22 ---------
> tools/libxl/Makefile | 8 +---
> tools/libxl/check-xl-disk-parse | 2 +-
> tools/libxl/libxl.c | 25 ++--------
> tools/libxl/libxl_blktap2.c | 94 -------------------------------------
> tools/libxl/libxl_device.c | 32 ++-----------
> tools/libxl/libxl_dm.c | 17 ++-----
> tools/libxl/libxl_internal.h | 19 --------
> tools/libxl/libxl_noblktap2.c | 42 -----------------
> tools/xenstore/hashtable.c | 5 --
> tools/xenstore/hashtable.h | 5 --
> tools/xenstore/hashtable_private.h | 5 --
> 21 files changed, 13 insertions(+), 393 deletions(-)
> delete mode 100644 tools/libxl/libxl_blktap2.c
> delete mode 100644 tools/libxl/libxl_noblktap2.c
>
> diff --git a/.gitignore b/.gitignore
> index d193820..ea27777 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -97,19 +97,6 @@ tools/libs/evtchn/headers.chk
> tools/libs/gnttab/headers.chk
> tools/libs/call/headers.chk
> tools/libs/foreignmemory/headers.chk
> -tools/blktap2/daemon/blktapctrl
> -tools/blktap2/drivers/img2qcow
> -tools/blktap2/drivers/lock-util
> -tools/blktap2/drivers/qcow-create
> -tools/blktap2/drivers/qcow2raw
> -tools/blktap2/drivers/tapdisk
> -tools/blktap2/drivers/tapdisk-client
> -tools/blktap2/drivers/tapdisk-diff
> -tools/blktap2/drivers/tapdisk-stream
> -tools/blktap2/drivers/tapdisk2
> -tools/blktap2/drivers/td-util
> -tools/blktap2/vhd/vhd-update
> -tools/blktap2/vhd/vhd-util
> tools/console/xenconsole
> tools/console/xenconsoled
> tools/console/client/_paths.h
> @@ -327,7 +314,6 @@ tools/libxl/*.pyc
> tools/libxl/libxl-save-helper
> tools/libxl/test_timedereg
> tools/libxl/test_fdderegrace
> -tools/blktap2/control/tap-ctl
> tools/firmware/etherboot/eb-roms.h
> tools/firmware/etherboot/gpxe-git-snapshot.tar.gz
> tools/misc/xenwatchdogd
> diff --git a/INSTALL b/INSTALL
> index 9759354..3b255c7 100644
> --- a/INSTALL
> +++ b/INSTALL
> @@ -144,10 +144,6 @@ this detection and the sysv runlevel scripts have to be used.
> --with-systemd=DIR
> --with-systemd-modules-load=DIR
>
> -The old backend drivers are disabled because qdisk is now the default.
> -This option can be used to build them anyway.
> - --enable-blktap2
> -
> Build various stubom components, some are only example code. Its usually
> enough to specify just --enable-stubdom and leave these options alone.
> --enable-ioemu-stubdom
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 97720a8..d54795b 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -322,8 +322,6 @@ M: Shriram Rajagopalan <rshriram@cs.ubc.ca>
> M: Yang Hongyang <imhy.yang@gmail.com>
> S: Maintained
> F: docs/README.remus
> -F: tools/blktap2/drivers/block-remus.c
> -F: tools/blktap2/drivers/hashtable*
> F: tools/libxl/libxl_remus_*
> F: tools/libxl/libxl_netbuffer.c
> F: tools/libxl/libxl_nonetbuffer.c
> diff --git a/config/Tools.mk.in b/config/Tools.mk.in
> index 0f79f4e..511406c 100644
> --- a/config/Tools.mk.in
> +++ b/config/Tools.mk.in
> @@ -56,7 +56,6 @@ CONFIG_ROMBIOS := @rombios@
> CONFIG_SEABIOS := @seabios@
> CONFIG_QEMU_TRAD := @qemu_traditional@
> CONFIG_QEMU_XEN := @qemu_xen@
> -CONFIG_BLKTAP2 := @blktap2@
> CONFIG_QEMUU_EXTRA_ARGS:= @EXTRA_QEMUU_CONFIGURE_ARGS@
> CONFIG_LIBNL := @libnl@
>
> diff --git a/docs/misc/xl-disk-configuration.txt b/docs/misc/xl-disk-configuration.txt
> index b3402bc..2e9345c 100644
> --- a/docs/misc/xl-disk-configuration.txt
> +++ b/docs/misc/xl-disk-configuration.txt
> @@ -155,7 +155,7 @@ backendtype=<backend-type>
> --------------------------
>
> Description: Specifies the backend implementation to use
> -Supported values: phy, tap, qdisk
> +Supported values: phy, qdisk
> Mandatory: No
> Default value: Automatically determine which backend to use.
>
> diff --git a/tools/Makefile b/tools/Makefile
> index 71515b4..b8fe2ce 100644
> --- a/tools/Makefile
> +++ b/tools/Makefile
> @@ -17,7 +17,6 @@ SUBDIRS-y += console
> SUBDIRS-y += xenmon
> SUBDIRS-y += xenstat
> SUBDIRS-$(CONFIG_Linux) += memshr
> -SUBDIRS-$(CONFIG_BLKTAP2) += blktap2
> SUBDIRS-$(CONFIG_NetBSD) += xenbackendd
> SUBDIRS-y += libfsimage
> SUBDIRS-$(CONFIG_Linux) += libvchan
> diff --git a/tools/Rules.mk b/tools/Rules.mk
> index 5a80fec..bbeef14 100644
> --- a/tools/Rules.mk
> +++ b/tools/Rules.mk
> @@ -19,7 +19,6 @@ XEN_LIBXC = $(XEN_ROOT)/tools/libxc
> XEN_XENLIGHT = $(XEN_ROOT)/tools/libxl
> XEN_XENSTORE = $(XEN_ROOT)/tools/xenstore
> XEN_LIBXENSTAT = $(XEN_ROOT)/tools/xenstat/libxenstat/src
> -XEN_BLKTAP2 = $(XEN_ROOT)/tools/blktap2
> XEN_LIBVCHAN = $(XEN_ROOT)/tools/libvchan
>
> CFLAGS_xeninclude = -I$(XEN_INCLUDE)
> @@ -143,22 +142,8 @@ CFLAGS += -O0 -g3
> PY_CFLAGS += $(PY_NOOPT_CFLAGS)
> endif
>
> -LIBXL_BLKTAP ?= $(CONFIG_BLKTAP2)
> -
> -ifeq ($(LIBXL_BLKTAP),y)
> -CFLAGS_libblktapctl = -I$(XEN_BLKTAP2)/control -I$(XEN_BLKTAP2)/include $(CFLAGS_xeninclude)
> -SHDEPS_libblktapctl =
> -LDLIBS_libblktapctl = $(SHDEPS_libblktapctl) $(XEN_BLKTAP2)/control/libblktapctl$(libextension)
> -SHLIB_libblktapctl = $(SHDEPS_libblktapctl) -Wl,-rpath-link=$(XEN_BLKTAP2)/control
> -else
> -CFLAGS_libblktapctl =
> -SHDEPS_libblktapctl =
> -LDLIBS_libblktapctl =
> -SHLIB_libblktapctl =
> -endif
> -
> CFLAGS_libxenlight = -I$(XEN_XENLIGHT) $(CFLAGS_libxenctrl) $(CFLAGS_xeninclude)
> -SHDEPS_libxenlight = $(SHLIB_libxenctrl) $(SHLIB_libxenstore) $(SHLIB_libblktapctl)
> +SHDEPS_libxenlight = $(SHLIB_libxenctrl) $(SHLIB_libxenstore)
> LDLIBS_libxenlight = $(SHDEPS_libxenlight) $(XEN_XENLIGHT)/libxenlight$(libextension)
> SHLIB_libxenlight = $(SHDEPS_libxenlight) -Wl,-rpath-link=$(XEN_XENLIGHT)
>
> diff --git a/tools/config.h.in b/tools/config.h.in
> index 478a2cc..1b2df2e 100644
> --- a/tools/config.h.in
> +++ b/tools/config.h.in
> @@ -3,9 +3,6 @@
> /* Enabling support partial device tree in libxl */
> #undef ENABLE_PARTIAL_DEVICE_TREE
>
> -/* Blktap2 enabled */
> -#undef HAVE_BLKTAP2
> -
> /* Define to 1 if you have the declaration of `fdt_first_subnode', and to 0 if
> you don't. */
> #undef HAVE_DECL_FDT_FIRST_SUBNODE
> @@ -27,9 +24,6 @@
> /* Define to 1 if you have the <inttypes.h> header file. */
> #undef HAVE_INTTYPES_H
>
> -/* Define to 1 if you have the `aio' library (-laio). */
> -#undef HAVE_LIBAIO
> -
> /* Define to 1 if you have the `crypto' library (-lcrypto). */
> #undef HAVE_LIBCRYPTO
>
> diff --git a/tools/configure b/tools/configure
> index 51f16c5..53b9a33 100755
> --- a/tools/configure
> +++ b/tools/configure
> @@ -705,7 +705,6 @@ BCC
> LD86
> AS86
> qemu_traditional
> -blktap2
> LINUX_BACKEND_MODULES
> seabios
> ovmf
> @@ -804,7 +803,6 @@ enable_xsmpolicy
> enable_ovmf
> enable_seabios
> with_linux_backend_modules
> -enable_blktap2
> enable_qemu_traditional
> enable_rombios
> with_system_qemu
> @@ -1477,8 +1475,6 @@ Optional Features:
> --disable-xsmpolicy Disable XSM policy compilation (default is ENABLED)
> --enable-ovmf Enable OVMF (default is DISABLED)
> --disable-seabios Disable SeaBIOS (default is ENABLED)
> - --enable-blktap2 Enable blktap2, (DEFAULT is on for Linux, otherwise
> - off)
> --enable-qemu-traditional
> Enable qemu traditional device model, (DEFAULT is on
> for Linux or NetBSD x86, otherwise off)
> @@ -4161,7 +4157,6 @@ xen-scsibk
> usbbk
> pciback
> xen-acpi-processor
> -blktap2
> "
> ;;
> *)
> @@ -4173,33 +4168,6 @@ fi
> LINUX_BACKEND_MODULES="`eval echo $LINUX_BACKEND_MODULES`"
>
>
> -# Check whether --enable-blktap2 was given.
> -if test "${enable_blktap2+set}" = set; then :
> - enableval=$enable_blktap2;
> -else
> -
> - case "$host_os" in
> - linux*)
> - enable_blktap2="yes";;
> - *) enable_blktap2="no";;
> - esac
> -
> -fi
> -
> -if test "x$enable_blktap2" = "xyes"; then :
> -
> -
> -$as_echo "#define HAVE_BLKTAP2 1" >>confdefs.h
> -
> - blktap2=y
> -else
> -
> - blktap2=n
> -
> -fi
> -
> -
> -
> # Check whether --enable-qemu-traditional was given.
> if test "${enable_qemu_traditional+set}" = set; then :
> enableval=$enable_qemu_traditional;
> @@ -8290,57 +8258,6 @@ fi
>
>
>
> -if test "x$enable_blktap2" = "xyes"; then :
> -
> -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for io_setup in -laio" >&5
> -$as_echo_n "checking for io_setup in -laio... " >&6; }
> -if ${ac_cv_lib_aio_io_setup+:} false; then :
> - $as_echo_n "(cached) " >&6
> -else
> - ac_check_lib_save_LIBS=$LIBS
> -LIBS="-laio $LIBS"
> -cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> -/* end confdefs.h. */
> -
> -/* Override any GCC internal prototype to avoid an error.
> - Use char because int might match the return type of a GCC
> - builtin and then its argument prototype would still apply. */
> -#ifdef __cplusplus
> -extern "C"
> -#endif
> -char io_setup ();
> -int
> -main ()
> -{
> -return io_setup ();
> - ;
> - return 0;
> -}
> -_ACEOF
> -if ac_fn_c_try_link "$LINENO"; then :
> - ac_cv_lib_aio_io_setup=yes
> -else
> - ac_cv_lib_aio_io_setup=no
> -fi
> -rm -f core conftest.err conftest.$ac_objext \
> - conftest$ac_exeext conftest.$ac_ext
> -LIBS=$ac_check_lib_save_LIBS
> -fi
> -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_aio_io_setup" >&5
> -$as_echo "$ac_cv_lib_aio_io_setup" >&6; }
> -if test "x$ac_cv_lib_aio_io_setup" = xyes; then :
> - cat >>confdefs.h <<_ACEOF
> -#define HAVE_LIBAIO 1
> -_ACEOF
> -
> - LIBS="-laio $LIBS"
> -
> -else
> - as_fn_error $? "Could not find libaio" "$LINENO" 5
> -fi
> -
> -
> -fi
>
> { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5 in -lcrypto" >&5
> $as_echo_n "checking for MD5 in -lcrypto... " >&6; }
> diff --git a/tools/configure.ac b/tools/configure.ac
> index 3a4abb5..1cfbcaf 100644
> --- a/tools/configure.ac
> +++ b/tools/configure.ac
> @@ -108,7 +108,6 @@ xen-scsibk
> usbbk
> pciback
> xen-acpi-processor
> -blktap2
> "
> ;;
> *)
> @@ -118,24 +117,6 @@ esac])
> LINUX_BACKEND_MODULES="`eval echo $LINUX_BACKEND_MODULES`"
> AC_SUBST(LINUX_BACKEND_MODULES)
>
> -dnl Enable blktap2 on Linux only.
> -AC_ARG_ENABLE([blktap2],
> - AS_HELP_STRING([--enable-blktap2],
> - [Enable blktap2, (DEFAULT is on for Linux, otherwise off)]),,[
> - case "$host_os" in
> - linux*)
> - enable_blktap2="yes";;
> - *) enable_blktap2="no";;
> - esac
> -])
> -AS_IF([test "x$enable_blktap2" = "xyes"], [
> -AC_DEFINE([HAVE_BLKTAP2], [1], [Blktap2 enabled])
> - blktap2=y],[
> - blktap2=n
> -])
> -AC_SUBST(blktap2)
> -
> -
> AC_ARG_ENABLE([qemu-traditional],
> AS_HELP_STRING([--enable-qemu-traditional],
> [Enable qemu traditional device model, (DEFAULT is on for Linux or NetBSD x86, otherwise off)]),,[
> @@ -357,9 +338,6 @@ AC_CHECK_HEADER([lzo/lzo1x.h], [
> AC_CHECK_LIB([lzo2], [lzo1x_decompress], [zlib="$zlib -DHAVE_LZO1X -llzo2"])
> ])
> AC_SUBST(zlib)
> -AS_IF([test "x$enable_blktap2" = "xyes"], [
> -AC_CHECK_LIB([aio], [io_setup], [], [AC_MSG_ERROR([Could not find libaio])])
> -])
> AC_SUBST(system_aio)
> AC_CHECK_LIB([crypto], [MD5], [], [AC_MSG_ERROR([Could not find libcrypto])])
> AX_CHECK_EXTFS
> diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
> index 14a1a8e..6994c58 100644
> --- a/tools/libxl/Makefile
> +++ b/tools/libxl/Makefile
> @@ -20,7 +20,7 @@ LIBUUID_LIBS += -luuid
> endif
>
> LIBXL_LIBS =
> -LIBXL_LIBS = $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore) $(LDLIBS_libblktapctl) $(PTYFUNCS_LIBS) $(LIBUUID_LIBS)
> +LIBXL_LIBS = $(LDLIBS_libxentoollog) $(LDLIBS_libxenevtchn) $(LDLIBS_libxenctrl) $(LDLIBS_libxenguest) $(LDLIBS_libxenstore) $(PTYFUNCS_LIBS) $(LIBUUID_LIBS)
> ifeq ($(CONFIG_LIBNL),y)
> LIBXL_LIBS += $(LIBNL3_LIBS)
> endif
> @@ -30,7 +30,6 @@ CFLAGS_LIBXL += $(CFLAGS_libxenevtchn)
> CFLAGS_LIBXL += $(CFLAGS_libxenctrl)
> CFLAGS_LIBXL += $(CFLAGS_libxenguest)
> CFLAGS_LIBXL += $(CFLAGS_libxenstore)
> -CFLAGS_LIBXL += $(CFLAGS_libblktapctl)
> ifeq ($(CONFIG_LIBNL),y)
> CFLAGS_LIBXL += $(LIBNL3_CFLAGS)
> endif
> @@ -46,11 +45,6 @@ LIBXL_LIBS += $(LIBXL_LIBS-y)
> LIBXLU_LIBS = $(LDLIBS_libxenlight)
>
> LIBXL_OBJS-y = osdeps.o libxl_paths.o libxl_bootloader.o flexarray.o
> -ifeq ($(LIBXL_BLKTAP),y)
> -LIBXL_OBJS-y += libxl_blktap2.o
> -else
> -LIBXL_OBJS-y += libxl_noblktap2.o
> -endif
>
> ifeq ($(CONFIG_LIBNL),y)
> LIBXL_OBJS-y += libxl_netbuffer.o
> diff --git a/tools/libxl/check-xl-disk-parse b/tools/libxl/check-xl-disk-parse
> index 03572e4..643f4f4 100755
> --- a/tools/libxl/check-xl-disk-parse
> +++ b/tools/libxl/check-xl-disk-parse
> @@ -3,7 +3,7 @@
> set -e
>
> if [ -x ./xl ] ; then
> - export LD_LIBRARY_PATH=.:../libxc:../xenstore:../blktap2/control
> + export LD_LIBRARY_PATH=.:../libxc:../xenstore
> XL=./xl
> else
> XL=xl
> diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
> index 6a50e49..577ed35 100644
> --- a/tools/libxl/libxl.c
> +++ b/tools/libxl/libxl.c
> @@ -2218,7 +2218,6 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
> case LIBXL_DISK_BACKEND_PHY:
> dev = disk->pdev_path;
>
> - do_backend_phy:
> flexarray_append(back, "params");
> flexarray_append(back, dev);
>
> @@ -2230,27 +2229,9 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
> break;
>
> case LIBXL_DISK_BACKEND_TAP:
> - if (dev == NULL) {
> - dev = libxl__blktap_devpath(gc, disk->pdev_path,
> - disk->format);
> - if (!dev) {
> - LOG(ERROR, "failed to get blktap devpath for %p",
> - disk->pdev_path);
> - rc = ERROR_FAIL;
> - goto out;
> - }
> - }
> - flexarray_append(back, "tapdisk-params");
> - flexarray_append(back, GCSPRINTF("%s:%s",
> - libxl__device_disk_string_of_format(disk->format),
> - disk->pdev_path));
> -
> - /* tap backends with scripts are rejected by
> - * libxl__device_disk_set_backend */
> - assert(!disk->script);
> -
> - /* now create a phy device to export the device to the guest */
> - goto do_backend_phy;
> + LOG(ERROR, "blktap is not supported");
> + rc = ERROR_FAIL;
> + goto out;
> case LIBXL_DISK_BACKEND_QDISK:
> flexarray_append(back, "params");
> flexarray_append(back, GCSPRINTF("%s:%s",
> diff --git a/tools/libxl/libxl_blktap2.c b/tools/libxl/libxl_blktap2.c
> deleted file mode 100644
> index 5c9a0a2..0000000
> --- a/tools/libxl/libxl_blktap2.c
> +++ /dev/null
> @@ -1,94 +0,0 @@
> -/*
> - * Copyright (C) 2010 Advanced Micro Devices
> - * Author Christoph Egger <Christoph.Egger@amd.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU Lesser General Public License as published
> - * by the Free Software Foundation; version 2.1 only.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> - * GNU Lesser General Public License for more details.
> - */
> -
> -#include "libxl_osdeps.h" /* must come before any other headers */
> -#include "libxl_internal.h"
> -
> -#include "tap-ctl.h"
> -
> -int libxl__blktap_enabled(libxl__gc *gc)
> -{
> - const char *msg;
> - return !tap_ctl_check(&msg);
> -}
> -
> -char *libxl__blktap_devpath(libxl__gc *gc,
> - const char *disk,
> - libxl_disk_format format)
> -{
> - const char *type;
> - char *params, *devname = NULL;
> - tap_list_t tap;
> - int err;
> -
> - type = libxl__device_disk_string_of_format(format);
> - err = tap_ctl_find(type, disk, &tap);
> - if (err == 0) {
> - devname = GCSPRINTF("/dev/xen/blktap-2/tapdev%d", tap.minor);
> - if (devname)
> - return devname;
> - }
> -
> - params = GCSPRINTF("%s:%s", type, disk);
> - err = tap_ctl_create(params, &devname);
> - if (!err) {
> - libxl__ptr_add(gc, devname);
> - return devname;
> - }
> -
> - free(devname);
> - return NULL;
> -}
> -
> -
> -int libxl__device_destroy_tapdisk(libxl__gc *gc, const char *params)
> -{
> - char *type, *disk;
> - int err;
> - tap_list_t tap;
> -
> - type = libxl__strdup(gc, params);
> -
> - disk = strchr(type, ':');
> - if (!disk) {
> - LOG(ERROR, "Unable to parse params %s", params);
> - return ERROR_INVAL;
> - }
> -
> - *disk++ = '\0';
> -
> - err = tap_ctl_find(type, disk, &tap);
> - if (err < 0) {
> - /* returns -errno */
> - LOGEV(ERROR, -err, "Unable to find type %s disk %s", type, disk);
> - return ERROR_FAIL;
> - }
> -
> - err = tap_ctl_destroy(tap.id, tap.minor);
> - if (err < 0) {
> - LOGEV(ERROR, -err, "Failed to destroy tap device id %d minor %d",
> - tap.id, tap.minor);
> - return ERROR_FAIL;
> - }
> -
> - return 0;
> -}
> -
> -/*
> - * Local variables:
> - * mode: C
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */
> diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c
> index dbf157d..9c77b62 100644
> --- a/tools/libxl/libxl_device.c
> +++ b/tools/libxl/libxl_device.c
> @@ -271,26 +271,9 @@ static int disk_try_backend(disk_try_backend_args *a,
> return 0;
>
> case LIBXL_DISK_BACKEND_TAP:
> - if (a->disk->script) goto bad_script;
> -
> - if (libxl_defbool_val(a->disk->colo_enable))
> - goto bad_colo;
> -
> - if (a->disk->is_cdrom) {
> - LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable for cdroms",
> - a->disk->vdev);
> - return 0;
> - }
> - if (!libxl__blktap_enabled(a->gc)) {
> - LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable because blktap "
> - "not available", a->disk->vdev);
> - return 0;
> - }
> - if (!(a->disk->format == LIBXL_DISK_FORMAT_RAW ||
> - a->disk->format == LIBXL_DISK_FORMAT_VHD)) {
> - goto bad_format;
> - }
> - return backend;
> + LOG(DEBUG, "Disk vdev=%s, backend tap unsuitable because blktap "
> + "not supported", a->disk->vdev);
> + return 0;
>
> case LIBXL_DISK_BACKEND_QDISK:
> if (a->disk->script) goto bad_script;
> @@ -682,8 +665,6 @@ int libxl__device_destroy(libxl__gc *gc, libxl__device *dev)
> const char *be_path = libxl__device_backend_path(gc, dev);
> const char *fe_path = libxl__device_frontend_path(gc, dev);
> const char *libxl_path = libxl__device_libxl_path(gc, dev);
> - const char *tapdisk_path = GCSPRINTF("%s/%s", be_path, "tapdisk-params");
> - const char *tapdisk_params;
> xs_transaction_t t = 0;
> int rc;
> uint32_t domid;
> @@ -695,10 +676,6 @@ int libxl__device_destroy(libxl__gc *gc, libxl__device *dev)
> rc = libxl__xs_transaction_start(gc, &t);
> if (rc) goto out;
>
> - /* May not exist if this is not a tap device */
> - rc = libxl__xs_read_checked(gc, t, tapdisk_path, &tapdisk_params);
> - if (rc) goto out;
> -
> if (domid == LIBXL_TOOLSTACK_DOMID) {
> /*
> * The toolstack domain is in charge of removing the
> @@ -720,9 +697,6 @@ int libxl__device_destroy(libxl__gc *gc, libxl__device *dev)
> if (rc < 0) goto out;
> }
>
> - if (tapdisk_params)
> - rc = libxl__device_destroy_tapdisk(gc, tapdisk_params);
> -
> out:
> libxl__xs_transaction_abort(gc, &t);
> return rc;
> diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
> index e3bf28f..1da956e 100644
> --- a/tools/libxl/libxl_dm.c
> +++ b/tools/libxl/libxl_dm.c
> @@ -1362,20 +1362,9 @@ static int libxl__build_device_model_args_new(libxl__gc *gc,
> continue;
> }
>
> - /*
> - * We can't call libxl__blktap_devpath from
> - * libxl__device_disk_find_local_path for now because
> - * the bootloader is called before the disks are set
> - * up, so this function would set up a blktap node,
> - * but there's no TAP tear-down on error conditions in
> - * the bootloader path.
> - */
> - if (disks[i].backend == LIBXL_DISK_BACKEND_TAP)
> - target_path = libxl__blktap_devpath(gc, disks[i].pdev_path,
> - disks[i].format);
> - else
> - target_path = libxl__device_disk_find_local_path(gc,
> - guest_domid, &disks[i], true);
> + assert(disks[i].backend != LIBXL_DISK_BACKEND_TAP);
> + target_path = libxl__device_disk_find_local_path(gc,
> + guest_domid, &disks[i], true);
>
> if (!target_path) {
> LOG(WARN, "No way to get local access disk to image: %s\n"
> diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h
> index 1222ffa..51d505f 100644
> --- a/tools/libxl/libxl_internal.h
> +++ b/tools/libxl/libxl_internal.h
> @@ -1705,25 +1705,6 @@ struct libxl__cpuid_policy {
> char *policy[4];
> };
>
> -/*
> - * blktap2 support
> - */
> -
> -/* libxl__blktap_enabled:
> - * return true if blktap/blktap2 support is available.
> - */
> -_hidden int libxl__blktap_enabled(libxl__gc *gc);
> -
> -/* libxl__blktap_devpath:
> - * Argument: path and disk image as specified in config file.
> - * The type specifies whether this is aio, qcow, qcow2, etc.
> - * returns device path xenstore wants to have. returns NULL
> - * if no device corresponds to the disk.
> - */
> -_hidden char *libxl__blktap_devpath(libxl__gc *gc,
> - const char *disk,
> - libxl_disk_format format);
> -
> /* libxl__device_destroy_tapdisk:
> * Destroys any tapdisk process associated with the backend represented
> * by be_path.
> diff --git a/tools/libxl/libxl_noblktap2.c b/tools/libxl/libxl_noblktap2.c
> deleted file mode 100644
> index 5a86ed1..0000000
> --- a/tools/libxl/libxl_noblktap2.c
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -/*
> - * Copyright (C) 2010 Advanced Micro Devices
> - * Author Christoph Egger <Christoph.Egger@amd.com>
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU Lesser General Public License as published
> - * by the Free Software Foundation; version 2.1 only.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> - * GNU Lesser General Public License for more details.
> - */
> -
> -#include "libxl_osdeps.h" /* must come before any other headers */
> -
> -#include "libxl_internal.h"
> -
> -int libxl__blktap_enabled(libxl__gc *gc)
> -{
> - return 0;
> -}
> -
> -char *libxl__blktap_devpath(libxl__gc *gc,
> - const char *disk,
> - libxl_disk_format format)
> -{
> - return NULL;
> -}
> -
> -int libxl__device_destroy_tapdisk(libxl__gc *gc, const char *params)
> -{
> - return 0;
> -}
> -
> -/*
> - * Local variables:
> - * mode: C
> - * c-basic-offset: 4
> - * indent-tabs-mode: nil
> - * End:
> - */
> diff --git a/tools/xenstore/hashtable.c b/tools/xenstore/hashtable.c
> index 0ba1d55..394b1cf 100644
> --- a/tools/xenstore/hashtable.c
> +++ b/tools/xenstore/hashtable.c
> @@ -1,10 +1,5 @@
> /* Copyright (C) 2004 Christopher Clark <firstname.lastname@cl.cam.ac.uk> */
>
> -/*
> - * There are duplicates of this code in:
> - * - tools/blktap2/drivers/hashtable.c
> - */
> -
> #include "hashtable.h"
> #include "hashtable_private.h"
> #include <stdlib.h>
> diff --git a/tools/xenstore/hashtable.h b/tools/xenstore/hashtable.h
> index 4d68223..b90781a 100644
> --- a/tools/xenstore/hashtable.h
> +++ b/tools/xenstore/hashtable.h
> @@ -1,10 +1,5 @@
> /* Copyright (C) 2002 Christopher Clark <firstname.lastname@cl.cam.ac.uk> */
>
> -/*
> - * There are duplicates of this code in:
> - * - tools/blktap2/drivers/hashtable.h
> - */
> -
> #ifndef __HASHTABLE_CWC22_H__
> #define __HASHTABLE_CWC22_H__
>
> diff --git a/tools/xenstore/hashtable_private.h b/tools/xenstore/hashtable_private.h
> index a08559d..3e95f60 100644
> --- a/tools/xenstore/hashtable_private.h
> +++ b/tools/xenstore/hashtable_private.h
> @@ -1,10 +1,5 @@
> /* Copyright (C) 2002, 2004 Christopher Clark <firstname.lastname@cl.cam.ac.uk> */
>
> -/*
> - * There are duplicates of this code in:
> - * - tools/blktap2/drivers/hashtable_private.h
> - */
> -
> #ifndef __HASHTABLE_PRIVATE_CWC22_H__
> #define __HASHTABLE_PRIVATE_CWC22_H__
>
>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [RFC PATCH] tools: remove blktap2 related code and documentation
2016-08-15 10:50 [RFC PATCH] tools: remove blktap2 related code and documentation Wei Liu
2016-08-16 12:42 ` Yang Hongyang
2016-08-18 10:31 ` George Dunlap
@ 2016-08-26 10:45 ` Wei Liu
2 siblings, 0 replies; 4+ messages in thread
From: Wei Liu @ 2016-08-26 10:45 UTC (permalink / raw)
To: Xen-devel
Cc: Lars Kurth, Stefano Stabellini, Wei Liu, Ross Philipson,
George Dunlap, Andrew Cooper, Ian Jackson, Tim Deegan,
Yang Hongyang, Jan Beulich, Shriram Rajagopalan
On Mon, Aug 15, 2016 at 11:50:56AM +0100, Wei Liu wrote:
> Blktap2 is effectively dead code for a few years.
>
> Notable changes in this patch:
>
> 0. Unhook blktap2 from build system
> 1. Now libxl no longer supports TAP ask backend, appropriate assertions
> are added and some code paths now return ERROR_FAIL
> 2. Tap is no longer a supported backend in doc
> 3. Remove relevant entries in MAINTAINERS
>
> A patch to actually remove blktap2 directory will come later.
>
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> ---
> Compile-test only at this stage.
>
> Ross, do you have any objection for this? I haven't seen update from the
> joint blktap2 maintenance for a few months.
>
Got no objection so far. I will test this patch and strip the RFC tag in
subject line.
Wei.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-08-26 10:45 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-15 10:50 [RFC PATCH] tools: remove blktap2 related code and documentation Wei Liu
2016-08-16 12:42 ` Yang Hongyang
2016-08-18 10:31 ` George Dunlap
2016-08-26 10:45 ` Wei Liu
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).