mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
Remove VXHS block device
The vxhs code doesn't compile since v2.12.0. There's no point in fixing and then adding CI for a config that our users have demonstrated that they do not use; better to just remove it. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20200711065926.2204721-1-marcandre.lureau@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
committed by
Kevin Wolf
parent
4b7c5bc447
commit
a08464521c
@@ -31,7 +31,6 @@ block-obj-$(CONFIG_LIBNFS) += nfs.o
|
||||
block-obj-$(CONFIG_CURL) += curl.o
|
||||
block-obj-$(CONFIG_RBD) += rbd.o
|
||||
block-obj-$(CONFIG_GLUSTERFS) += gluster.o
|
||||
block-obj-$(CONFIG_VXHS) += vxhs.o
|
||||
block-obj-$(CONFIG_LIBSSH) += ssh.o
|
||||
block-obj-y += accounting.o dirty-bitmap.o
|
||||
block-obj-y += write-threshold.o
|
||||
@@ -61,7 +60,6 @@ rbd.o-cflags := $(RBD_CFLAGS)
|
||||
rbd.o-libs := $(RBD_LIBS)
|
||||
gluster.o-cflags := $(GLUSTERFS_CFLAGS)
|
||||
gluster.o-libs := $(GLUSTERFS_LIBS)
|
||||
vxhs.o-libs := $(VXHS_LIBS)
|
||||
ssh.o-cflags := $(LIBSSH_CFLAGS)
|
||||
ssh.o-libs := $(LIBSSH_LIBS)
|
||||
block-obj-dmg-bz2-$(CONFIG_BZIP2) += dmg-bz2.o
|
||||
|
||||
@@ -136,23 +136,6 @@ qed_aio_write_prefill(void *s, void *acb, uint64_t start, size_t len, uint64_t o
|
||||
qed_aio_write_postfill(void *s, void *acb, uint64_t start, size_t len, uint64_t offset) "s %p acb %p start %"PRIu64" len %zu offset %"PRIu64
|
||||
qed_aio_write_main(void *s, void *acb, int ret, uint64_t offset, size_t len) "s %p acb %p ret %d offset %"PRIu64" len %zu"
|
||||
|
||||
# vxhs.c
|
||||
vxhs_iio_callback(int error) "ctx is NULL: error %d"
|
||||
vxhs_iio_callback_chnfail(int err, int error) "QNIO channel failed, no i/o %d, %d"
|
||||
vxhs_iio_callback_unknwn(int opcode, int err) "unexpected opcode %d, errno %d"
|
||||
vxhs_aio_rw_invalid(int req) "Invalid I/O request iodir %d"
|
||||
vxhs_aio_rw_ioerr(char *guid, int iodir, uint64_t size, uint64_t off, void *acb, int ret, int err) "IO ERROR (vDisk %s) FOR : Read/Write = %d size = %"PRIu64" offset = %"PRIu64" ACB = %p. Error = %d, errno = %d"
|
||||
vxhs_get_vdisk_stat_err(char *guid, int ret, int err) "vDisk (%s) stat ioctl failed, ret = %d, errno = %d"
|
||||
vxhs_get_vdisk_stat(char *vdisk_guid, uint64_t vdisk_size) "vDisk %s stat ioctl returned size %"PRIu64
|
||||
vxhs_complete_aio(void *acb, uint64_t ret) "aio failed acb %p ret %"PRIu64
|
||||
vxhs_parse_uri_filename(const char *filename) "URI passed via bdrv_parse_filename %s"
|
||||
vxhs_open_vdiskid(const char *vdisk_id) "Opening vdisk-id %s"
|
||||
vxhs_open_hostinfo(char *of_vsa_addr, int port) "Adding host %s:%d to BDRVVXHSState"
|
||||
vxhs_open_iio_open(const char *host) "Failed to connect to storage agent on host %s"
|
||||
vxhs_parse_uri_hostinfo(char *host, int port) "Host: IP %s, Port %d"
|
||||
vxhs_close(char *vdisk_guid) "Closing vdisk %s"
|
||||
vxhs_get_creds(const char *cacert, const char *client_key, const char *client_cert) "cacert %s, client_key %s, client_cert %s"
|
||||
|
||||
# nvme.c
|
||||
nvme_kick(void *s, int queue) "s %p queue %d"
|
||||
nvme_dma_flush_queue_wait(void *s) "s %p"
|
||||
|
||||
-587
File diff suppressed because it is too large
Load Diff
@@ -501,7 +501,6 @@ numa=""
|
||||
tcmalloc="no"
|
||||
jemalloc="no"
|
||||
replication="yes"
|
||||
vxhs=""
|
||||
bochs="yes"
|
||||
cloop="yes"
|
||||
dmg="yes"
|
||||
@@ -1541,10 +1540,6 @@ for opt do
|
||||
;;
|
||||
--enable-replication) replication="yes"
|
||||
;;
|
||||
--disable-vxhs) vxhs="no"
|
||||
;;
|
||||
--enable-vxhs) vxhs="yes"
|
||||
;;
|
||||
--disable-bochs) bochs="no"
|
||||
;;
|
||||
--enable-bochs) bochs="yes"
|
||||
@@ -1932,7 +1927,6 @@ disabled with --disable-FEATURE, default is enabled if available:
|
||||
xfsctl xfsctl support
|
||||
qom-cast-debug cast debugging support
|
||||
tools build qemu-io, qemu-nbd and qemu-img tools
|
||||
vxhs Veritas HyperScale vDisk backend support
|
||||
bochs bochs image format support
|
||||
cloop cloop image format support
|
||||
dmg dmg image format support
|
||||
@@ -6249,33 +6243,6 @@ if compile_prog "" "" ; then
|
||||
have_sysmacros=yes
|
||||
fi
|
||||
|
||||
##########################################
|
||||
# Veritas HyperScale block driver VxHS
|
||||
# Check if libvxhs is installed
|
||||
|
||||
if test "$vxhs" != "no" ; then
|
||||
cat > $TMPC <<EOF
|
||||
#include <stdint.h>
|
||||
#include <qnio/qnio_api.h>
|
||||
|
||||
void *vxhs_callback;
|
||||
|
||||
int main(void) {
|
||||
iio_init(QNIO_VERSION, vxhs_callback);
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
vxhs_libs="-lvxhs -lssl"
|
||||
if compile_prog "" "$vxhs_libs" ; then
|
||||
vxhs=yes
|
||||
else
|
||||
if test "$vxhs" = "yes" ; then
|
||||
feature_not_found "vxhs block device" "Install libvxhs See github"
|
||||
fi
|
||||
vxhs=no
|
||||
fi
|
||||
fi
|
||||
|
||||
##########################################
|
||||
# check for _Static_assert()
|
||||
|
||||
@@ -7033,7 +7000,6 @@ echo "jemalloc support $jemalloc"
|
||||
echo "avx2 optimization $avx2_opt"
|
||||
echo "avx512f optimization $avx512f_opt"
|
||||
echo "replication support $replication"
|
||||
echo "VxHS block device $vxhs"
|
||||
echo "bochs support $bochs"
|
||||
echo "cloop support $cloop"
|
||||
echo "dmg support $dmg"
|
||||
@@ -7884,11 +7850,6 @@ elif test "$pthread_setname_np_wo_tid" = "yes" ; then
|
||||
echo "CONFIG_PTHREAD_SETNAME_NP_WO_TID=y" >> $config_host_mak
|
||||
fi
|
||||
|
||||
if test "$vxhs" = "yes" ; then
|
||||
echo "CONFIG_VXHS=y" >> $config_host_mak
|
||||
echo "VXHS_LIBS=$vxhs_libs" >> $config_host_mak
|
||||
fi
|
||||
|
||||
if test "$libpmem" = "yes" ; then
|
||||
echo "CONFIG_LIBPMEM=y" >> $config_host_mak
|
||||
fi
|
||||
|
||||
@@ -618,3 +618,11 @@ to achieve the same fake NUMA effect or a properly configured
|
||||
New machine versions (since 5.1) will not accept the option but it will still
|
||||
work with old machine types. User can check the QAPI schema to see if the legacy
|
||||
option is supported by looking at MachineInfo::numa-mem-supported property.
|
||||
|
||||
Block devices
|
||||
-------------
|
||||
|
||||
VXHS backend (removed in 5.1)
|
||||
'''''''''''''''''''''''''''''
|
||||
|
||||
The VXHS code does not compile since v2.12.0. It was removed in 5.1.
|
||||
|
||||
+2
-20
@@ -2790,7 +2790,6 @@
|
||||
#
|
||||
# Drivers that are supported in block device operations.
|
||||
#
|
||||
# @vxhs: Since 2.10
|
||||
# @throttle: Since 2.11
|
||||
# @nvme: Since 2.12
|
||||
# @copy-on-read: Since 3.0
|
||||
@@ -2808,7 +2807,7 @@
|
||||
'qcow', 'qcow2', 'qed', 'quorum', 'raw', 'rbd',
|
||||
{ 'name': 'replication', 'if': 'defined(CONFIG_REPLICATION)' },
|
||||
'sheepdog',
|
||||
'ssh', 'throttle', 'vdi', 'vhdx', 'vmdk', 'vpc', 'vvfat', 'vxhs' ] }
|
||||
'ssh', 'throttle', 'vdi', 'vhdx', 'vmdk', 'vpc', 'vvfat' ] }
|
||||
|
||||
##
|
||||
# @BlockdevOptionsFile:
|
||||
@@ -3895,22 +3894,6 @@
|
||||
'base': 'BlockdevOptionsGenericFormat',
|
||||
'data': { '*offset': 'int', '*size': 'int' } }
|
||||
|
||||
##
|
||||
# @BlockdevOptionsVxHS:
|
||||
#
|
||||
# Driver specific block device options for VxHS
|
||||
#
|
||||
# @vdisk-id: UUID of VxHS volume
|
||||
# @server: vxhs server IP, port
|
||||
# @tls-creds: TLS credentials ID
|
||||
#
|
||||
# Since: 2.10
|
||||
##
|
||||
{ 'struct': 'BlockdevOptionsVxHS',
|
||||
'data': { 'vdisk-id': 'str',
|
||||
'server': 'InetSocketAddressBase',
|
||||
'*tls-creds': 'str' } }
|
||||
|
||||
##
|
||||
# @BlockdevOptionsThrottle:
|
||||
#
|
||||
@@ -4010,8 +3993,7 @@
|
||||
'vhdx': 'BlockdevOptionsGenericFormat',
|
||||
'vmdk': 'BlockdevOptionsGenericCOWFormat',
|
||||
'vpc': 'BlockdevOptionsGenericFormat',
|
||||
'vvfat': 'BlockdevOptionsVVFAT',
|
||||
'vxhs': 'BlockdevOptionsVxHS'
|
||||
'vvfat': 'BlockdevOptionsVVFAT'
|
||||
} }
|
||||
|
||||
##
|
||||
|
||||
@@ -40,7 +40,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
# Any format supporting backing files
|
||||
_supported_fmt qcow qcow2 vmdk qed
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
_unsupported_imgopts "subformat=monolithicFlat" "subformat=twoGbMaxExtentFlat" \
|
||||
"subformat=streamOptimized"
|
||||
|
||||
|
||||
@@ -41,7 +41,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
# Any format supporting intenal snapshots
|
||||
_supported_fmt qcow2
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||
# and generally impossible with external data files
|
||||
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||
|
||||
@@ -38,7 +38,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
|
||||
_supported_fmt qcow2
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
# External data files do not support compressed clusters
|
||||
# (TODO: Consider writing a version for external data files that does
|
||||
# not test compressed clusters)
|
||||
|
||||
@@ -38,7 +38,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
|
||||
_supported_fmt qcow2
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
# At least OpenBSD doesn't seem to have truncate
|
||||
_supported_os Linux
|
||||
# qcow2.py does not work too well with external data files
|
||||
|
||||
@@ -42,7 +42,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
|
||||
_supported_fmt qcow2
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
_supported_os Linux
|
||||
# We are going to use lazy-refcounts
|
||||
_unsupported_imgopts 'compat=0.10'
|
||||
|
||||
@@ -38,7 +38,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
|
||||
_supported_fmt qcow qcow2
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
|
||||
|
||||
size=128M
|
||||
|
||||
@@ -50,7 +50,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
|
||||
_supported_fmt qcow2 qed
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
# Copying files around with cp does not work with external data files
|
||||
_unsupported_imgopts data_file
|
||||
|
||||
|
||||
@@ -38,7 +38,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
|
||||
_supported_fmt qcow qcow2
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
|
||||
|
||||
size=128M
|
||||
|
||||
@@ -38,7 +38,6 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||
|
||||
_supported_fmt luks
|
||||
_supported_proto generic
|
||||
_unsupported_proto vxhs
|
||||
|
||||
echo "== Create non-UTF8 secret =="
|
||||
echo -n -e '\x3a\x3c\x3b\xff' > non_utf8_secret
|
||||
|
||||
@@ -272,7 +272,6 @@ image protocol options
|
||||
-nbd test nbd
|
||||
-ssh test ssh
|
||||
-nfs test nfs
|
||||
-vxhs test vxhs
|
||||
|
||||
other options
|
||||
-xdiff graphical mode diff
|
||||
@@ -383,11 +382,6 @@ testlist options
|
||||
xpand=false
|
||||
;;
|
||||
|
||||
-vxhs)
|
||||
IMGPROTO=vxhs
|
||||
xpand=false
|
||||
;;
|
||||
|
||||
-ssh)
|
||||
IMGPROTO=ssh
|
||||
xpand=false
|
||||
@@ -646,10 +640,6 @@ if [ -z $QEMU_NBD_PROG ]; then
|
||||
fi
|
||||
export QEMU_NBD_PROG="$(type -p "$QEMU_NBD_PROG")"
|
||||
|
||||
if [ -z "$QEMU_VXHS_PROG" ]; then
|
||||
export QEMU_VXHS_PROG="$(set_prog_path qnio_server)"
|
||||
fi
|
||||
|
||||
if [ -x "$build_iotests/socket_scm_helper" ]
|
||||
then
|
||||
export SOCKET_SCM_HELPER="$build_iotests/socket_scm_helper"
|
||||
|
||||
@@ -227,7 +227,6 @@ _filter_img_info()
|
||||
-e "s#$IMGFMT#IMGFMT#g" \
|
||||
-e 's#nbd://127.0.0.1:[0-9]\\+$#TEST_DIR/t.IMGFMT#g' \
|
||||
-e 's#nbd+unix:///\??socket=SOCK_DIR/nbd#TEST_DIR/t.IMGFMT#g' \
|
||||
-e 's#json.*vdisk-id.*vxhs"}}#TEST_DIR/t.IMGFMT#' \
|
||||
-e "/encrypted: yes/d" \
|
||||
-e "/cluster_size: [0-9]\\+/d" \
|
||||
-e "/table_size: [0-9]\\+/d" \
|
||||
|
||||
@@ -124,7 +124,6 @@ fi
|
||||
: ${VALGRIND_QEMU_IMG=$VALGRIND_QEMU}
|
||||
: ${VALGRIND_QEMU_IO=$VALGRIND_QEMU}
|
||||
: ${VALGRIND_QEMU_NBD=$VALGRIND_QEMU}
|
||||
: ${VALGRIND_QEMU_VXHS=$VALGRIND_QEMU}
|
||||
|
||||
# The Valgrind own parameters may be set with
|
||||
# its environment variable VALGRIND_OPTS, e.g.
|
||||
@@ -212,19 +211,6 @@ _qemu_nbd_wrapper()
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
_qemu_vxhs_wrapper()
|
||||
{
|
||||
local VALGRIND_LOGFILE="${TEST_DIR}"/$$.valgrind
|
||||
(
|
||||
echo $BASHPID > "${TEST_DIR}/qemu-vxhs.pid"
|
||||
VALGRIND_QEMU="${VALGRIND_QEMU_VXHS}" _qemu_proc_exec "${VALGRIND_LOGFILE}" \
|
||||
"$QEMU_VXHS_PROG" $QEMU_VXHS_OPTIONS "$@"
|
||||
)
|
||||
RETVAL=$?
|
||||
_qemu_proc_valgrind_log "${VALGRIND_LOGFILE}" $RETVAL
|
||||
return $RETVAL
|
||||
}
|
||||
|
||||
# Valgrind bug #409141 https://bugs.kde.org/show_bug.cgi?id=409141
|
||||
# Until valgrind 3.16+ is ubiquitous, we must work around a hang in
|
||||
# valgrind when issuing sigkill. Disable valgrind for this invocation.
|
||||
@@ -237,7 +223,6 @@ export QEMU=_qemu_wrapper
|
||||
export QEMU_IMG=_qemu_img_wrapper
|
||||
export QEMU_IO=_qemu_io_wrapper
|
||||
export QEMU_NBD=_qemu_nbd_wrapper
|
||||
export QEMU_VXHS=_qemu_vxhs_wrapper
|
||||
|
||||
if [ "$IMGOPTSSYNTAX" = "true" ]; then
|
||||
DRIVER="driver=$IMGFMT"
|
||||
@@ -279,9 +264,6 @@ else
|
||||
TEST_IMG_FILE=$TEST_DIR/t.$IMGFMT
|
||||
REMOTE_TEST_DIR="nfs://127.0.0.1$TEST_DIR"
|
||||
TEST_IMG="nfs://127.0.0.1$TEST_IMG_FILE"
|
||||
elif [ "$IMGPROTO" = "vxhs" ]; then
|
||||
TEST_IMG_FILE=$TEST_DIR/t.$IMGFMT
|
||||
TEST_IMG="vxhs://127.0.0.1:9999/t.$IMGFMT"
|
||||
else
|
||||
TEST_IMG=$IMGPROTO:$TEST_DIR/t.$IMGFMT
|
||||
fi
|
||||
@@ -436,12 +418,6 @@ _make_test_img()
|
||||
eval "$QEMU_NBD -v -t -k '$SOCK_DIR/nbd' -f $IMGFMT -e 42 -x '' $TEST_IMG_FILE >/dev/null &"
|
||||
sleep 1 # FIXME: qemu-nbd needs to be listening before we continue
|
||||
fi
|
||||
|
||||
# Start QNIO server on image directory for vxhs protocol
|
||||
if [ $IMGPROTO = "vxhs" ]; then
|
||||
eval "$QEMU_VXHS -d $TEST_DIR > /dev/null &"
|
||||
sleep 1 # Wait for server to come up.
|
||||
fi
|
||||
}
|
||||
|
||||
_rm_test_img()
|
||||
@@ -468,15 +444,6 @@ _cleanup_test_img()
|
||||
_stop_nbd_server
|
||||
rm -f "$TEST_IMG_FILE"
|
||||
;;
|
||||
vxhs)
|
||||
if [ -f "${TEST_DIR}/qemu-vxhs.pid" ]; then
|
||||
local QEMU_VXHS_PID
|
||||
read QEMU_VXHS_PID < "${TEST_DIR}/qemu-vxhs.pid"
|
||||
kill ${QEMU_VXHS_PID} >/dev/null 2>&1
|
||||
rm -f "${TEST_DIR}/qemu-vxhs.pid"
|
||||
fi
|
||||
rm -f "$TEST_IMG_FILE"
|
||||
;;
|
||||
|
||||
file)
|
||||
_rm_test_img "$TEST_DIR/t.$IMGFMT"
|
||||
|
||||
Reference in New Issue
Block a user