385 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			385 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # SPDX-License-Identifier: GPL-2.0
 | |
| 
 | |
| menu "UML Character Devices"
 | |
| 
 | |
| config STDERR_CONSOLE
 | |
| 	bool "stderr console"
 | |
| 	default y
 | |
| 	help
 | |
| 	  console driver which dumps all printk messages to stderr.
 | |
| 
 | |
| config SSL
 | |
| 	bool "Virtual serial line"
 | |
| 	help
 | |
| 	  The User-Mode Linux environment allows you to create virtual serial
 | |
| 	  lines on the UML that are usually made to show up on the host as
 | |
| 	  ttys or ptys.
 | |
| 
 | |
| 	  See <http://user-mode-linux.sourceforge.net/old/input.html> for more
 | |
| 	  information and command line examples of how to use this facility.
 | |
| 
 | |
| 	  Unless you have a specific reason for disabling this, say Y.
 | |
| 
 | |
| config NULL_CHAN
 | |
| 	bool "null channel support"
 | |
| 	help
 | |
| 	  This option enables support for attaching UML consoles and serial
 | |
| 	  lines to a device similar to /dev/null.  Data written to it disappears
 | |
| 	  and there is never any data to be read.
 | |
| 
 | |
| config PORT_CHAN
 | |
| 	bool "port channel support"
 | |
| 	help
 | |
| 	  This option enables support for attaching UML consoles and serial
 | |
| 	  lines to host portals.  They may be accessed with 'telnet <host>
 | |
| 	  <port number>'.  Any number of consoles and serial lines may be
 | |
| 	  attached to a single portal, although what UML device you get when
 | |
| 	  you telnet to that portal will be unpredictable.
 | |
| 	  It is safe to say 'Y' here.
 | |
| 
 | |
| config PTY_CHAN
 | |
| 	bool "pty channel support"
 | |
| 	help
 | |
| 	  This option enables support for attaching UML consoles and serial
 | |
| 	  lines to host pseudo-terminals.  Access to both traditional
 | |
| 	  pseudo-terminals (/dev/pty*) and pts pseudo-terminals are controlled
 | |
| 	  with this option.  The assignment of UML devices to host devices
 | |
| 	  will be announced in the kernel message log.
 | |
| 	  It is safe to say 'Y' here.
 | |
| 
 | |
| config TTY_CHAN
 | |
| 	bool "tty channel support"
 | |
| 	help
 | |
| 	  This option enables support for attaching UML consoles and serial
 | |
| 	  lines to host terminals.  Access to both virtual consoles
 | |
