diff options
author | Thomas Huth <thuth@redhat.com> | 2024-11-11 14:11:20 +0100 |
---|---|---|
committer | Thomas Huth <thuth@redhat.com> | 2024-11-18 17:14:35 +0100 |
commit | 6ba1f714c00f8839a8df9f643e0058f00da3fd25 (patch) | |
tree | 35c7da6df418c94564bdca3558dfb6f55e2e3a8b | |
parent | 1056ca1e70dc6e0458238141bcebfb7810cede6d (diff) |
pc-bios/s390-ccw: Re-initialize receive queue index before each boot attempt
Now that we can boot from multiple boot devices, we have to make sure
to reinitialize static variables like rx_last_idx to avoid that they
contain garbage data during the second boot attempt (which can lead to
crashes when the code tries to access the wrong ring data).
Message-ID: <20241111131120.317796-1-thuth@redhat.com>
Reviewed-by: Jared Rossi <jrossi@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
-rw-r--r-- | pc-bios/s390-ccw/virtio-net.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/pc-bios/s390-ccw/virtio-net.c b/pc-bios/s390-ccw/virtio-net.c index f9854a22c3..578c89d0c5 100644 --- a/pc-bios/s390-ccw/virtio-net.c +++ b/pc-bios/s390-ccw/virtio-net.c @@ -51,6 +51,8 @@ int virtio_net_init(void *mac_addr) void *buf; int i; + rx_last_idx = 0; + vdev->guest_features[0] = VIRTIO_NET_F_MAC_BIT; virtio_setup_ccw(vdev); |