[Pkg-xen-devel] Bug#770456: Bug#770456: Bug#770456: Please start a qemu process in domain 0.
Ian Campbell
ijc at debian.org
Mon Dec 1 11:35:06 UTC 2014
On Thu, 2014-11-27 at 17:41 +0100, Stefan Bader wrote:
> On 27.11.2014 12:18, Ian Campbell wrote:
> > On Thu, 2014-11-27 at 11:02 +0100, Stefan Bader wrote:
> >> On 21.11.2014 13:50, Ian Campbell wrote:
> >>> Package: xen-utils-common
> >>> Version: 4.4.0-1
> >>> Severity: important
> >>> Tags: patch
> >>>
> >>> Under some circumstances the xl toolstack needs to create a loopback
> >>> mount of a guest disk in dom0 (e.g. in order to run pygrub). Depending
> >>> on the nature of the guest disk (e.g. qcow2 or raw file image based)
> >>> this can require a qemu instance in dom0.
> >>>
> >>> The upstream xencommons starts such a qemu on boot. The following patch
> >>> adds this to the Debian packages init script as well.
> >>>
> >>> Once I have a bug number for this I will add it to debian/changelog and
> >>> push the result to feature/bugNNNN as usual.
> >>>
> >>> Thanks,
> >>> Ian.
> >>>
> >>
> <old path removed>
>
> >> Not sure this already was handled but the --name argument of qemu_stop_real
> >> seems a copy-and-paste bug.
> >
> > Yes it is, whoops!
> >
> >> Playing with it right now, --exec instead of --name
> >> also works out better since qemu-system-i386 is just about too long.
> >
> > So it is, so this is probably a good idea.
> >
> > Will you send an updated patch once you've finished testing?
> >
>
> So not sure whether the bug processor can handle attachments but Thunderbird
> tends to mess things up otherwise. Also I yet have to figure out the location of
> the repo to make proper patches (sorry about that).
http://anonscm.debian.org/cgit/pkg-xen/xen.git
> Anyway attaching the diff between the current init script and the updated one.
> There is one thing which I did not include there. That is a work around some
> kernel bug (which should be fixed in Debian by now). Just for here I want to
> avoid stepping into the case where the new package is installed with the broken
> kernel because in that situation the dpkg starts a qemu which cannot attach
> properly and in the end both hang and qemu has to be killed hard(er). All a bit
> ugly. So this is likely nothing you need but just in case:
>
> (see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=763831)
Urk. I wonder if this explains some of the bugs about the initscript
hanging we had around earlier.
Anyway, your diff seems to only add some code to xenstored_start, I was
expecting a change to qemu_start -- did you find that code was OK in the
end? Or did you end up switching to --exec?
Thanks,
Ian.
> -Stefan
>
> xenstored_start()
> {
> log_progress_msg "xenstored"
> + #
> + # Work-around kernel regression where short name links of
> + # /proc/$$/exe get replaced on rename unconditionally. This
> + # should be fixed in the kernel but hitting a bad kernel is
> + # fatal with starting qemu in dom0 (dpkg/qemu hangs).
> + #
> + if [ -f $XENSTORED_PIDFILE ]; then
> + XSPID="$(cat $XENSTORED_PIDFILE)"
> + XSBIN="$(ls -la /proc/$XSPID/exe 2>/dev/null)"
> + XSBIN="${XSBIN#*-> }"
> + XSBIN="${XSBIN% (deleted)}"
> + if [ "$XSBIN" != "" ]; then
> + if [ "$(basename $XSBIN)" = "xenstored.dpkg-new" ]; then
> + return 1
> + fi
> + fi
> + fi
> start-stop-daemon --start --quiet --pidfile "$XENSTORED_PIDFILE" --exec
> "$XENSTORED" --test > /dev/null \
>
>
> _______________________________________________
> Pkg-xen-devel mailing list
> Pkg-xen-devel at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-xen-devel
More information about the Pkg-xen-devel
mailing list