Commit fad7bdc9 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'for-linus-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml

Pull UML updates from Anton Ivanov:
 "I am sending this on behalf of Richard who is traveling.

  This contains the following changes for UML:

   - Fix for time travel mode

   - Disable CONFIG_CONSTRUCTORS again

   - A new command line option to have an non-raw serial line

   - Preparations to remove obsolete UML network drivers"

* tag 'for-linus-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
  um: Fix time-travel=inf-cpu with xor/raid6
  Revert "um: Enable CONFIG_CONSTRUCTORS"
  um: Mark non-vector net transports as obsolete
  um: Add an option to make serial driver non-raw
parents a78416d9 d65197ad
...@@ -189,6 +189,8 @@ config SECCOMP ...@@ -189,6 +189,8 @@ config SECCOMP
config UML_TIME_TRAVEL_SUPPORT config UML_TIME_TRAVEL_SUPPORT
bool bool
prompt "Support time-travel mode (e.g. for test execution)" prompt "Support time-travel mode (e.g. for test execution)"
# inf-cpu mode is incompatible with the benchmarking
depends on !RAID6_PQ_BENCHMARK
help help
Enable this option to support time travel inside the UML instance. Enable this option to support time travel inside the UML instance.
......
...@@ -147,7 +147,7 @@ config UML_NET ...@@ -147,7 +147,7 @@ config UML_NET
make use of UML networking. make use of UML networking.
config UML_NET_ETHERTAP config UML_NET_ETHERTAP
bool "Ethertap transport" bool "Ethertap transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
The Ethertap User-Mode Linux network transport allows a single The Ethertap User-Mode Linux network transport allows a single
...@@ -167,14 +167,13 @@ config UML_NET_ETHERTAP ...@@ -167,14 +167,13 @@ config UML_NET_ETHERTAP
has examples of the UML command line to use to enable Ethertap has examples of the UML command line to use to enable Ethertap
networking. networking.
If you'd like to set up an IP network with the host and/or the NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
outside world, say Y to this, the Daemon Transport and/or the migrate to UML_NET_VECTOR.
Slip Transport. You'll need at least one of them, but may choose
more than one without conflict. If you don't need UML networking, If unsure, say N.
say N.
config UML_NET_TUNTAP config UML_NET_TUNTAP
bool "TUN/TAP transport" bool "TUN/TAP transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
The UML TUN/TAP network transport allows a UML instance to exchange The UML TUN/TAP network transport allows a UML instance to exchange
...@@ -185,8 +184,13 @@ config UML_NET_TUNTAP ...@@ -185,8 +184,13 @@ config UML_NET_TUNTAP
To use this transport, your host kernel must have support for TUN/TAP To use this transport, your host kernel must have support for TUN/TAP
devices, either built-in or as a module. 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 config UML_NET_SLIP
bool "SLIP transport" bool "SLIP transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
The slip User-Mode Linux network transport allows a running UML to The slip User-Mode Linux network transport allows a running UML to
...@@ -201,16 +205,13 @@ config UML_NET_SLIP ...@@ -201,16 +205,13 @@ config UML_NET_SLIP
has examples of the UML command line to use to enable slip has examples of the UML command line to use to enable slip
networking, and details of a few quirks with it. networking, and details of a few quirks with it.
The Ethertap Transport is preferred over slip because of its NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
limitations. If you prefer slip, however, say Y here. Otherwise migrate to UML_NET_VECTOR.
choose the Multicast transport (to network multiple UMLs on
multiple hosts), Ethertap (to network with the host and the If unsure, say N.
outside world), and/or the Daemon transport (to network multiple
UMLs on a single host). You may choose more than one without
conflict. If you don't need UML networking, say N.
config UML_NET_DAEMON config UML_NET_DAEMON
bool "Daemon transport" bool "Daemon transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
This User-Mode Linux network transport allows one or more running This User-Mode Linux network transport allows one or more running
...@@ -225,13 +226,10 @@ config UML_NET_DAEMON ...@@ -225,13 +226,10 @@ config UML_NET_DAEMON
has examples of the UML command line to use to enable Daemon has examples of the UML command line to use to enable Daemon
networking. networking.
If you'd like to set up a network with other UMLs on a single host, NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
say Y. If you need a network between UMLs on multiple physical migrate to UML_NET_VECTOR.
hosts, choose the Multicast Transport. To set up a network with
the host and/or other IP machines, say Y to the Ethertap or Slip If unsure, say N.
transports. You'll need at least one of them, but may choose
more than one without conflict. If you don't need UML networking,
say N.
config UML_NET_VECTOR config UML_NET_VECTOR
bool "Vector I/O high performance network devices" bool "Vector I/O high performance network devices"
...@@ -245,7 +243,7 @@ config UML_NET_VECTOR ...@@ -245,7 +243,7 @@ config UML_NET_VECTOR
drivers. drivers.
config UML_NET_VDE config UML_NET_VDE
bool "VDE transport" bool "VDE transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
This User-Mode Linux network transport allows one or more running This User-Mode Linux network transport allows one or more running
...@@ -263,11 +261,13 @@ config UML_NET_VDE ...@@ -263,11 +261,13 @@ config UML_NET_VDE
That site has a good overview of what VDE is and also examples That site has a good overview of what VDE is and also examples
of the UML command line to use to enable VDE networking. of the UML command line to use to enable VDE networking.
If you need UML networking with VDE, NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
say Y. migrate to UML_NET_VECTOR.
If unsure, say N.
config UML_NET_MCAST config UML_NET_MCAST
bool "Multicast transport" bool "Multicast transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
This Multicast User-Mode Linux network transport allows multiple This Multicast User-Mode Linux network transport allows multiple
...@@ -284,15 +284,13 @@ config UML_NET_MCAST ...@@ -284,15 +284,13 @@ config UML_NET_MCAST
has examples of the UML command line to use to enable Multicast has examples of the UML command line to use to enable Multicast
networking, and notes about the security of this approach. networking, and notes about the security of this approach.
If you need UMLs on multiple physical hosts to communicate as if NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
they shared an Ethernet network, say Y. If you need to communicate migrate to UML_NET_VECTOR.
with other IP machines, make sure you select one of the other
transports (possibly in addition to Multicast; they're not If unsure, say N.
exclusive). If you don't need to network UMLs say N to each of
the transports.
config UML_NET_PCAP config UML_NET_PCAP
bool "pcap transport" bool "pcap transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
The pcap transport makes a pcap packet stream on the host look The pcap transport makes a pcap packet stream on the host look
...@@ -304,11 +302,13 @@ config UML_NET_PCAP ...@@ -304,11 +302,13 @@ config UML_NET_PCAP
<http://user-mode-linux.sourceforge.net/old/networking.html> That site <http://user-mode-linux.sourceforge.net/old/networking.html> That site
has examples of the UML command line to use to enable this option. has examples of the UML command line to use to enable this option.
If you intend to use UML as a network monitor for the host, say NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
Y here. Otherwise, say N. migrate to UML_NET_VECTOR.
If unsure, say N.
config UML_NET_SLIRP config UML_NET_SLIRP
bool "SLiRP transport" bool "SLiRP transport (obsolete)"
depends on UML_NET depends on UML_NET
help help
The SLiRP User-Mode Linux network transport allows a running UML The SLiRP User-Mode Linux network transport allows a running UML
...@@ -328,9 +328,10 @@ config UML_NET_SLIRP ...@@ -328,9 +328,10 @@ config UML_NET_SLIRP
that of a host behind a firewall that masquerades all network that of a host behind a firewall that masquerades all network
connections passing through it (but is less secure). connections passing through it (but is less secure).
To use this you should first have slirp compiled somewhere NOTE: THIS TRANSPORT IS DEPRECATED AND WILL BE REMOVED SOON!!! Please
accessible on the host, and have read its documentation. If you migrate to UML_NET_VECTOR.
don't need UML networking, say N.
If unsure, say N.
Startup example: "eth0=slirp,FE:FD:01:02:03:04,/usr/local/bin/slirp" Startup example: "eth0=slirp,FE:FD:01:02:03:04,/usr/local/bin/slirp"
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
struct chan_opts { struct chan_opts {
void (*const announce)(char *dev_name, int dev); void (*const announce)(char *dev_name, int dev);
char *xterm_title; char *xterm_title;
const int raw; int raw;
}; };
struct chan_ops { struct chan_ops {
......
...@@ -196,3 +196,11 @@ static int ssl_chan_setup(char *str) ...@@ -196,3 +196,11 @@ static int ssl_chan_setup(char *str)
__setup("ssl", ssl_chan_setup); __setup("ssl", ssl_chan_setup);
__channel_help(ssl_chan_setup, "ssl"); __channel_help(ssl_chan_setup, "ssl");
static int ssl_non_raw_setup(char *str)
{
opts.raw = 0;
return 1;
}
__setup("ssl-non-raw", ssl_non_raw_setup);
__channel_help(ssl_non_raw_setup, "set serial lines to non-raw mode");
...@@ -25,5 +25,4 @@ generic-y += switch_to.h ...@@ -25,5 +25,4 @@ generic-y += switch_to.h
generic-y += topology.h generic-y += topology.h
generic-y += trace_clock.h generic-y += trace_clock.h
generic-y += word-at-a-time.h generic-y += word-at-a-time.h
generic-y += xor.h
generic-y += kprobes.h generic-y += kprobes.h
...@@ -82,8 +82,8 @@ ...@@ -82,8 +82,8 @@
__preinit_array_end = .; __preinit_array_end = .;
} }
.init_array : { .init_array : {
/* dummy - we call this ourselves */
__init_array_start = .; __init_array_start = .;
*(.init_array)
__init_array_end = .; __init_array_end = .;
} }
.fini_array : { .fini_array : {
......
/* SPDX-License-Identifier: GPL-2.0 */
#include <asm-generic/xor.h>
#include <shared/timer-internal.h>
/* pick an arbitrary one - measuring isn't possible with inf-cpu */
#define XOR_SELECT_TEMPLATE(x) \
(time_travel_mode == TT_MODE_INFCPU ? &xor_block_8regs : NULL)
...@@ -103,6 +103,7 @@ SECTIONS ...@@ -103,6 +103,7 @@ SECTIONS
be empty, which isn't pretty. */ be empty, which isn't pretty. */
. = ALIGN(32 / 8); . = ALIGN(32 / 8);
.preinit_array : { *(.preinit_array) } .preinit_array : { *(.preinit_array) }
.init_array : { *(.init_array) }
.fini_array : { *(.fini_array) } .fini_array : { *(.fini_array) }
.data : { .data : {
INIT_TASK_DATA(KERNEL_STACK_SIZE) INIT_TASK_DATA(KERNEL_STACK_SIZE)
......
...@@ -54,6 +54,7 @@ config CC_DISABLE_WARN_MAYBE_UNINITIALIZED ...@@ -54,6 +54,7 @@ config CC_DISABLE_WARN_MAYBE_UNINITIALIZED
config CONSTRUCTORS config CONSTRUCTORS
bool bool
depends on !UML
config IRQ_WORK config IRQ_WORK
bool bool
......
...@@ -4,7 +4,7 @@ menu "GCOV-based kernel profiling" ...@@ -4,7 +4,7 @@ menu "GCOV-based kernel profiling"
config GCOV_KERNEL config GCOV_KERNEL
bool "Enable gcov-based kernel profiling" bool "Enable gcov-based kernel profiling"
depends on DEBUG_FS depends on DEBUG_FS
select CONSTRUCTORS select CONSTRUCTORS if !UML
default n default n
---help--- ---help---
This option enables gcov-based code profiling (e.g. for code coverage This option enables gcov-based code profiling (e.g. for code coverage
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment