From nobody Mon Feb 9 10:42:15 2026 Delivered-To: importer@patchew.org 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; Authentication-Results: mx.zohomail.com; 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=fail(p=none dis=none) header.from=de.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1583854639; cv=none; d=zohomail.com; s=zohoarc; b=dhHamU26iC5EslKjyKPqqRd3rneopNLm3L/2o9OfgtcVjDkSdDn1L/4ojkSVhIsPcoHU/KYP5t5obVoT/hGwt91/IVnbOPIdQoqTGY2jSbucPkUtXwQfxbHhPlmmWM43qE1yVxYX8v2sF2qgaAuNlnYdzClMHaqUppSh7y/UpEo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1583854639; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=goO/s6TuQ9cjJYXun6sDbJDgq2rE1gsWr2T7f6dGg9E=; b=IBjA4lS+Ia1tZ0mQmv15DAoydI5eyJqdphPavSNCELhxcr98wtSmqOkrWsqZEsB8u9OV2WzoN/VQ9oRM3U465ZGc1gLQVQePNEY80qOO9Gy+CqwfDlV95YKwVVyDFiIya8EoCvCNfuOMCRCMdh2X3nVzmd1L1Hc/xSMRvj+y+p0= ARC-Authentication-Results: i=1; mx.zohomail.com; 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=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1583854639112955.5882254332458; Tue, 10 Mar 2020 08:37:19 -0700 (PDT) Received: from localhost ([::1]:35494 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBghI-00070w-Sz for importer@patchew.org; Tue, 10 Mar 2020 11:21:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54628) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBgW7-0005vH-Bo for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:10:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jBgW5-0003rb-JL for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:09:59 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:39768) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1jBgW5-0003pR-Aq for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:09:57 -0400 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 02AExhot112515 for ; Tue, 10 Mar 2020 11:09:56 -0400 Received: from e06smtp01.uk.ibm.com (e06smtp01.uk.ibm.com [195.75.94.97]) by mx0a-001b2d01.pphosted.com with ESMTP id 2ym8n8qybn-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 10 Mar 2020 11:09:55 -0400 Received: from localhost by e06smtp01.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 10 Mar 2020 15:09:53 -0000 Received: from b06cxnps4074.portsmouth.uk.ibm.com (9.149.109.196) by e06smtp01.uk.ibm.com (192.168.101.131) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Tue, 10 Mar 2020 15:09:50 -0000 Received: from d06av21.portsmouth.uk.ibm.com (d06av21.portsmouth.uk.ibm.com [9.149.105.232]) by b06cxnps4074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 02AF9n5349610980 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Mar 2020 15:09:49 GMT Received: from d06av21.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F2E3F5204E; Tue, 10 Mar 2020 15:09:48 +0000 (GMT) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by d06av21.portsmouth.uk.ibm.com (Postfix) with ESMTPS id E253052052; Tue, 10 Mar 2020 15:09:48 +0000 (GMT) Received: by tuxmaker.boeblingen.de.ibm.com (Postfix, from userid 25651) id A7756E0249; Tue, 10 Mar 2020 16:09:48 +0100 (CET) From: Christian Borntraeger To: Peter Maydell Subject: [PULL 1/4] pc-bios: s390x: Save iplb location in lowcore Date: Tue, 10 Mar 2020 16:09:44 +0100 X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200310150947.3510824-1-borntraeger@de.ibm.com> References: <20200310150947.3510824-1-borntraeger@de.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 x-cbid: 20031015-4275-0000-0000-000003AA4267 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 20031015-4276-0000-0000-000038BF5C0F Message-Id: <20200310150947.3510824-2-borntraeger@de.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.572 definitions=2020-03-10_08:2020-03-10, 2020-03-10 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 adultscore=0 mlxlogscore=701 mlxscore=0 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 clxscore=1015 impostorscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2001150001 definitions=main-2003100099 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-Received-From: 148.163.156.1 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , Janosch Frank , David Hildenbrand , Cornelia Huck , qemu-devel , Halil Pasic , Christian Borntraeger , qemu-s390x , Marc Hartmayer , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" From: Janosch Frank The POP states that for a list directed IPL the IPLB is stored into memory by the machine loader and its address is stored at offset 0x14 of the lowcore. ZIPL currently uses the address in offset 0x14 to access the IPLB and acquire flags about secure boot. If the IPLB address points into memory which has an unsupported mix of flags set, ZIPL will panic instead of booting the OS. As the lowcore can have quite a high entropy for a guest that did drop out of protected mode (i.e. rebooted) we encountered the ZIPL panic quite often. Signed-off-by: Janosch Frank Tested-by: Marc Hartmayer Message-Id: <20200304114231.23493-19-frankja@linux.ibm.com> Reviewed-by: Christian Borntraeger Reviewed-by: David Hildenbrand Signed-off-by: Christian Borntraeger --- pc-bios/s390-ccw/jump2ipl.c | 1 + pc-bios/s390-ccw/main.c | 8 +++++++- pc-bios/s390-ccw/netmain.c | 1 + pc-bios/s390-ccw/s390-arch.h | 10 ++++++++-- pc-bios/s390-ccw/s390-ccw.h | 1 + 5 files changed, 18 insertions(+), 3 deletions(-) diff --git a/pc-bios/s390-ccw/jump2ipl.c b/pc-bios/s390-ccw/jump2ipl.c index da13c43cc047..4eba2510b045 100644 --- a/pc-bios/s390-ccw/jump2ipl.c +++ b/pc-bios/s390-ccw/jump2ipl.c @@ -35,6 +35,7 @@ void jump_to_IPL_code(uint64_t address) { /* store the subsystem information _after_ the bootmap was loaded */ write_subsystem_identification(); + write_iplb_location(); =20 /* prevent unknown IPL types in the guest */ if (iplb.pbt =3D=3D S390_IPL_TYPE_QEMU_SCSI) { diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c index a21b38628075..4e65b411e1d8 100644 --- a/pc-bios/s390-ccw/main.c +++ b/pc-bios/s390-ccw/main.c @@ -9,6 +9,7 @@ */ =20 #include "libc.h" +#include "helper.h" #include "s390-arch.h" #include "s390-ccw.h" #include "cio.h" @@ -22,7 +23,7 @@ QemuIplParameters qipl; IplParameterBlock iplb __attribute__((__aligned__(PAGE_SIZE))); static bool have_iplb; static uint16_t cutype; -LowCore const *lowcore; /* Yes, this *is* a pointer to address 0 */ +LowCore *lowcore; /* Yes, this *is* a pointer to address 0 */ =20 #define LOADPARM_PROMPT "PROMPT " #define LOADPARM_EMPTY " " @@ -42,6 +43,11 @@ void write_subsystem_identification(void) *zeroes =3D 0; } =20 +void write_iplb_location(void) +{ + lowcore->ptr_iplb =3D ptr2u32(&iplb); +} + void panic(const char *string) { sclp_print(string); diff --git a/pc-bios/s390-ccw/netmain.c b/pc-bios/s390-ccw/netmain.c index f2dcc01e2725..309ffa30d992 100644 --- a/pc-bios/s390-ccw/netmain.c +++ b/pc-bios/s390-ccw/netmain.c @@ -40,6 +40,7 @@ #define DEFAULT_TFTP_RETRIES 20 =20 extern char _start[]; +void write_iplb_location(void) {} =20 #define KERNEL_ADDR ((void *)0L) #define KERNEL_MAX_SIZE ((long)_start) diff --git a/pc-bios/s390-ccw/s390-arch.h b/pc-bios/s390-ccw/s390-arch.h index 504fc7c2f098..5f36361c0223 100644 --- a/pc-bios/s390-ccw/s390-arch.h +++ b/pc-bios/s390-ccw/s390-arch.h @@ -36,7 +36,13 @@ typedef struct LowCore { /* prefix area: defined by architecture */ PSWLegacy ipl_psw; /* 0x000 */ uint32_t ccw1[2]; /* 0x008 */ - uint32_t ccw2[2]; /* 0x010 */ + union { + uint32_t ccw2[2]; /* 0x010 */ + struct { + uint32_t reserved10; + uint32_t ptr_iplb; + }; + }; uint8_t pad1[0x80 - 0x18]; /* 0x018 */ uint32_t ext_params; /* 0x080 */ uint16_t cpu_addr; /* 0x084 */ @@ -85,7 +91,7 @@ typedef struct LowCore { PSW io_new_psw; /* 0x1f0 */ } __attribute__((packed, aligned(8192))) LowCore; =20 -extern LowCore const *lowcore; +extern LowCore *lowcore; =20 static inline void set_prefix(uint32_t address) { diff --git a/pc-bios/s390-ccw/s390-ccw.h b/pc-bios/s390-ccw/s390-ccw.h index 11bce7d73c85..21f27e79906e 100644 --- a/pc-bios/s390-ccw/s390-ccw.h +++ b/pc-bios/s390-ccw/s390-ccw.h @@ -57,6 +57,7 @@ void consume_io_int(void); /* main.c */ void panic(const char *string); void write_subsystem_identification(void); +void write_iplb_location(void); extern char stack[PAGE_SIZE * 8] __attribute__((__aligned__(PAGE_SIZE))); unsigned int get_loadparm_index(void); =20 --=20 2.24.1 From nobody Mon Feb 9 10:42:15 2026 Delivered-To: importer@patchew.org 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; Authentication-Results: mx.zohomail.com; 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=fail(p=none dis=none) header.from=de.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1583854742; cv=none; d=zohomail.com; s=zohoarc; b=k6yaxySSy7ymK8KMxcvDg6hqqYPmAKtcxMGLj31YweWzVOJ8mvpPR6VtrX6NkdVvAl6Enkp/WyrqMuNXgaOnZ2NjxQdn+1EapMNLQ/C8G/2P0Mvl+QTUv0ap2R5P4XVlRrPLlpoPG8Z5aX20YwtDgTHhg8C9z5I6i65TxiMUmu4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1583854742; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=F2IREvf/j8MoQZlm3HasmX7SgB80vXedPQUYaKkf6EM=; b=T4S9IEYVVSItXWNv7i9HfN4DF9eH2Qt/7p0iOHuhOyhqmYUmRkn9uslPWlD9uhPa0oEoV2JeJyw/KTJX5skY9lGkSzjMO0MsXSAGrD4hb+A/Zvp4M+lyE6t3TY/wyEN+Xu50EIjD2y1Uuh2oCBAxS+9iQjZEiPxbAM9TlLwI/4w= ARC-Authentication-Results: i=1; mx.zohomail.com; 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=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1583854742335833.4317022893575; Tue, 10 Mar 2020 08:39:02 -0700 (PDT) Received: from localhost ([::1]:35566 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBgkQ-0003pM-CC for importer@patchew.org; Tue, 10 Mar 2020 11:24:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54746) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBgWA-00060c-B2 for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:10:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jBgW7-0003vR-Ae for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:10:02 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:32194) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1jBgW7-0003v5-5L for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:09:59 -0400 Received: from pps.filterd (m0127361.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 02AF3G8e195368 for ; Tue, 10 Mar 2020 11:09:58 -0400 Received: from e06smtp01.uk.ibm.com (e06smtp01.uk.ibm.com [195.75.94.97]) by mx0a-001b2d01.pphosted.com with ESMTP id 2ym7ac2591-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 10 Mar 2020 11:09:57 -0400 Received: from localhost by e06smtp01.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 10 Mar 2020 15:09:53 -0000 Received: from b06avi18878370.portsmouth.uk.ibm.com (9.149.26.194) by e06smtp01.uk.ibm.com (192.168.101.131) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Tue, 10 Mar 2020 15:09:50 -0000 Received: from d06av25.portsmouth.uk.ibm.com (d06av25.portsmouth.uk.ibm.com [9.149.105.61]) by b06avi18878370.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 02AF9nis46530978 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Mar 2020 15:09:49 GMT Received: from d06av25.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5FD9111C04A; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: from d06av25.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 431AA11C052; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by d06av25.portsmouth.uk.ibm.com (Postfix) with ESMTPS; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: by tuxmaker.boeblingen.de.ibm.com (Postfix, from userid 25651) id 040DBE01C3; Tue, 10 Mar 2020 16:09:49 +0100 (CET) From: Christian Borntraeger To: Peter Maydell Subject: [PULL 2/4] s390x/bios: rebuild s390-ccw.img Date: Tue, 10 Mar 2020 16:09:45 +0100 X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200310150947.3510824-1-borntraeger@de.ibm.com> References: <20200310150947.3510824-1-borntraeger@de.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 x-cbid: 20031015-4275-0000-0000-000003AA4268 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 20031015-4276-0000-0000-000038BF5C10 Message-Id: <20200310150947.3510824-3-borntraeger@de.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.572 definitions=2020-03-10_08:2020-03-10, 2020-03-10 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 mlxlogscore=682 malwarescore=0 bulkscore=0 spamscore=0 suspectscore=1 adultscore=0 impostorscore=0 mlxscore=0 phishscore=0 priorityscore=1501 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2001150001 definitions=main-2003100099 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-Received-From: 148.163.158.5 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , David Hildenbrand , Cornelia Huck , qemu-devel , Halil Pasic , Christian Borntraeger , qemu-s390x , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" contains 98df96d4edae ("pc-bios: s390x: Save iplb location in lowcore") Signed-off-by: Christian Borntraeger --- pc-bios/s390-ccw.img | Bin 42608 -> 42608 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/pc-bios/s390-ccw.img b/pc-bios/s390-ccw.img index 91cdee4436ad828fe6cb664cfac270a21f2bde70..b9da9d8ecb10faa484a9a524a20= 2f1f69cb59ad6 100644 GIT binary patch delta 8340 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 (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1583853078415153.7778017634629; Tue, 10 Mar 2020 08:11:18 -0700 (PDT) Received: from localhost ([::1]:35194 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBgXN-0007kO-Ga for importer@patchew.org; Tue, 10 Mar 2020 11:11:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54671) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBgW8-0005wi-AR for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:10:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jBgW7-0003vD-2M for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:10:00 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:65182) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1jBgW6-0003te-QC for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:09:58 -0400 Received: from pps.filterd (m0187473.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 02AF1aaJ126027 for ; Tue, 10 Mar 2020 11:09:58 -0400 Received: from e06smtp02.uk.ibm.com (e06smtp02.uk.ibm.com [195.75.94.98]) by mx0a-001b2d01.pphosted.com with ESMTP id 2ym852247b-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 10 Mar 2020 11:09:57 -0400 Received: from localhost by e06smtp02.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 10 Mar 2020 15:09:55 -0000 Received: from b06avi18626390.portsmouth.uk.ibm.com (9.149.26.192) by e06smtp02.uk.ibm.com (192.168.101.132) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Tue, 10 Mar 2020 15:09:51 -0000 Received: from b06wcsmtp001.portsmouth.uk.ibm.com (b06wcsmtp001.portsmouth.uk.ibm.com [9.149.105.160]) by b06avi18626390.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 02AF8oNW48890240 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Mar 2020 15:08:50 GMT Received: from b06wcsmtp001.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A38DEA406F; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: from b06wcsmtp001.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 919D5A406E; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by b06wcsmtp001.portsmouth.uk.ibm.com (Postfix) with ESMTPS; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: by tuxmaker.boeblingen.de.ibm.com (Postfix, from userid 25651) id 54687E0249; Tue, 10 Mar 2020 16:09:49 +0100 (CET) From: Christian Borntraeger To: Peter Maydell Subject: [PULL 3/4] s390/ipl: sync back loadparm Date: Tue, 10 Mar 2020 16:09:46 +0100 X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200310150947.3510824-1-borntraeger@de.ibm.com> References: <20200310150947.3510824-1-borntraeger@de.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 x-cbid: 20031015-0008-0000-0000-0000035B3407 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 20031015-0009-0000-0000-00004A7C778F Message-Id: <20200310150947.3510824-4-borntraeger@de.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.572 definitions=2020-03-10_08:2020-03-10, 2020-03-10 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 bulkscore=0 lowpriorityscore=0 clxscore=1015 malwarescore=0 phishscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 suspectscore=0 priorityscore=1501 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2001150001 definitions=main-2003100099 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-Received-From: 148.163.156.1 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , Janosch Frank , David Hildenbrand , Cornelia Huck , qemu-devel , Halil Pasic , Christian Borntraeger , qemu-s390x , Marc Hartmayer , Viktor Mihajlovski , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" From: Halil Pasic We expose loadparm as a r/w machine property, but if loadparm is set by the guest via DIAG 308, we don't update the property. Having a disconnect between the guest view and the QEMU property is not nice in itself, but things get even worse for SCSI, where under certain circumstances (see 789b5a401b "s390: Ensure IPL from SCSI works as expected" for details) we call s390_gen_initial_iplb() on resets effectively overwriting the guest/user supplied loadparm with the stale value. Signed-off-by: Halil Pasic Fixes: 7104bae9de ("hw/s390x: provide loadparm property for the machine") Reported-by: Marc Hartmayer Reviewed-by: Janosch Frank Reviewed-by: Viktor Mihajlovski Tested-by: Marc Hartmayer Reviewed-by: David Hildenbrand Message-Id: <20200309133223.100491-1-pasic@linux.ibm.com> [borntraeger@de.ibm.com: use reverse xmas tree] Signed-off-by: Christian Borntraeger --- hw/s390x/ipl.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index 9c1ecd423c23..b81942e1e6f9 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -538,6 +538,30 @@ static bool is_virtio_scsi_device(IplParameterBlock *i= plb) return is_virtio_ccw_device_of_type(iplb, VIRTIO_ID_SCSI); } =20 +static void update_machine_ipl_properties(IplParameterBlock *iplb) +{ + Object *machine =3D qdev_get_machine(); + Error *err =3D NULL; + + /* Sync loadparm */ + if (iplb->flags & DIAG308_FLAGS_LP_VALID) { + uint8_t *ebcdic_loadparm =3D iplb->loadparm; + char ascii_loadparm[8]; + int i; + + for (i =3D 0; i < 8 && ebcdic_loadparm[i]; i++) { + ascii_loadparm[i] =3D ebcdic2ascii[(uint8_t) ebcdic_loadparm[i= ]]; + } + ascii_loadparm[i] =3D 0; + object_property_set_str(machine, ascii_loadparm, "loadparm", &err); + } else { + object_property_set_str(machine, "", "loadparm", &err); + } + if (err) { + warn_report_err(err); + } +} + void s390_ipl_update_diag308(IplParameterBlock *iplb) { S390IPLState *ipl =3D get_ipl_device(); @@ -545,6 +569,7 @@ void s390_ipl_update_diag308(IplParameterBlock *iplb) ipl->iplb =3D *iplb; ipl->iplb_valid =3D true; ipl->netboot =3D is_virtio_net_device(iplb); + update_machine_ipl_properties(iplb); } =20 IplParameterBlock *s390_ipl_get_iplb(void) --=20 2.24.1 From nobody Mon Feb 9 10:42:15 2026 Delivered-To: importer@patchew.org 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; Authentication-Results: mx.zohomail.com; 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=fail(p=none dis=none) header.from=de.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1583854716; cv=none; d=zohomail.com; s=zohoarc; b=TzserVzlt+X+BHZOJxpgrfgP7Jzlo2t7leqs+/bVPJ6Klio61kLZLwHDsUxYmhm84JS7BhSEkoXrw6AnBwWWPLlBTb86xepsN8pkaA/OHuTltnejeP0gTPnVDOUpJ7ngpMvsIcbjHinbCtZcpblnP3OOrT0MfUXqmPU0KzoPKSs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1583854716; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Pn8CEZtqGve2mZrZalPIrRKjz8kCEb7g5CVZTIMzT/o=; b=fJRXNp2lpiZpuXxsfMVi4dAyJt71p8cpQRe+7fS8CvwTo7BZzi2uLTmXn8npNT+rI/KzITlmeFlwYP5Z8/fgRAQIlBmHeSgjLeir5zp0bU5xBgXf5Nj5lRDjrgrFCsyIlYUdilquE00XVara4jLhjzU7qsGSLkYe6rMm0AgHYsE= ARC-Authentication-Results: i=1; mx.zohomail.com; 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=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1583854716519853.3225913947235; Tue, 10 Mar 2020 08:38:36 -0700 (PDT) Received: from localhost ([::1]:35538 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBgj5-0001PQ-U8 for importer@patchew.org; Tue, 10 Mar 2020 11:23:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54768) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBgWA-00061d-P9 for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:10:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jBgW5-0003rU-IK for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:10:02 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:60474) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1jBgW5-0003pS-AL for qemu-devel@nongnu.org; Tue, 10 Mar 2020 11:09:57 -0400 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 02AExQqO110660 for ; Tue, 10 Mar 2020 11:09:56 -0400 Received: from e06smtp01.uk.ibm.com (e06smtp01.uk.ibm.com [195.75.94.97]) by mx0a-001b2d01.pphosted.com with ESMTP id 2ym8n8qybs-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 10 Mar 2020 11:09:56 -0400 Received: from localhost by e06smtp01.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 10 Mar 2020 15:09:53 -0000 Received: from b06cxnps4074.portsmouth.uk.ibm.com (9.149.109.196) by e06smtp01.uk.ibm.com (192.168.101.131) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Tue, 10 Mar 2020 15:09:51 -0000 Received: from d06av23.portsmouth.uk.ibm.com (d06av23.portsmouth.uk.ibm.com [9.149.105.59]) by b06cxnps4074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 02AF9og047382672 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Mar 2020 15:09:50 GMT Received: from d06av23.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F32E6A4040; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: from d06av23.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E15A5A4051; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by d06av23.portsmouth.uk.ibm.com (Postfix) with ESMTPS; Tue, 10 Mar 2020 15:09:49 +0000 (GMT) Received: by tuxmaker.boeblingen.de.ibm.com (Postfix, from userid 25651) id A4FBCE01C3; Tue, 10 Mar 2020 16:09:49 +0100 (CET) From: Christian Borntraeger To: Peter Maydell Subject: [PULL 4/4] s390x: ipl: Consolidate iplb validity check into one function Date: Tue, 10 Mar 2020 16:09:47 +0100 X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200310150947.3510824-1-borntraeger@de.ibm.com> References: <20200310150947.3510824-1-borntraeger@de.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 x-cbid: 20031015-4275-0000-0000-000003AA4269 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 20031015-4276-0000-0000-000038BF5C11 Message-Id: <20200310150947.3510824-5-borntraeger@de.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.572 definitions=2020-03-10_08:2020-03-10, 2020-03-10 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 adultscore=0 mlxlogscore=999 mlxscore=0 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 clxscore=1015 impostorscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2001150001 definitions=main-2003100099 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-Received-From: 148.163.156.1 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , Janosch Frank , David Hildenbrand , Cornelia Huck , qemu-devel , Halil Pasic , Christian Borntraeger , qemu-s390x , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" From: Janosch Frank It's nicer to just call one function than calling a function for each possible iplb type. Signed-off-by: Janosch Frank Reviewed-by: David Hildenbrand Message-Id: <20200310090950.61172-1-frankja@linux.ibm.com> Reviewed-by: Christian Borntraeger Signed-off-by: Christian Borntraeger --- hw/s390x/ipl.h | 18 +++++++++--------- target/s390x/diag.c | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/hw/s390x/ipl.h b/hw/s390x/ipl.h index d4813105db33..3e44abe1c651 100644 --- a/hw/s390x/ipl.h +++ b/hw/s390x/ipl.h @@ -173,16 +173,16 @@ static inline bool iplb_valid_len(IplParameterBlock *= iplb) return be32_to_cpu(iplb->len) <=3D sizeof(IplParameterBlock); } =20 -static inline bool iplb_valid_ccw(IplParameterBlock *iplb) +static inline bool iplb_valid(IplParameterBlock *iplb) { - return be32_to_cpu(iplb->len) >=3D S390_IPLB_MIN_CCW_LEN && - iplb->pbt =3D=3D S390_IPL_TYPE_CCW; -} - -static inline bool iplb_valid_fcp(IplParameterBlock *iplb) -{ - return be32_to_cpu(iplb->len) >=3D S390_IPLB_MIN_FCP_LEN && - iplb->pbt =3D=3D S390_IPL_TYPE_FCP; + switch (iplb->pbt) { + case S390_IPL_TYPE_FCP: + return be32_to_cpu(iplb->len) >=3D S390_IPLB_MIN_FCP_LEN; + case S390_IPL_TYPE_CCW: + return be32_to_cpu(iplb->len) >=3D S390_IPLB_MIN_CCW_LEN; + default: + return false; + } } =20 #endif diff --git a/target/s390x/diag.c b/target/s390x/diag.c index b5aec06d6bef..54e5670b3fd6 100644 --- a/target/s390x/diag.c +++ b/target/s390x/diag.c @@ -117,7 +117,7 @@ void handle_diag_308(CPUS390XState *env, uint64_t r1, u= int64_t r3, uintptr_t ra) =20 cpu_physical_memory_read(addr, iplb, be32_to_cpu(iplb->len)); =20 - if (!iplb_valid_ccw(iplb) && !iplb_valid_fcp(iplb)) { + if (!iplb_valid(iplb)) { env->regs[r1 + 1] =3D DIAG_308_RC_INVALID; goto out; } --=20 2.24.1