Commit 3b2fbb3f authored by Cornelia Huck's avatar Cornelia Huck Committed by Michael S. Tsirkin

virtio/s390: deprecate old transport

There only ever have been two host implementations of the old
s390-virtio (pre-ccw) transport: the experimental kuli userspace,
and qemu. As qemu switched its default to ccw with 2.4 (with most
users having used ccw well before that) and removed the old transport
entirely in 2.6, s390-virtio probably hasn't been in active use for
quite some time and is therefore likely to bitrot.

Let's start the slow march towards removing the code by deprecating
it.

Note that this also deprecates the early virtio console code, which
has been causing trouble in the guest without being wired up in any
relevant hypervisor code.
Acked-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: default avatarDong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
Reviewed-by: default avatarSascha Silbe <silbe@linux.vnet.ibm.com>
Signed-off-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent 2ab0d56a
...@@ -871,4 +871,17 @@ config S390_GUEST ...@@ -871,4 +871,17 @@ config S390_GUEST
Select this option if you want to run the kernel as a guest under Select this option if you want to run the kernel as a guest under
the KVM hypervisor. the KVM hypervisor.
config S390_GUEST_OLD_TRANSPORT
def_bool y
prompt "Guest support for old s390 virtio transport (DEPRECATED)"
depends on S390_GUEST
help
Enable this option to add support for the old s390-virtio
transport (i.e. virtio devices NOT based on virtio-ccw). This
type of virtio devices is only available on the experimental
kuli userspace or with old (< 2.6) qemu. If you are running
with a modern version of qemu (which supports virtio-ccw since
1.4 and uses it by default since version 2.4), you probably won't
need this.
endmenu endmenu
...@@ -6,4 +6,8 @@ ...@@ -6,4 +6,8 @@
# it under the terms of the GNU General Public License (version 2 only) # it under the terms of the GNU General Public License (version 2 only)
# as published by the Free Software Foundation. # as published by the Free Software Foundation.
obj-$(CONFIG_S390_GUEST) += kvm_virtio.o virtio_ccw.o s390-virtio-objs := virtio_ccw.o
ifdef CONFIG_S390_GUEST_OLD_TRANSPORT
s390-virtio-objs += kvm_virtio.o
endif
obj-$(CONFIG_S390_GUEST) += $(s390-virtio-objs)
...@@ -458,6 +458,8 @@ static int __init kvm_devices_init(void) ...@@ -458,6 +458,8 @@ static int __init kvm_devices_init(void)
if (test_devices_support(total_memory_size) < 0) if (test_devices_support(total_memory_size) < 0)
return -ENODEV; return -ENODEV;
pr_warn("The s390-virtio transport is deprecated. Please switch to a modern host providing virtio-ccw.\n");
rc = vmem_add_mapping(total_memory_size, PAGE_SIZE); rc = vmem_add_mapping(total_memory_size, PAGE_SIZE);
if (rc) if (rc)
return rc; return rc;
......
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