| 	  (/dev/tty*) and the slave side of pseudo-terminals (/dev/ttyp* and
 | |
| 	  /dev/pts/*) are controlled by this option.
 | |
| 	  It is safe to say 'Y' here.
 | |
| 
 | |
| config XTERM_CHAN
 | |
| 	bool "xterm channel support"
 | |
| 	help
 | |
| 	  This option enables support for attaching UML consoles and serial
 | |
| 	  lines to xterms.  Each UML device so assigned will be brought up in
 | |
| 	  its own xterm.
 | |
| 	  It is safe to say 'Y' here.
 | |
| 
 | |
| config XTERM_CHAN_DEFAULT_EMULATOR
 | |
| 	string "xterm channel default terminal emulator"
 | |
| 	depends on XTERM_CHAN
 | |
| 	default "xterm"
 | |
| 	help
 | |
| 	  This option allows changing the default terminal emulator.
 | |
| 
 | |
| config NOCONFIG_CHAN
 | |
| 	bool
 | |
| 	default !(XTERM_CHAN && TTY_CHAN && PTY_CHAN && PORT_CHAN && NULL_CHAN)
 | |
| 
 | |
| config CON_ZERO_CHAN
 | |
| 	string "Default main console channel initialization"
 | |
| 	default "fd:0,fd:1"
 | |
| 	help
 | |
| 	  This is the string describing the channel to which the main console
 | |
| 	  will be attached by default.  This value can be overridden from the
 | |
| 	  command line.  The default value is "fd:0,fd:1", which attaches the
 | |
| 	  main console to stdin and stdout.
 | |
| 	  It is safe to leave this unchanged.
 | |
| 
 | |
| config CON_CHAN
 | |
| 	string "Default console channel initialization"
 | |
| 	default "xterm"
 | |
| 	help
 | |
| 	  This is the string describing the channel to which all consoles
 | |
| 	  except the main console will be attached by default.  This value can
 | |
| 	  be overridden from the command line.  The default value is "xterm",
 | |
| 	  which brings them up in xterms.
 | |
| 	  It is safe to leave this unchanged, although you may wish to change
 | |
| 	  this if you expect the UML that you build to be run in environments
 | |
| 	  which don't have X or xterm available.
 | |
| 
 | |
| config SSL_CHAN
 | |
| 	string "Default serial line channel initialization"
 | |
| 	default "pty"
 | |
| 	help
 | |
| 	  This is the string describing the channel to which the serial lines
 | |
| 	  will be attached by default.  This value can be overridden from the
 | |
| 	  command line.  The default value is "pty", which attaches them to
 | |
| 	  traditional pseudo-terminals.
 | |
| 	  It is safe to leave this unchanged, although you may wish to change
 | |
| 	  this if you expect the UML that you build to be run in environments
 | |
| 	  which don't have a set of /dev/pty* devices.
 | |
| 
 | |
| config UML_SOUND
 | |
| 	tristate "Sound support"
 | |
| 	depends on SOUND
 | |
| 	select SOUND_OSS_CORE
 | |
| 	help
 | |
| 	  This option enables UML sound support.  If enabled, it will pull in
 | |
| 	  the UML hostaudio relay, which acts as a intermediary
 | |
| 	  between the host's dsp and mixer devices and the UML sound system.
 | |
| 	  It is safe to say 'Y' here.
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| menu "UML Network Devices"
 | |
| 	depends on NET
 | |
| 
 | |
| # UML virtual driver
 | |
| config UML_NET
 | |
| 	bool "Virtual network device"
 | |
| 	help
 | |
| 	  While the User-Mode port cannot directly talk to any physical
 | |
| 	  hardware devices, this choice and the following transport options
 | |
| 	  provide one or more virtual network devices through which the UML
 | |
| 	  kernels can talk to each other, the host, and with the host's help,
 | |
| 	  machines on the outside world.
 | |
| 
 | |
| 	  For more information, including explanations of the networking and
 | |
| 	  sample configurations, see
 | |
| 	  <http://user-mode-linux.sourceforge.net/old/networking.html>.
 | |
| 
 | |
| 	  If you'd like to be able to enable networking in the User-Mode
 | |
| 	  linux environment, say Y; otherwise say N.  Note that you must
 | |
| 	  enable at least one of the following transport options to actually
 | |
| 	  make use of UML networking.
 | |
| 
 | |
| config UML_NET_ETHERTAP
 | |
| 	bool "Ethertap transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	help
 | |
| 	  The Ethertap User-Mode Linux network transport allows a single
 | |
| 	  running UML to exchange packets with its host over one of the
 | |
| 	  host's Ethertap devices, such as /dev/tap0.  Additional running
 | |
| 	  UMLs can use additional Ethertap devices, one per running UML.
 | |
| 	  While the UML believes it's on a (multi-device, broadcast) virtual
 | |
| 	  Ethernet network, it's in fact communicating over a point-to-point
 | |
| 	  link with the host.
 | |
| 
 | |
| 	  To use this, your host kernel must have support for Ethertap
 | |
| 	  devices.  Also, if your host kernel is 2.4.x, it must have
 | |
| 	  CONFIG_NETLINK_DEV configured as Y or M.
 | |
| 
 | |
| 	  For more information, see
 | |
| 	  <http://user-mode-linux.sourceforge.net/old/networking.html>  That site
 | |
| 	  has examples of the UML command line to use to enable Ethertap
 | |
| 	  networking.
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config UML_NET_TUNTAP
 | |
| 	bool "TUN/TAP transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	help
 | |
| 	  The UML TUN/TAP network transport allows a UML instance to exchange
 | |
| 	  packets with the host over a TUN/TAP device.  This option will only
 | |
| 	  work with a 2.4 host, unless you've applied the TUN/TAP patch to
 | |
| 	  your 2.2 host kernel.
 | |
| 
 | |
| 	  To use this transport, your host kernel must have support for TUN/TAP
 | |
| 	  devices, either built-in or as a module.
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config UML_NET_SLIP
 | |
| 	bool "SLIP transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	help
 | |
| 	  The slip User-Mode Linux network transport allows a running UML to
 | |
| 	  network with its host over a point-to-point link.  Unlike Ethertap,
 | |
| 	  which can carry any Ethernet frame (and hence even non-IP packets),
 | |
| 	  the slip transport can only carry IP packets.
 | |
| 
 | |
| 	  To use this, your host must support slip devices.
 | |
| 
 | |
| 	  For more information, see
 | |
| 	  <http://user-mode-linux.sourceforge.net/old/networking.html>.
 | |
| 	  has examples of the UML command line to use to enable slip
 | |
| 	  networking, and details of a few quirks with it.
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config UML_NET_DAEMON
 | |
| 	bool "Daemon transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	help
 | |
| 	  This User-Mode Linux network transport allows one or more running
 | |
| 	  UMLs on a single host to communicate with each other, but not to
 | |
| 	  the host.
 | |
| 
 | |
| 	  To use this form of networking, you'll need to run the UML
 | |
| 	  networking daemon on the host.
 | |
| 
 | |
| 	  For more information, see
 | |
| 	  <http://user-mode-linux.sourceforge.net/old/networking.html>  That site
 | |
| 	  has examples of the UML command line to use to enable Daemon
 | |
| 	  networking.
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config UML_NET_DAEMON_DEFAULT_SOCK
 | |
| 	string "Default socket for daemon transport"
 | |
| 	default "/tmp/uml.ctl"
 | |
| 	depends on UML_NET_DAEMON
 | |
| 	help
 | |
| 	  This option allows setting the default socket for the daemon
 | |
| 	  transport, normally it defaults to /tmp/uml.ctl.
 | |
| 
 | |
| config UML_NET_VECTOR
 | |
| 	bool "Vector I/O high performance network devices"
 | |
| 	depends on UML_NET
 | |
| 	select MAY_HAVE_RUNTIME_DEPS
 | |
| 	help
 | |
| 	  This User-Mode Linux network driver uses multi-message send
 | |
| 	  and receive functions. The host running the UML guest must have
 | |
| 	  a linux kernel version above 3.0 and a libc version > 2.13.
 | |
| 	  This driver provides tap, raw, gre and l2tpv3 network transports
 | |
| 	  with up to 4 times higher network throughput than the UML network
 | |
| 	  drivers.
 | |
| 
 | |
| config UML_NET_VDE
 | |
| 	bool "VDE transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	select MAY_HAVE_RUNTIME_DEPS
 | |
| 	help
 | |
| 	  This User-Mode Linux network transport allows one or more running
 | |
| 	  UMLs on a single host to communicate with each other and also
 | |
| 	  with the rest of the world using Virtual Distributed Ethernet,
 | |
| 	  an improved fork of uml_switch.
 | |
| 
 | |
| 	  You must have libvdeplug installed in order to build the vde
 | |
| 	  transport into UML.
 | |
| 
 | |
| 	  To use this form of networking, you will need to run vde_switch
 | |
| 	  on the host.
 | |
| 
 | |
| 	  For more information, see <http://wiki.virtualsquare.org/>
 | |
| 	  That site has a good overview of what VDE is and also examples
 | |
| 	  of the UML command line to use to enable VDE networking.
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config UML_NET_MCAST
 | |
| 	bool "Multicast transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	help
 | |
| 	  This Multicast User-Mode Linux network transport allows multiple
 | |
| 	  UMLs (even ones running on different host machines!) to talk to
 | |
| 	  each other over a virtual ethernet network.  However, it requires
 | |
| 	  at least one UML with one of the other transports to act as a
 | |
| 	  bridge if any of them need to be able to talk to their hosts or any
 | |
| 	  other IP machines.
 | |
| 
 | |
| 	  To use this, your host kernel(s) must support IP Multicasting.
 | |
| 
 | |
| 	  For more information, see
 | |
| 	  <http://user-mode-linux.sourceforge.net/old/networking.html>  That site
 | |
| 	  has examples of the UML command line to use to enable Multicast
 | |
| 	  networking, and notes about the security of this approach.
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config UML_NET_PCAP
 | |
| 	bool "pcap transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	select MAY_HAVE_RUNTIME_DEPS
 | |
| 	help
 | |
| 	  The pcap transport makes a pcap packet stream on the host look
 | |
| 	  like an ethernet device inside UML.  This is useful for making
 | |
| 	  UML act as a network monitor for the host.  You must have libcap
 | |
| 	  installed in order to build the pcap transport into UML.
 | |
| 
 | |
| 	  For more information, see
 | |
| 	  <http://user-mode-linux.sourceforge.net/old/networking.html>  That site
 | |
| 	  has examples of the UML command line to use to enable this option.
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config UML_NET_SLIRP
 | |
| 	bool "SLiRP transport (obsolete)"
 | |
| 	depends on UML_NET
 | |
| 	help
 | |
| 	  The SLiRP User-Mode Linux network transport allows a running UML
 | |
| 	  to network by invoking a program that can handle SLIP encapsulated
 | |
| 	  packets.  This is commonly (but not limited to) the application
 | |
| 	  known as SLiRP, a program that can re-socket IP packets back onto
 | |
| 	  he host on which it is run.  Only IP packets are supported,
 | |
| 	  unlike other network transports that can handle all Ethernet
 | |
| 	  frames.  In general, slirp allows the UML the same IP connectivity
 | |
| 	  to the outside world that the host user is permitted, and unlike
 | |
| 	  other transports, SLiRP works without the need of root level
 | |
| 	  privileges, setuid binaries, or SLIP devices on the host.  This
 | |
| 	  also means not every type of connection is possible, but most
 | |
| 	  situations can be accommodated with carefully crafted slirp
 | |
| 	  commands that can be passed along as part of the network device's
 | |
| 	  setup string.  The effect of this transport on the UML is similar
 | |
| 	  that of a host behind a firewall that masquerades all network
 | |
| 	  connections passing through it (but is less secure).
 | |
| 
 | |
| 	  NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
 | |
| 	  migrate to UML_NET_VECTOR.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| 	  Startup example: "eth0=slirp,FE:FD:01:02:03:04,/usr/local/bin/slirp"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| config VIRTIO_UML
 | |
| 	bool "UML driver for virtio devices"
 | |
| 	select VIRTIO
 | |
| 	help
 | |
| 	  This driver provides support for virtio based paravirtual device
 | |
| 	  drivers over vhost-user sockets.
 | |
| 
 | |
| config UML_RTC
 | |
| 	bool "UML RTC driver"
 | |
| 	depends on RTC_CLASS
 | |
| 	# there's no use in this if PM_SLEEP isn't enabled ...
 | |
| 	depends on PM_SLEEP
 | |
| 	help
 | |
| 	  When PM_SLEEP is configured, it may be desirable to wake up using
 | |
| 	  rtcwake, especially in time-travel mode. This driver enables that
 | |
| 	  by providing a fake RTC clock that causes a wakeup at the right
 | |
| 	  time.
 | |
| 
 | |
| config UML_PCI_OVER_VIRTIO
 | |
| 	bool "Enable PCI over VIRTIO device simulation"
 | |
| 	# in theory, just VIRTIO is enough, but that causes recursion
 | |
| 	depends on VIRTIO_UML
 | |
| 	select FORCE_PCI
 | |
| 	select UML_IOMEM_EMULATION
 | |
| 	select UML_DMA_EMULATION
 | |
| 	select PCI_MSI
 | |
| 	select PCI_MSI_IRQ_DOMAIN
 | |
| 	select PCI_LOCKLESS_CONFIG
 | |
| 
 | |
| config UML_PCI_OVER_VIRTIO_DEVICE_ID
 | |
| 	int "set the virtio device ID for PCI emulation"
 | |
| 	default -1
 | |
| 	depends on UML_PCI_OVER_VIRTIO
 | |
| 	help
 | |
| 	  There's no official device ID assigned (yet), set the one you
 | |
| 	  wish to use for experimentation here. The default of -1 is
 | |
| 	  not valid and will cause the driver to fail at probe.
 |