freebsd-skq/sys/i386
royger 375ecc42de xen/console: Introduce a new console driver for Xen guest
The current Xen console driver is crashing very quickly when using it on
an ARM guest. This is because the console lock is recursive and it may
lead to recursion on the tty lock and/or corrupt the ring pointer.

Furthermore, the console lock is not always taken where it should be and has
to be released too early because of the way the console has been designed.

Over the years, code has been modified to support various new features but
the driver has not been reworked.

This new driver has been rewritten with the idea of only having a small set
of specific function to write either via the shared ring or the hypercall
interface.

Note that HVM support has been left aside for now because it requires
additional features which are not yet supported. A follow-up patch will be
sent with HVM guest support.

List of items that may be good to have but not mandatory:
 - Avoid to flush for each character written when using the tty
 - Support multiple consoles

Submitted by:		Julien Grall <julien.grall@citrix.com>
Reviewed by:		royger
Differential Revision:	https://reviews.freebsd.org/D3698
Sponsored by:		Citrix Systems R&D
2015-10-08 16:39:43 +00:00
..
acpica If x86 CPU implementation of the MWAIT instruction reasonably 2015-05-09 12:28:48 +00:00
bios Pull in r267961 and r267973 again. Fix for issues reported will follow. 2014-06-28 03:56:17 +00:00
conf Add pmspvc device back to GENERIC. The issues with the device playing 2015-08-03 13:49:46 +00:00
i386 Update Xen headers from 4.2 to 4.6 2015-10-06 11:29:44 +00:00
ibcs2 Replace struct filedesc argument in getvnode with struct thread 2015-06-16 13:09:18 +00:00
include xen/console: Introduce a new console driver for Xen guest 2015-10-08 16:39:43 +00:00
isa Convert between abridged (from FXSAVE) and unabridged (from FSAVE) 2015-07-10 09:20:13 +00:00
linux Implement lockless resource limits. 2015-06-10 10:48:12 +00:00
pci Remove support for Xen PV domU kernels. Support for HVM domU kernels 2015-04-30 15:48:48 +00:00
svr4 MFamd64: Move extern declaration of _ucodesel and _udatasel to 2014-11-02 21:40:32 +00:00
xbox After r261980, the local ptr variable in xbox_init() is no longer used, 2014-02-16 22:48:36 +00:00
Makefile Delete duplicate tags entry I introduced in -r223901. 2011-07-15 17:27:26 +00:00