aboutsummaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2017-10-17 20:11:58 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2017-10-18 10:15:09 +0200
commitb3f1c8c413bc83e4a2cc7a63e4eddf9fe6449052 (patch)
treea50eb0230fb954e63e5d4f85a3a1d2ad68947fd5 /configure
parent306526b5de6984a164548572fd04d898dd6adbaa (diff)
qemu-pr-helper: use new libmultipath API
libmultipath has recently changed its API. The new API supports multi-threaded clients better. Unfortunately there is no backwards-compatibility, so we just switch to the new one. Running QEMU compiled with the new library on the old library will likely crash, while doing the opposite will cause QEMU not to start at all (because udev, get_multipath_config and put_multipath_config are undefined). Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure12
1 files changed, 10 insertions, 2 deletions
diff --git a/configure b/configure
index 6587e8014b..7766e74125 100755
--- a/configure
+++ b/configure
@@ -3312,9 +3312,17 @@ if test "$mpath" != "no" ; then
#include <mpath_persist.h>
unsigned mpath_mx_alloc_len = 1024;
int logsink;
+static struct config *multipath_conf;
+extern struct udev *udev;
+extern struct config *get_multipath_config(void);
+extern void put_multipath_config(struct config *conf);
+struct udev *udev;
+struct config *get_multipath_config(void) { return multipath_conf; }
+void put_multipath_config(struct config *conf) { }
+
int main(void) {
- struct udev *udev = udev_new();
- mpath_lib_init(udev);
+ udev = udev_new();
+ multipath_conf = mpath_lib_init();
return 0;
}
EOF