Attempting to Get Xen FreeBSD Dom0 working

David P. Discher dpd at dpdtech.com
Mon Dec 8 22:45:18 UTC 2014


I tried all the combinations of things … and still couldn’t get the xen console switch to work.  I finally googled "xen X8STi console”, and found - http://wiki.xen.org/wiki/Xen_Serial_Console - which calls out the super micro  board X8STi - with the options:

   com1=115200,8n1,0x3e8,5

I don’t know what that “,5” does … but it fixed it.  I have also disabled all the ttys in /etc/ttys for the serial ports.  (haven’t tried the trailing 5 with the ttyu[012] “on”. )


Ok, back to it … re-started the debian install, and had “xentop” running and “xl info” in a loop, and eventually, within in minutes, the hyper call fails. 

	xc: error: Could not bounce buffer for sysctl hypercall (35 = Resource temporarily unavailabl): Internal error
	libxl: error: libxl.c:5024:libxl_get_physinfo: getting physinfo: Resource temporarily unavailable
	libxl_physinfo failed.
	xc: error: Could not bounce buffer for sysctl hypercall (35 = Resource temporarily unavailabl): Internal error
	libxl: error: libxl.c:5507:libxl_get_scheduler: getting domain info list: Resource temporarily unavailable

The debian install is still going, but makes it impossible to launch the installed system, since no call for xl will work.

	Sent SIGTERM to all processes                                               │
	Sent SIGKILL to all processes───────────────────────────────────────────────┘
	Requesting system reboot
	[ 1157.299205] Restarting system.
	root at borg:/zdata/debian #
	root at borg:/zdata/debian #
	root at borg:/zdata/debian # xl create -c debian.cfg
	root at borg:/zdata/debian # xl destroy debian
	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
	libxl: error: libxl.c:658:libxl_list_domain: getting domain info list: Resource temporarily unavailable
	debian is an invalid domain identifier (rc=-5)
	root at borg:/zdata/debian #

I’m running AHCI with MSI off in the FreeBSD kernel, and so far, so good on that front.  The great thing is now I got the Xen console working, so can get the debug output.   However the bounce buffer/hypercall issue i would think is far more important than MSI interrupts at the monument. 


-
David P. Discher
http://davidpdischer.com/
AIM: DavidDPD | Y!M: daviddpdz 



On Dec 5, 2014, at 3:56 AM, Roger Pau Monné <roger.pau at citrix.com> wrote:

> El 04/12/14 a les 22.28, David P. Discher ha escrit:
>> Update: So, I changed a few things, and stuff is working better.
>> 
>> The Xen kernel line is now:
>> 
>>  dom0_mem=2048M dom0_max_vcpus=4 dom0pvh=1 sync_console com1=115200,8n1,0x3e8 console=vga,com1 iommu=debug
> 
> I would advise against sync_console, it can easily cause delays in
> interrupt delivery which can cause timeouts in FreeBSD.
> 
>> 
>> Also note, I have these set in FreeBSD:
>> 
>>  console="comconsole vidconsole"
>>  comconsole_speed="115200"
>>  comconsole_port="0x3e8"
>>  boot_multicons="yes"
>>  vm.max_wired=2097152
>>  verbose_loading="YES"
>>  boot_verbose=""	# -v: Causes extra debugging information to be printed
>> 
>>  hint.ahci.0.msi=0
>>  hw.acpi.verbose=1
>>  debug.acpi.enable_debug_objects=1
>> 
>> So far, no AHCI timeouts. I’v gotten completely through an install of Debian … granted it failed, but for a linux reasons - couldn’t find/download a package.  But is still going.
>> 
>> The change to the console lines also help … console=vga,com1 & sync_console to xen allowed the IPMI SOL COM3 to fully complete the boot under freebsd.  And the tty/login ran and displayed on xc0 :
>> 
>>   FreeBSD/amd64 (borg.dpdtech.com) (xc0)
> 
> I will try to find a system similar to yours with an IPMI SOL console
> and see if I can figure out what's going on. As a test, could you try to
> disable the comconsole from FreeBSD and see if that makes a difference?
> 
> console="vidconsole"
> 
> And remove all the comconsole_* and boot_multicons options. This will
> have the side effect of removing serial output from the bootloader, but
> it might prevent FreeBSD from screwing the Xen serial console.
> 
>> However, this console will not take any input.   I still can’t get switched into the Xen console (Ctrl-A x3) on either the serial of VGA consoles. 
>> 
>> Another troubling item, em0 flaps when debian is starting up:
>> 
>> 	xnb(xnb_probe:1144): Claiming device 0, xnb
>> 	xnb1.0: bpf attached
>> 	xnb(xnb_attach:1292): Attaching to backend/vif/1/0
>> 	xnb(xnb_frontend_changed:1416): frontend_state=Initialising, xnb_state=InitWait
>> 	em0: Link is Down
>> 	xnb1.0: 2 link states coalesced
>> 	(d1) mapping kernel into physical memory
>> 	(d1) about to get started...
>> 	xnb(xnb_frontend_changed:1416): frontend_state=Connected, xnb_state=InitWait
>> 	xnb(xnb_connect_comms:796): rings connected!
>> 	em0: Link is up 1000 Mbps Full Duplex
>> 
>> em0 is in bridge0, which is what the debian.cfg is using.
> 
> I certainly don't see this kind of flipping on my network card, but I
> would focus on fixing the console first, so we can get debug info.
> 
>> 
>> Also, something really odd … hyper calls aren’t working after launching the debian guest - which also means I can’t launch any more guests. 
>> 
>> 	root at borg:~ # xl list
>> 	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
>> 	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
>> 	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
>> 	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
>> 	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
>> 	xc: error: Could not bounce buffer for version hypercall (35 = Resource temporarily unavailabl): Internal error
>> 	libxl: error: libxl.c:658:libxl_list_domain: getting domain info list: Resource temporarily unavailable
>> 	libxl_list_domain failed.
> 
> It seems like you are running out of wired memory, you should increase
> vm.max_wired, this can be changed at runtime with sysctl without problems.
> 
>> 
>> I’m heading out for the afternoon shortly, but it seems the next thing to do is to get the consoles working correctly so I can get debugging info from the hypervisor.  Will hopefully bang on this this evening. 
> 
> Thanks for the efforts, please keep me posted on how it goes.
> 
> Roger.
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 496 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-xen/attachments/20141208/f3e0db91/attachment.sig>


More information about the freebsd-xen mailing list