From: Ian Campbell <ian.campbell@citrix.com>
To: Alex Braunegg <alex.braunegg@gmail.com>, xen-devel@lists.xen.org
Cc: Ian Jackson <Ian.Jackson@eu.citrix.com>,
Wei Liu <wei.liu2@citrix.com>, Jan Beulich <JBeulich@suse.com>,
Andrew Cooper <Andrew.Cooper3@citrix.com>
Subject: Re: [BUG} libxl.c:5947:libxl_send_trigger: Send trigger 'reset' failed: Function not implemented
Date: Tue, 9 Feb 2016 10:28:25 +0000 [thread overview]
Message-ID: <1455013705.19857.30.camel@citrix.com> (raw)
In-Reply-To: <56b3d9fa.4902620a.e0e8f.ffffab27@mx.google.com>
On Fri, 2016-02-05 at 10:08 +1100, Alex Braunegg wrote:
I'm copying the other tools maintainers as well as the x86 guys.
> Hi Ian,
>
> Below is the output requested:
>
> Guest Configuration:
>
> -------------------------------------------------------------
>
> builder='hvm'
> memory = 2048
> shadow_memory = 8
> uuid = '27f4787c-89b2-46ab-a797-96ea6e84c511'
> name = 'Windows_2008_R2'
> vif = [ 'bridge=br0, mac=00:16:3e:96:49:10' ]
> disk = [
> '/dev/zvol/storage0/xen/Windows_2008_R2/disk_sda,,hda','/storage0/data-
> shares/iso/en_windows_server_2008_r2_standard_enterprise_datacenter_and_w
> eb_x64_dvd_x15-59754.iso,,hdc,cdrom' ]
> # boot on floppy (a), hard disk (c) or CD-ROM (d)
> # default: hard disk, cd-rom, floppy
> boot='dc'
> sdl=0
> vnc=1
> vncconsole=1
> vnclisten='0.0.0.0'
> stdvga=1
> serial='pty'
> usbdevice='tablet'
> vncpasswd='bpC7fKtsDy'
You might want to change this now. ;-)
> vncdisplay=2
> localtime=1
> audio='1'
> soundhw='ac97'
>
> -------------------------------------------------------------
>
> Reboot Log:
> ===========
>
> [root@mynas-s5000xvn /]# /usr/sbin/xl -vvv reboot -F Windows_2008_R2
> Rebooting domain 9
> PV control interface not available: sending ACPI reset button event.
> libxl: error: libxl.c:5947:libxl_send_trigger: Send trigger 'reset'
> failed: Function not implemented
> reboot failed (rc=-3)
-3 here is libxl's ERROR_FAIL, which is a bit non-informative (and not to
be confused, as I just did, with an ESRCH error from the hypervisor in this
context).
However the "Function not implemented" tells us, I think, that the
hypervisor has returned ENOSYS.
The xl reboot command results in
libxl_send_trigger(ctx, dom, LIBXL_TRIGGER_RESET, 0)
which becomes a XEN_DOMCTL_sendtrigger hypercall with the
XEN_DOMCTL_SENDTRIGGER_RESET option.
However the hypervisor doesn't do anything with this event, and just
returns ENOSYS.
The only triggers which Xen supports injecting are NMI, ACPI POWER and ACPI
SLEEP. I don't know if this is due to ACPI only having those as a concept,
or that Xen just doesn't implement ACPI RESET for some reason.
In any case it seems like a bug in the toolstack to me that it offers the
tantalising -F option to xl reboot when there appears to be no possibility
of it working. In particular the man page says:
If PV drivers are not present but you have configured the guest OS
to behave appropriately you may be able to use the I<-F> option
trigger a reset button press.
Which AFAICT is all lies, I can only apologise for this :-/
> xc: debug: hypercall buffer: total allocations:18 total releases:18
> xc: debug: hypercall buffer: current allocations:0 maximum allocations:2
> xc: debug: hypercall buffer: cache current size:2
> xc: debug: hypercall buffer: cache hits:12 misses:2 toobig:4
> [root@mynas-s5000xvn /]#
>
>
> Shutdown Log:
> =============
>
> [root@mynas-s5000xvn /]# /usr/sbin/xl -vvv shutdown -F
> Windows_2008_R2
> Shutting down domain 9
> PV control interface not available: sending ACPI power button event.
> xc: debug: hypercall buffer: total allocations:18 total releases:18
> xc: debug: hypercall buffer: current allocations:0 maximum allocations:2
> xc: debug: hypercall buffer: cache current size:2
> xc: debug: hypercall buffer: cache hits:12 misses:2 toobig:4
> [root@mynas-s5000xvn /]#
>
>
> During this test, the shutdown of the guest system occurred - so
> potentially the shutdown command is working.
Yes, it seems that it is and should.
Irrespective of all the stuff above about reboot I think that without PV
drivers the only thing Xen can do to the guest is send it an ACPI power
button event, which it is up to the guest to interpret as reboot, power
off, hibernate, etc, I presume this can be configured somewhere in the
depths of the Windows control centre somewhere.
I'd strongly recommend installing some PV drivers into the guest, not only
will you gain reboot control etc but the I/O performance will be much
better.
Ian
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
next prev parent reply other threads:[~2016-02-09 10:28 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-03 21:50 [BUG} libxl.c:5947:libxl_send_trigger: Send trigger 'reset' failed: Function not implemented Alex Braunegg
2016-02-04 10:57 ` Ian Campbell
2016-02-04 23:08 ` Alex Braunegg
2016-02-09 10:28 ` Ian Campbell [this message]
2016-02-10 0:51 ` Alex Braunegg
2016-02-10 9:32 ` Ian Campbell
2016-02-10 22:30 ` Alex Braunegg
2016-02-11 9:33 ` Ian Campbell
2016-02-08 21:48 ` Alex Braunegg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1455013705.19857.30.camel@citrix.com \
--to=ian.campbell@citrix.com \
--cc=Andrew.Cooper3@citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=JBeulich@suse.com \
--cc=alex.braunegg@gmail.com \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.