From nobody Wed Feb 5 12:48:16 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737028780; cv=none; d=zohomail.com; s=zohoarc; b=BH4afkNxtDLtioQZ6hAhFcOsyXMae3LiNNWX2qnyhdQ+lChvGUbohipaHk0onuFXaCwRGHlUiNUOaGMEf6CMN+pSqelZY/19ts5ENLcGV29TMt7TCmU0BP+lPJ1gN8NuMtFtU6WSnsm50PFVDifmEd6jb9I7Av2QP4eUorcbMgk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737028780; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=2tjrhkAsiOJtDX1enLA5329/kbSXIY4gcxWqm/tlqns=; b=khaZpKkjEAriOzapdGxONbqP8vCZBYeOdQ3L2WhjCtvmOYc9GdLv7hqSmrYwY0oevGj7Eq+mPjrwjeZGvZyNALtio8QUoRj4mof9FFmq1D7l9Jnc/eFwHHFMnWAMgNnPkgeTsuopomWZNaVZYjKSVrl01V07Mrhy7OMv1+eGYY0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1737028780964124.15412118633651; Thu, 16 Jan 2025 03:59:40 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYOWS-00026P-2E; Thu, 16 Jan 2025 06:58:53 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tYOWL-00024r-2l for qemu-devel@nongnu.org; Thu, 16 Jan 2025 06:58:46 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tYOWI-0002ir-Qc for qemu-devel@nongnu.org; Thu, 16 Jan 2025 06:58:43 -0500 Received: from mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-258-6x45NldBPFqS6nen7GZAxQ-1; Thu, 16 Jan 2025 06:58:39 -0500 Received: from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id CB4FF19560A3; Thu, 16 Jan 2025 11:58:37 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.192.129]) by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 4707330001BE; Thu, 16 Jan 2025 11:58:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737028722; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2tjrhkAsiOJtDX1enLA5329/kbSXIY4gcxWqm/tlqns=; b=Fhqh4KFToTMT1RvRm14AUE6Uu04YaOLo0W8eUXD+866aC9gW18vqQ2Yjxn5XfNssFcCWJB LuuKSNRkMbzcOY5yvfCXDpEniSJ15hG7/Xo1pKwMWA8cFq+Hc5rf+TbtYbApcB+7/ly6Gh kDC1S6Q2COqYpcKc4wbJ0NIyC2YB3Lo= X-MC-Unique: 6x45NldBPFqS6nen7GZAxQ-1 X-Mimecast-MFC-AGG-ID: 6x45NldBPFqS6nen7GZAxQ From: Thomas Huth To: qemu-devel@nongnu.org, Jared Rossi Cc: qemu-s390x@nongnu.org, Christian Borntraeger , Eric Farman Subject: [PATCH 1/3] pc-bios/s390-ccw/virtio: Add a function to reset a virtio device Date: Thu, 16 Jan 2025 12:58:24 +0100 Message-ID: <20250116115826.192047-2-thuth@redhat.com> In-Reply-To: <20250116115826.192047-1-thuth@redhat.com> References: <20250116115826.192047-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -39 X-Spam_score: -4.0 X-Spam_bar: ---- X-Spam_report: (-4.0 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.093, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-1.797, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737028782023019000 Content-Type: text/plain; charset="utf-8" To be able to properly silence a virtio device after using it, we need a global function to reset the device. Signed-off-by: Thomas Huth Reviewed-by: Eric Farman Reviewed-by: Jared Rossi Tested-by: Jared Rossi --- pc-bios/s390-ccw/virtio.h | 1 + pc-bios/s390-ccw/virtio.c | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/pc-bios/s390-ccw/virtio.h b/pc-bios/s390-ccw/virtio.h index 9faf3986b1..f13fa6f5fe 100644 --- a/pc-bios/s390-ccw/virtio.h +++ b/pc-bios/s390-ccw/virtio.h @@ -274,6 +274,7 @@ void vring_send_buf(VRing *vr, void *p, int len, int fl= ags); int vr_poll(VRing *vr); int vring_wait_reply(void); int virtio_run(VDev *vdev, int vqid, VirtioCmd *cmd); +int virtio_reset(VDev *vdev); int virtio_setup_ccw(VDev *vdev); =20 int virtio_net_init(void *mac_addr); diff --git a/pc-bios/s390-ccw/virtio.c b/pc-bios/s390-ccw/virtio.c index 8b5a370bb3..cd6c99c7e3 100644 --- a/pc-bios/s390-ccw/virtio.c +++ b/pc-bios/s390-ccw/virtio.c @@ -217,6 +217,11 @@ int virtio_run(VDev *vdev, int vqid, VirtioCmd *cmd) return 0; } =20 +int virtio_reset(VDev *vdev) +{ + return run_ccw(vdev, CCW_CMD_VDEV_RESET, NULL, 0, false); +} + int virtio_setup_ccw(VDev *vdev) { int i, cfg_size =3D 0; @@ -235,7 +240,7 @@ int virtio_setup_ccw(VDev *vdev) vdev->config.blk.blk_size =3D 0; /* mark "illegal" - setup started... = */ vdev->guessed_disk_nature =3D VIRTIO_GDN_NONE; =20 - run_ccw(vdev, CCW_CMD_VDEV_RESET, NULL, 0, false); + virtio_reset(vdev); =20 status =3D VIRTIO_CONFIG_S_ACKNOWLEDGE; if (run_ccw(vdev, CCW_CMD_WRITE_STATUS, &status, sizeof(status), false= )) { --=20 2.47.1 From nobody Wed Feb 5 12:48:16 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737028783; cv=none; d=zohomail.com; s=zohoarc; b=lW0nOWUotyM/qDTiyBGwy/cfh0Q3MBlLbTjJygey3iA5VCLy5GW/FoNJIfjdzlfYE/Wek5+NZhg9x83LJkhdKILOEzHHJYSA/u9xboYqpQC5lTzhVGW00KSTLZ3MCe2/T8S1gd0qUJCfkdbPKQZbyziNChB5np/n1SvRdUKR7ZY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737028783; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=N8pQPj2Ng8bQVFSZHI5iNBkf3E2JGfm4YEr4KvyBvRY=; b=OfeXapHnDsJlLTSlZ5nrMi+MjLpF6XJ7F53HIluk9cq1res8e2sUESBGW82zE/o32oKt7nKTnvRB7GAmuMiFeejGk9UdFxFzqENUnc8vC9+d7X/uDJyLdNo6iApnQRnRvnrTN2EIikukbV09MkAJ28l35fHIm/NDq7SzdRj46tg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 173702878376276.67278543114776; Thu, 16 Jan 2025 03:59:43 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYOWb-00027s-Lm; Thu, 16 Jan 2025 06:59:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tYOWP-00025f-GA for qemu-devel@nongnu.org; Thu, 16 Jan 2025 06:58:49 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tYOWN-0002k8-Vk for qemu-devel@nongnu.org; Thu, 16 Jan 2025 06:58:49 -0500 Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-224-Co7NB7yMPE2NPkjNk9VP6A-1; Thu, 16 Jan 2025 06:58:42 -0500 Received: from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 5218719560AA; Thu, 16 Jan 2025 11:58:41 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.192.129]) by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id AC3FE30001BE; Thu, 16 Jan 2025 11:58:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737028727; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=N8pQPj2Ng8bQVFSZHI5iNBkf3E2JGfm4YEr4KvyBvRY=; b=Vy3iHXsN1+ORA0iOKObWu/M2ZJ5dFHwjVDgUcclVGweX9amk01kP3BucBfVqNkth4OdzFN w+VTJzC7RCFdu5KHS2KnCBntN7l63rFN9NBxa9CsjXuHxdUfiSdVjU230kS2E6V8884jfd q1WYfHRto1Hh/N1ipd0Urr2Bp0So5Vk= X-MC-Unique: Co7NB7yMPE2NPkjNk9VP6A-1 X-Mimecast-MFC-AGG-ID: Co7NB7yMPE2NPkjNk9VP6A From: Thomas Huth To: qemu-devel@nongnu.org, Jared Rossi Cc: qemu-s390x@nongnu.org, Christian Borntraeger , Eric Farman Subject: [PATCH 2/3] pc-bios/s390-ccw: Fix boot problem with virtio-net devices Date: Thu, 16 Jan 2025 12:58:25 +0100 Message-ID: <20250116115826.192047-3-thuth@redhat.com> In-Reply-To: <20250116115826.192047-1-thuth@redhat.com> References: <20250116115826.192047-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -39 X-Spam_score: -4.0 X-Spam_bar: ---- X-Spam_report: (-4.0 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.093, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-1.797, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737028786040019000 Content-Type: text/plain; charset="utf-8" When we are trying to boot from virtio-net devices, the s390-ccw bios currently leaves the virtio-net device enabled after using it. That means that the receiving virt queues will continue to happily write incoming network packets into memory. This can corrupt data of the following boot process. For example, if you set up a second guest on a virtual network and create a lot of broadcast traffic there, e.g. with: ping -i 0.02 -s 1400 -b 192.168.1.255 and then you try to boot a guest with two boot devices, a network device first (which should not be bootable) and e.g. a bootable SCSI CD second, then this guest will fail to load the kernel from the CD image: $ qemu-system-s390x -m 2G -nographic -device virtio-scsi-ccw \ -netdev tap,id=3Dnet0 -device virtio-net-ccw,netdev=3Dnet0,bootindex=3D= 1 \ -drive if=3Dnone,file=3Dtest.iso,format=3Draw,id=3Dcd1 \ -device scsi-cd,drive=3Dcd1,bootindex=3D2 LOADPARM=3D[ ] Network boot device detected Network boot starting... Using MAC address: 52:54:00:12:34:56 Requesting information via DHCP: done Using IPv4 address: 192.168.1.76 Using TFTP server: 192.168.1.1 Trying pxelinux.cfg files... TFTP error: ICMP ERROR "port unreachable" Receiving data: 0 KBytes Repeating TFTP read request... TFTP error: ICMP ERROR "port unreachable" Failed to load OS from network. Failed to IPL from this network! LOADPARM=3D[ ] Using virtio-scsi. ! virtio-scsi:setup:inquiry: response VS RESP=3Dff ! ERROR: No suitable device for IPL. Halting... We really have to shut up the virtio-net devices after we're not using it anymore. The easiest way to do this is to simply reset the device, so let's do that now. Signed-off-by: Thomas Huth Reviewed-by: Eric Farman Reviewed-by: Jared Rossi Tested-by: Jared Rossi --- pc-bios/s390-ccw/virtio.h | 1 + pc-bios/s390-ccw/netmain.c | 33 +++++++++++++++++++++++---------- pc-bios/s390-ccw/virtio-net.c | 5 +++++ 3 files changed, 29 insertions(+), 10 deletions(-) diff --git a/pc-bios/s390-ccw/virtio.h b/pc-bios/s390-ccw/virtio.h index f13fa6f5fe..5c5e808a50 100644 --- a/pc-bios/s390-ccw/virtio.h +++ b/pc-bios/s390-ccw/virtio.h @@ -278,5 +278,6 @@ int virtio_reset(VDev *vdev); int virtio_setup_ccw(VDev *vdev); =20 int virtio_net_init(void *mac_addr); +void virtio_net_deinit(void); =20 #endif /* VIRTIO_H */ diff --git a/pc-bios/s390-ccw/netmain.c b/pc-bios/s390-ccw/netmain.c index e46e470db4..335ea9b63e 100644 --- a/pc-bios/s390-ccw/netmain.c +++ b/pc-bios/s390-ccw/netmain.c @@ -153,19 +153,10 @@ static int tftp_load(filename_ip_t *fnip, void *buffe= r, int len) return rc; } =20 -static int net_init(filename_ip_t *fn_ip) +static int net_init_ip(filename_ip_t *fn_ip) { int rc; =20 - memset(fn_ip, 0, sizeof(filename_ip_t)); - - rc =3D virtio_net_init(mac); - if (rc < 0) { - puts("Could not initialize network device"); - return -101; - } - fn_ip->fd =3D rc; - printf(" Using MAC address: %02x:%02x:%02x:%02x:%02x:%02x\n", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); =20 @@ -221,11 +212,33 @@ static int net_init(filename_ip_t *fn_ip) return rc; } =20 +static int net_init(filename_ip_t *fn_ip) +{ + int rc; + + memset(fn_ip, 0, sizeof(filename_ip_t)); + + rc =3D virtio_net_init(mac); + if (rc < 0) { + puts("Could not initialize network device"); + return -101; + } + fn_ip->fd =3D rc; + + rc =3D net_init_ip(fn_ip); + if (rc < 0) { + virtio_net_deinit(); + } + + return rc; +} + static void net_release(filename_ip_t *fn_ip) { if (fn_ip->ip_version =3D=3D 4) { dhcp_send_release(fn_ip->fd); } + virtio_net_deinit(); } =20 /** diff --git a/pc-bios/s390-ccw/virtio-net.c b/pc-bios/s390-ccw/virtio-net.c index 578c89d0c5..301445bf97 100644 --- a/pc-bios/s390-ccw/virtio-net.c +++ b/pc-bios/s390-ccw/virtio-net.c @@ -140,3 +140,8 @@ int recv(int fd, void *buf, int maxlen, int flags) =20 return len; } + +void virtio_net_deinit(void) +{ + virtio_reset(virtio_get_device()); +} --=20 2.47.1 From nobody Wed Feb 5 12:48:16 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737028784; cv=none; d=zohomail.com; s=zohoarc; b=nsWvTvKZYzlyevdOF5qMVOS+kKM7xgcBL7KuaQkG85y7F1LNq7ruFN7Z/Gi77bf6THo/hKZCFGe+8WofuDuci5UOLQD4BvovkQold+xbAaH+i1QFu4KBCViqDJSSlpIjgdzYmE1KRsOfDdG9AOszxdXRXE3V/ZDaBr9kqj2N6RQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737028784; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ZSBIJLajlX3Rlq7ZmtOn1iXD3uSckffeCtqbDWsf4yI=; b=iUThgUuTx8D03jX8sM47EFGbmhFGG1C1NtGBoQrEgnoZWPJ+gy/KtMI9254BvVRFhxcYsEDZaBB1UUxl6chuxAPZHXRkmAPCUZf1nL9b+0h3NW5U6UYffQsXbrCtas9dhxYZgIv6Bju/PgawEVHabNJIVQdctzLTNKDEjC0WtNE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1737028784525653.2460237534383; Thu, 16 Jan 2025 03:59:44 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYOWf-000284-Id; Thu, 16 Jan 2025 06:59:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tYOWV-00027B-3B for qemu-devel@nongnu.org; Thu, 16 Jan 2025 06:58:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tYOWT-0002le-IA for qemu-devel@nongnu.org; Thu, 16 Jan 2025 06:58:54 -0500 Received: from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-677-SllNMfF9MQqZ1KQ0A1SGNw-1; Thu, 16 Jan 2025 06:58:47 -0500 Received: from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 729AB19560BD; Thu, 16 Jan 2025 11:58:46 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.192.129]) by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 6C20F30001BE; Thu, 16 Jan 2025 11:58:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737028732; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ZSBIJLajlX3Rlq7ZmtOn1iXD3uSckffeCtqbDWsf4yI=; b=Wis+0kpibcN3DIiqZLU3vC8OEDL4rrj6yuITmw6CBryBqjDFHEXeeDlankc24o16opxdH3 lbBoJKf2wyuc5/qLc2oMb6891xrY5evWbxWS6KmcyC75IDr1Xw8wUuThItvosVRkPj4dcN pHR41wT83bFXyWxgckEaNw4fnfEfojE= X-MC-Unique: SllNMfF9MQqZ1KQ0A1SGNw-1 X-Mimecast-MFC-AGG-ID: SllNMfF9MQqZ1KQ0A1SGNw From: Thomas Huth To: qemu-devel@nongnu.org, Jared Rossi Cc: qemu-s390x@nongnu.org, Christian Borntraeger , Eric Farman Subject: [PATCH 3/3] pc-bios/s390-ccw/netmain: Fix error messages with regards to the TFTP server Date: Thu, 16 Jan 2025 12:58:26 +0100 Message-ID: <20250116115826.192047-4-thuth@redhat.com> In-Reply-To: <20250116115826.192047-1-thuth@redhat.com> References: <20250116115826.192047-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -21 X-Spam_score: -2.2 X-Spam_bar: -- X-Spam_report: (-2.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.093, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737028785977019000 Content-Type: text/plain; charset="utf-8" The code in net_init_ip() currently bails out early if "rc" is less than 0, so the if-statements that check for negative "rc" codes to print out some specific error messages with regards to the TFTP server are never reached. Move them earlier to bring that dead code back to life. Signed-off-by: Thomas Huth Reviewed-by: Eric Farman Reviewed-by: Jared Rossi Tested-by: Jared Rossi --- pc-bios/s390-ccw/netmain.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/pc-bios/s390-ccw/netmain.c b/pc-bios/s390-ccw/netmain.c index 335ea9b63e..719a547ada 100644 --- a/pc-bios/s390-ccw/netmain.c +++ b/pc-bios/s390-ccw/netmain.c @@ -168,6 +168,14 @@ static int net_init_ip(filename_ip_t *fn_ip) if (fn_ip->ip_version =3D=3D 4) { set_ipv4_address(fn_ip->own_ip); } + } else if (rc =3D=3D -2) { + printf("ARP request to TFTP server (%d.%d.%d.%d) failed\n", + (fn_ip->server_ip >> 24) & 0xFF, (fn_ip->server_ip >> 16) &= 0xFF, + (fn_ip->server_ip >> 8) & 0xFF, fn_ip->server_ip & 0xFF); + return -102; + } else if (rc =3D=3D -4 || rc =3D=3D -3) { + puts("Can't obtain TFTP server IP address"); + return -107; } else { puts("Could not get IP address"); return -101; @@ -183,17 +191,6 @@ static int net_init_ip(filename_ip_t *fn_ip) printf(" Using IPv6 address: %s\n", ip6_str); } =20 - if (rc =3D=3D -2) { - printf("ARP request to TFTP server (%d.%d.%d.%d) failed\n", - (fn_ip->server_ip >> 24) & 0xFF, (fn_ip->server_ip >> 16) &= 0xFF, - (fn_ip->server_ip >> 8) & 0xFF, fn_ip->server_ip & 0xFF); - return -102; - } - if (rc =3D=3D -4 || rc =3D=3D -3) { - puts("Can't obtain TFTP server IP address"); - return -107; - } - printf(" Using TFTP server: "); if (fn_ip->ip_version =3D=3D 4) { printf("%d.%d.%d.%d\n", --=20 2.47.1