From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) client-ip=209.85.221.42; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f42.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1615764563; cv=none; d=zohomail.com; s=zohoarc; b=XqEPLfc6SLALx7uujhW6XMRJABNNr31drb3bqi7W3nlvD0pD4GNX5HgPjK/Om+6m6f0JH35eXN092Fb5xC8ehGIFraolzZHPa+7p5yrdM+MuqIn+b1CYS8tOM7WeSEgClbIvTPMrqk1Ap0uTiEVaU24FQ6NvtKpP+HdYqLgTf7U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764563; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=KfOJpmdDqxdEOJJRaB9vA8l3aZbZ2PjO+Vki+heinaM=; b=J3UzUbCq7R56yuGm7h3c9JapHH5wqNh6tMAVB9zq0fEVbHj9NHzQTytbtYwDSCzvVTTCY8pAYWm0XCeCcPYZd82HLx9s8RbOgzG9BGmSh3es9aPW6wiKWlJRFS9d7xqKsjA8Hi6ya5u4VRJUWpQhnl2ZNuQR1gveGSkGKwRsyBM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) by mx.zohomail.com with SMTPS id 1615764563122256.06521013667145; Sun, 14 Mar 2021 16:29:23 -0700 (PDT) Received: by mail-wr1-f42.google.com with SMTP id a18so7764191wrc.13 for ; Sun, 14 Mar 2021 16:29:22 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id l9sm10092495wmq.2.2021.03.14.16.29.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=KfOJpmdDqxdEOJJRaB9vA8l3aZbZ2PjO+Vki+heinaM=; b=cF2Q+wArsHomAAkgDbsDz9gbCl59YbsgrIsOixISLjE26TcbS4kHvq/ZDezbZO50CW J29szc9EBbgRPi6I2uQq762g5fWNoFDKtIgp93ICZxcR5hS0qxOgrPTdQwU2wJXzVXtY 2P7HssfMkTPFC8FK7gU6TzHn+8o7ULGqp+ZYpx9jvS04MKDS9hVTGtVZYZpZyhaEkD6i 2nFkcuoVMsaDCx6o6CDKEm+SGqR0nIHZnUwhSpEtOMBQ/1x0PKyxtbuoYV/ddUjfptqk HokjENbBJTL+j48FGYOBBmaug4jRaCJ1ZHtP59n1KwRbpq9T49b9VUNrgVzWfbT2JEUJ 5unA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=KfOJpmdDqxdEOJJRaB9vA8l3aZbZ2PjO+Vki+heinaM=; b=A2ia1NgFEkdZM4JDJNO/ZDIBTWKfqOJp5+GFLLdYhC1xBfNaBKzOBveTQVrd+hztCv kKI0CT15kAyPidi93NJYbkynDRumlt0pNNmczZEyieGFR4VcBqEhLHw+n6eJtPrkjJ7k slf/qDX+zvZwffS2z55badxdsKXO5czU/qPjC49u50XMKUZdVKKHSi3enBVC8dJqJjAc GGMmYtfLOLGggACzLDQQ+36S2EaSKcwzgoq6S9vI241sb0dHJ7M6j3GqrmQ6oO5SnS+N fNWAk+Ypr9nS27IheTHtiH5S/wcocS/PAOXZD/h8ZkS7C+IqDzMnprDxuTp7nCXAaeuX VCjA== X-Gm-Message-State: AOAM532/I8Bb/Q04xoFoNQszdtAe3RsoXeJ0/CqPTrheMlRedfReCXiX FShBMzHdFJmDoMQO2WMjWxAtGARNo5s9+Q== X-Google-Smtp-Source: ABdhPJw7ANf/PufSHWo/b5rKEhcHlAfaKXj7Tndpw5ogdZa+c3xIBrXP5x/2OLhhMuveZeQ1u2G33Q== X-Received: by 2002:a5d:6205:: with SMTP id y5mr24456623wru.238.1615764561426; Sun, 14 Mar 2021 16:29:21 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [RFC PATCH 1/8] softmmu/physmem: Rename io_mem_unassigned -> unassigned_mr Date: Mon, 15 Mar 2021 00:29:06 +0100 Message-Id: <20210314232913.2607360-2-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) 'io_mem_unassigned' memory region is not specific to I/O, rename it using a more generic 'unassigned_mr', matching the '_mr' suffix pattern used in various places in the code base. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- softmmu/physmem.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/softmmu/physmem.c b/softmmu/physmem.c index 7e8b0fab89a..115679f8d1a 100644 --- a/softmmu/physmem.c +++ b/softmmu/physmem.c @@ -93,7 +93,7 @@ static MemoryRegion *system_io; AddressSpace address_space_io; AddressSpace address_space_memory; =20 -static MemoryRegion io_mem_unassigned; +static MemoryRegion unassigned_mr; =20 typedef struct PhysPageEntry PhysPageEntry; =20 @@ -458,7 +458,7 @@ static MemoryRegionSection address_space_translate_iomm= u(IOMMUMemoryRegion *iomm return *section; =20 unassigned: - return (MemoryRegionSection) { .mr =3D &io_mem_unassigned }; + return (MemoryRegionSection) { .mr =3D &unassigned_mr }; } =20 /** @@ -534,7 +534,7 @@ IOMMUTLBEntry address_space_get_iotlb_entry(AddressSpac= e *as, hwaddr addr, attrs); =20 /* Illegal translation */ - if (section.mr =3D=3D &io_mem_unassigned) { + if (section.mr =3D=3D &unassigned_mr) { goto iotlb_fail; } =20 @@ -1212,7 +1212,7 @@ static void register_subpage(FlatView *fv, MemoryRegi= onSection *section) }; hwaddr start, end; =20 - assert(existing->mr->subpage || existing->mr =3D=3D &io_mem_unassigned= ); + assert(existing->mr->subpage || existing->mr =3D=3D &unassigned_mr); =20 if (!(existing->mr->subpage)) { subpage =3D subpage_init(fv, base); @@ -2573,7 +2573,7 @@ MemoryRegionSection *iotlb_to_section(CPUState *cpu, =20 static void io_mem_init(void) { - memory_region_init_io(&io_mem_unassigned, NULL, &unassigned_mem_ops, N= ULL, + memory_region_init_io(&unassigned_mr, NULL, &unassigned_mem_ops, NULL, NULL, UINT64_MAX); } =20 @@ -2582,7 +2582,7 @@ AddressSpaceDispatch *address_space_dispatch_new(Flat= View *fv) AddressSpaceDispatch *d =3D g_new0(AddressSpaceDispatch, 1); uint16_t n; =20 - n =3D dummy_section(&d->map, fv, &io_mem_unassigned); + n =3D dummy_section(&d->map, fv, &unassigned_mr); assert(n =3D=3D PHYS_SECTION_UNASSIGNED); =20 d->phys_map =3D (PhysPageEntry) { .ptr =3D PHYS_MAP_NODE_NIL, .skip = =3D 1 }; --=20 2.26.2 From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1615764609; cv=none; d=zohomail.com; s=zohoarc; b=OqAXrW8WW/FGR2Su1TDYV2hdy6cwxh5++E5KmPYLkOgAcy5X9RSTS+A4xLSXPwo/DO9Ca9bhluKyMXo5TIwOGnfLirZSVT7qI+2UKLxFNENUSPV+U/yW/lC3Wv/ouBQe5g1CmFkgqPuB6p41Afayt/cQVly7o1AwX6pWdbgcUH8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764609; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=h5PCnHeuw663l7VaVIolY9Ne6WKSedqc+Qdhk8tXZxI=; b=J0VXwaOvmsXYd8fAgTcrYoh4RCu4yrdQMh9mrP1/A7GYpfUTcF6minZrHoDJFdolxm7TizZKz2E1d0wKxe3ZJR9HzTbRl3OSIZvEwWC+oW0cTnkFEEcpspO1CNuRhZKjlJGPJa3pBNoT9YZJ9eDFXt/JnGjuUFJT2r009L9oaIc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1615764609207398.96951191871585; Sun, 14 Mar 2021 16:30:09 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.97815.185558 (Exim 4.92) (envelope-from ) id 1lLaAt-0005Le-K9; Sun, 14 Mar 2021 23:29:31 +0000 Received: by outflank-mailman (output) from mailman id 97815.185558; Sun, 14 Mar 2021 23:29:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1lLaAt-0005LX-Gn; Sun, 14 Mar 2021 23:29:31 +0000 Received: by outflank-mailman (input) for mailman id 97815; Sun, 14 Mar 2021 23:29:29 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1lLaAr-0005LS-Rl for xen-devel@lists.xenproject.org; Sun, 14 Mar 2021 23:29:29 +0000 Received: from mail-wr1-x42a.google.com (unknown [2a00:1450:4864:20::42a]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 7fd255a2-82f3-47cd-b7e7-1e47b8b0cff3; Sun, 14 Mar 2021 23:29:28 +0000 (UTC) Received: by mail-wr1-x42a.google.com with SMTP id u16so7802001wrt.1 for ; Sun, 14 Mar 2021 16:29:27 -0700 (PDT) Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id a8sm10533573wmm.46.2021.03.14.16.29.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:26 -0700 (PDT) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list X-Inumbo-ID: 7fd255a2-82f3-47cd-b7e7-1e47b8b0cff3 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=h5PCnHeuw663l7VaVIolY9Ne6WKSedqc+Qdhk8tXZxI=; b=ar+Fg8rz24oRhbuiwycxqds9OHpHo9VC298sJTVByLXIEO/y3tU2tfJ4WmjMtUal4M ZL+WKKcS3MIUxV4a4/O28CkNDvTihLtaN72s31DBYsOIfhfUXcn7u8fQzdGdwzjgHmY6 eti2xAwInvH4bdixt4DSmT/jJDH2XSy5ZkjBz+Ws1gu5f/0FRfyXh5NrJbquYP/n3AUb XVbgGjLFVnFY2iuY3egv2lPv0dptei+bZIHX3aCmlNm8vhzNieeRxUvlkqeqg/AjuCf4 CVi3J5MsdNZ6aqTQF3NoZZKAi5N2VgSpzmVw51iNI+Hcnyk7k2/9ml69U2I55aQVHiz+ UixQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=h5PCnHeuw663l7VaVIolY9Ne6WKSedqc+Qdhk8tXZxI=; b=oMD1sFz6aWVfvnmh3YtRZg/YfiKw1sM6MLfGysBP7aJwadCEQXKH7k11nr9FlO5sk/ 12kEh/q++kvCpIeMq3gStReTsPXMfXFpqJhtXDMzgaDDXlHFYGsohs4BeUtumzlobfXe Xmkh0dbxplnun/TVMYpFpo3WO2YYuv9m4ZzvXkznBuzqpLKOOeLlWO6e5d10owby3XiP 7AYlUA7hwqKwM3g/wSIe0N92UfiqV5rymlEH4TLN+k0Ofe2PJJEZ9C3MyCgXpZxm8h1Q LKirJFwnQ3PFMgix9pE9S5yH/GXWQMbK5X+UpxugGAVaeT6Ca6DPORnylv8Hx5ZDicOd PZlw== X-Gm-Message-State: AOAM53235w4TlS4/X0ny3u3hc+aNUY4JEW3BnkU2VrPvE3E4Yk4hquUy hQPBwX4Fd14pS0tK5tBPybQ= X-Google-Smtp-Source: ABdhPJzIEwujHVQs/5HxbmUBLWEk5042vfAG0vNbusCoXJvUxDP6j8s8K0Uh5L5pj5Ks/wAVIwiXAQ== X-Received: by 2002:adf:e412:: with SMTP id g18mr25206215wrm.159.1615764567139; Sun, 14 Mar 2021 16:29:27 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Stabellini , Anthony Perard , Paul Durrant , "Michael S. Tsirkin" , Marcel Apfelbaum , Eduardo Habkost , Markus Armbruster , "Dr. David Alan Gilbert" , Thomas Huth , Laurent Vivier , Alexander Bulekov , Bandan Das , Stefan Hajnoczi , xen-devel@lists.xenproject.org (open list:X86 Xen CPUs) Subject: [RFC PATCH 2/8] exec: Extract CPU I/O instructions to "cpu-io.h" Date: Mon, 15 Mar 2021 00:29:07 +0100 Message-Id: <20210314232913.2607360-3-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Not all architectures use an I/O bus. Extract the CPU I/O instruction helpers into a specific unit named cpu-io.c (and its equivalent "cpu-io.h" header). Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/exec/cpu-io.h | 30 +++++++++++ include/exec/ioport.h | 7 --- hw/i386/xen/xen-hvm.c | 1 + monitor/misc.c | 2 +- softmmu/cpu-io.c | 88 +++++++++++++++++++++++++++++++ softmmu/ioport.c | 60 --------------------- softmmu/qtest.c | 1 + tests/qtest/fuzz/qtest_wrappers.c | 3 +- softmmu/meson.build | 3 +- 9 files changed, 125 insertions(+), 70 deletions(-) create mode 100644 include/exec/cpu-io.h create mode 100644 softmmu/cpu-io.c diff --git a/include/exec/cpu-io.h b/include/exec/cpu-io.h new file mode 100644 index 00000000000..6538c451177 --- /dev/null +++ b/include/exec/cpu-io.h @@ -0,0 +1,30 @@ +/* + * QEMU CPU I/O instructions + * + * Copyright (c) 2003 Fabrice Bellard + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +#ifndef CPU_IO_H +#define CPU_IO_H + +void cpu_outb(uint32_t addr, uint8_t val); +void cpu_outw(uint32_t addr, uint16_t val); +void cpu_outl(uint32_t addr, uint32_t val); +uint8_t cpu_inb(uint32_t addr); +uint16_t cpu_inw(uint32_t addr); +uint32_t cpu_inl(uint32_t addr); + +#endif /* CPU_IO_H */ diff --git a/include/exec/ioport.h b/include/exec/ioport.h index e34f668998d..e58f475a7f0 100644 --- a/include/exec/ioport.h +++ b/include/exec/ioport.h @@ -44,13 +44,6 @@ typedef struct MemoryRegionPortio { extern const MemoryRegionOps unassigned_io_ops; #endif =20 -void cpu_outb(uint32_t addr, uint8_t val); -void cpu_outw(uint32_t addr, uint16_t val); -void cpu_outl(uint32_t addr, uint32_t val); -uint8_t cpu_inb(uint32_t addr); -uint16_t cpu_inw(uint32_t addr); -uint32_t cpu_inl(uint32_t addr); - typedef struct PortioList { const struct MemoryRegionPortio *ports; Object *owner; diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index 7ce672e5a5c..56e0018a50e 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -34,6 +34,7 @@ #include "sysemu/xen-mapcache.h" #include "trace.h" #include "exec/address-spaces.h" +#include "exec/cpu-io.h" =20 #include #include diff --git a/monitor/misc.c b/monitor/misc.c index a7650ed7470..d40c7d5afc0 100644 --- a/monitor/misc.c +++ b/monitor/misc.c @@ -77,7 +77,7 @@ #include "qapi/qmp-event.h" #include "sysemu/cpus.h" #include "qemu/cutils.h" - +#include "exec/cpu-io.h" #if defined(TARGET_S390X) #include "hw/s390x/storage-keys.h" #include "hw/s390x/storage-attributes.h" diff --git a/softmmu/cpu-io.c b/softmmu/cpu-io.c new file mode 100644 index 00000000000..6ee03555f2c --- /dev/null +++ b/softmmu/cpu-io.c @@ -0,0 +1,88 @@ +/* + * QEMU CPU I/O instructions + * + * Copyright (c) 2003-2008 Fabrice Bellard + * + * Permission is hereby granted, free of charge, to any person obtaining a= copy + * of this software and associated documentation files (the "Software"), t= o deal + * in the Software without restriction, including without limitation the r= ights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or se= ll + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included= in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS= OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OT= HER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING= FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS = IN + * THE SOFTWARE. + */ + +#include "qemu/osdep.h" +#include "exec/address-spaces.h" +#include "exec/cpu-io.h" +#include "cpu.h" +#include "trace.h" + +void cpu_outb(uint32_t addr, uint8_t val) +{ + trace_cpu_out(addr, 'b', val); + address_space_write(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, + &val, 1); +} + +void cpu_outw(uint32_t addr, uint16_t val) +{ + uint8_t buf[2]; + + trace_cpu_out(addr, 'w', val); + stw_p(buf, val); + address_space_write(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, + buf, 2); +} + +void cpu_outl(uint32_t addr, uint32_t val) +{ + uint8_t buf[4]; + + trace_cpu_out(addr, 'l', val); + stl_p(buf, val); + address_space_write(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, + buf, 4); +} + +uint8_t cpu_inb(uint32_t addr) +{ + uint8_t val; + + address_space_read(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, + &val, 1); + trace_cpu_in(addr, 'b', val); + return val; +} + +uint16_t cpu_inw(uint32_t addr) +{ + uint8_t buf[2]; + uint16_t val; + + address_space_read(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, bu= f, 2); + val =3D lduw_p(buf); + trace_cpu_in(addr, 'w', val); + return val; +} + +uint32_t cpu_inl(uint32_t addr) +{ + uint8_t buf[4]; + uint32_t val; + + address_space_read(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, bu= f, 4); + val =3D ldl_p(buf); + trace_cpu_in(addr, 'l', val); + return val; +} diff --git a/softmmu/ioport.c b/softmmu/ioport.c index cb8adb0b936..69b13eed5e6 100644 --- a/softmmu/ioport.c +++ b/softmmu/ioport.c @@ -26,7 +26,6 @@ */ =20 #include "qemu/osdep.h" -#include "cpu.h" #include "exec/ioport.h" #include "exec/memory.h" #include "exec/address-spaces.h" @@ -54,65 +53,6 @@ const MemoryRegionOps unassigned_io_ops =3D { .endianness =3D DEVICE_NATIVE_ENDIAN, }; =20 -void cpu_outb(uint32_t addr, uint8_t val) -{ - trace_cpu_out(addr, 'b', val); - address_space_write(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, - &val, 1); -} - -void cpu_outw(uint32_t addr, uint16_t val) -{ - uint8_t buf[2]; - - trace_cpu_out(addr, 'w', val); - stw_p(buf, val); - address_space_write(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, - buf, 2); -} - -void cpu_outl(uint32_t addr, uint32_t val) -{ - uint8_t buf[4]; - - trace_cpu_out(addr, 'l', val); - stl_p(buf, val); - address_space_write(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, - buf, 4); -} - -uint8_t cpu_inb(uint32_t addr) -{ - uint8_t val; - - address_space_read(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, - &val, 1); - trace_cpu_in(addr, 'b', val); - return val; -} - -uint16_t cpu_inw(uint32_t addr) -{ - uint8_t buf[2]; - uint16_t val; - - address_space_read(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, bu= f, 2); - val =3D lduw_p(buf); - trace_cpu_in(addr, 'w', val); - return val; -} - -uint32_t cpu_inl(uint32_t addr) -{ - uint8_t buf[4]; - uint32_t val; - - address_space_read(&address_space_io, addr, MEMTXATTRS_UNSPECIFIED, bu= f, 4); - val =3D ldl_p(buf); - trace_cpu_in(addr, 'l', val); - return val; -} - void portio_list_init(PortioList *piolist, Object *owner, const MemoryRegionPortio *callbacks, diff --git a/softmmu/qtest.c b/softmmu/qtest.c index 130c3666154..ff253068657 100644 --- a/softmmu/qtest.c +++ b/softmmu/qtest.c @@ -31,6 +31,7 @@ #ifdef CONFIG_PSERIES #include "hw/ppc/spapr_rtas.h" #endif +#include "exec/cpu-io.h" =20 #define MAX_IRQ 256 =20 diff --git a/tests/qtest/fuzz/qtest_wrappers.c b/tests/qtest/fuzz/qtest_wra= ppers.c index 0580f8df860..921d1e5ed3a 100644 --- a/tests/qtest/fuzz/qtest_wrappers.c +++ b/tests/qtest/fuzz/qtest_wrappers.c @@ -12,8 +12,9 @@ */ =20 #include "qemu/osdep.h" +#include "exec/address-spaces.h" +#include "exec/cpu-io.h" #include "hw/core/cpu.h" -#include "exec/ioport.h" =20 #include "fuzz.h" =20 diff --git a/softmmu/meson.build b/softmmu/meson.build index d8e03018abf..ebf063b8990 100644 --- a/softmmu/meson.build +++ b/softmmu/meson.build @@ -2,11 +2,11 @@ 'arch_init.c', 'balloon.c', 'cpus.c', + 'cpu-io.c', 'cpu-throttle.c', 'datadir.c', 'globals.c', 'physmem.c', - 'ioport.c', 'rtc.c', 'runstate.c', 'memory.c', @@ -24,6 +24,7 @@ softmmu_ss.add(files( 'bootdevice.c', 'dma-helpers.c', + 'ioport.c', 'qdev-monitor.c', ), sdl, libpmem, libdaxctl) =20 --=20 2.26.2 From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) client-ip=209.85.221.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1615764573; cv=none; d=zohomail.com; s=zohoarc; b=jLAW78Ct8XovhsUYO+FMSkROTt22KejRBCWg4GANlCHYM5vn395kzrwZPtX6erikDh89H8qDyi7HwtNCCp6gUbl8JnEHvhCizf5sZcXB+2oI+n4MMMshP2xOhLVWu8wNMoL4d2ZAhyk+f/aDYFsdHg3A09+TvVpkm982yHaeJJs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764573; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=lpMrq2wl7tmbBfa/QUj59Ff3j8xcGG28cgdr4SMcAKU=; b=FKhpGCqyqBpGIo4MtrPy1ND9wxbGwIEYEE0257eCldX7fR6VuUOabZMOopd72vhG6YvLWZoECN/tb5XEuIrlCmeAU53V408GiY2EWMgNfA6w+ISzOj4OQQksg0n9DeNDR2NcQxvUpVQLiMUU9EKIKsI+WpOQ4XclTpY/xUvLhB0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) by mx.zohomail.com with SMTPS id 1615764573917259.5048838426716; Sun, 14 Mar 2021 16:29:33 -0700 (PDT) Received: by mail-wr1-f47.google.com with SMTP id f12so7774176wrx.8 for ; Sun, 14 Mar 2021 16:29:33 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id s23sm10102316wmc.29.2021.03.14.16.29.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=lpMrq2wl7tmbBfa/QUj59Ff3j8xcGG28cgdr4SMcAKU=; b=TAb8AB+nb2GDC4JtYhd9CpvSLG+l4XhtP3YqWMMdKZ3XOMw9gpSShXKAN/9bOtbw/n iIVbxaN87pRvuNq/GfizEx7XOypvHZmiiU/XTJIxgt5Mpjo0wk4FOx6QzElQGS3O0tdQ b0dXrfty2C6U5y9wb73h6DsrwRbhS/4Qo2BySVLxBfRR65zwQmrP3regZurPLYRUZAsi Y/9unTlqnsbdoAy4Eb8lREPtLny0m3iLSAsEwercRPkeR4uAFJ7tl9jS5tMv7a9K/KYa meRDAaEYYRuA7jszi86BvfR8c1EUTFGqwwc9jAClsmIZsmNM8JZxQv1ZqlcJzZscWDAM wZyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=lpMrq2wl7tmbBfa/QUj59Ff3j8xcGG28cgdr4SMcAKU=; b=NQvOYuxU72iROBmfcCFtM0gzF4NfyZs0E0ZwsdmWrWjenViTvEphBI5AMI7T4RgijK uzreIuGAN9aCsedltp5v3KPF+yk1zKj49SazxtfxfnkO3jkUprRM6axfa7XiZpHdGoz/ mBGzMogr4Q5q3XaO9kSiYzxsMU9841OjEoB0WcrUetZfgxc9ometYKuiX3yWEDGJ07WC CjRBE4kQmMZy0CSEoE23S/vtvYEhSklU/ezEzegCHsSG9p/C/Us7tSxGiRdcRHPwFiaL oKe61G56McH99EWcoKdXpFGePCKBYKQc+aHQBPkbndMraVNpWqFZdeSQJGoMnbZ59qya xdWg== X-Gm-Message-State: AOAM532ajmz6I8gz5p2MVLKRgjMQI1myTzZ+6417BqMIjVqFP/7XdlC+ qUw4eriu+/tpQCBWvp56p+15WM0X2OBEog== X-Google-Smtp-Source: ABdhPJwyfXUbRK3t/WOE6dO5sJ2XrOeNoIE7Xi+kpEQzmpezA5Nj+OBE1U9z4VGM5QTJSLZlt9Xx2Q== X-Received: by 2002:adf:9544:: with SMTP id 62mr906615wrs.128.1615764572160; Sun, 14 Mar 2021 16:29:32 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Michael Rolnik , Sarah Harris Subject: [RFC PATCH 3/8] target: Introduce TARGET_HAS_IOPORT Date: Mon, 15 Mar 2021 00:29:08 +0100 Message-Id: <20210314232913.2607360-4-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Have target architectures providing CPU access to I/O bus define TARGET_HAS_IOPORT. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- default-configs/targets/avr-softmmu.mak | 1 + default-configs/targets/i386-softmmu.mak | 1 + default-configs/targets/x86_64-softmmu.mak | 1 + 3 files changed, 3 insertions(+) diff --git a/default-configs/targets/avr-softmmu.mak b/default-configs/targ= ets/avr-softmmu.mak index e3f921c0199..4652ce136bc 100644 --- a/default-configs/targets/avr-softmmu.mak +++ b/default-configs/targets/avr-softmmu.mak @@ -1,2 +1,3 @@ TARGET_ARCH=3Davr +TARGET_HAS_IOPORT=3Dy TARGET_XML_FILES=3D gdb-xml/avr-cpu.xml diff --git a/default-configs/targets/i386-softmmu.mak b/default-configs/tar= gets/i386-softmmu.mak index 5babf71895d..969008859b6 100644 --- a/default-configs/targets/i386-softmmu.mak +++ b/default-configs/targets/i386-softmmu.mak @@ -1,3 +1,4 @@ TARGET_ARCH=3Di386 +TARGET_HAS_IOPORT=3Dy TARGET_SUPPORTS_MTTCG=3Dy TARGET_XML_FILES=3D gdb-xml/i386-32bit.xml diff --git a/default-configs/targets/x86_64-softmmu.mak b/default-configs/t= argets/x86_64-softmmu.mak index 75e42bc8404..2d35270f020 100644 --- a/default-configs/targets/x86_64-softmmu.mak +++ b/default-configs/targets/x86_64-softmmu.mak @@ -1,4 +1,5 @@ TARGET_ARCH=3Dx86_64 TARGET_BASE_ARCH=3Di386 +TARGET_HAS_IOPORT=3Dy TARGET_SUPPORTS_MTTCG=3Dy TARGET_XML_FILES=3D gdb-xml/i386-64bit.xml --=20 2.26.2 From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) client-ip=209.85.221.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1615764579; cv=none; d=zohomail.com; s=zohoarc; b=C/C9fvO463ydDr8QgRo/P1j6Csbw/7ZNjVFnbj2n9PqJ7GEws5DdAYHPHA8hm6RpHkAiOf4vKY7ER4iqlrcM5XYIZoZ+ZHSkQkTGOi5DcpK+q0L7eMjb4jWLSCBO1yurE8zVJ7536B/0vsN7V7m2M1+umDjhxcEXt8+oqJKvyOw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764579; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=MR0TI0p/wk8rjHEQtPPg4Akk9TSXYFy78Mij8j91GoM=; b=XveREXFUZFf9Hp5c/KNpDbk+pyy0D0BKN8pZux2Xju74WlXwQv0IuSp1Iq3a7+tPKpfqLqLMQaBx8iAmsy93WIEcGJliP12zXP9rhUjR28BRWOmk1ooNV2IwbMs8aBWspNhvGMP3WcZd7BOg6Er0aV1B8nfLMCTe1O6akIiPlJs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) by mx.zohomail.com with SMTPS id 161576457907584.6746874434341; Sun, 14 Mar 2021 16:29:39 -0700 (PDT) Received: by mail-wr1-f47.google.com with SMTP id f12so7774221wrx.8 for ; Sun, 14 Mar 2021 16:29:38 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id y205sm12699717wmc.18.2021.03.14.16.29.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MR0TI0p/wk8rjHEQtPPg4Akk9TSXYFy78Mij8j91GoM=; b=YkpxnBpdjI6gHJi9CH80xVmsuUsuX5J2D2vr5VxrX3sp/wEkEz7SFmKOx6SrkIwUGv Ks5aWy0xn65GNztYWRi2OKdXabOZABQswFGPAkSMsYfCF+PjQ5bFS1IMbVusgUzC8w3H APrgIEsVGU1qI7+PkyrUpOwj4TAhXh9eLpHpl87M1BuXGZRwMssJk08lkKaVjNDimWbE f6ragMe8GjebD8vmZ54hAahrs7rNT0gs/mtb2a2ZzOGrQ7PyKgCwSZzi03ly/TYdLCDY TQOMzXoDFMkoqjKpjsLnf89C2ssXCuPMq+fncyPzejkG9cqYYF0cT5CEgj49orBqXfWo SBeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=MR0TI0p/wk8rjHEQtPPg4Akk9TSXYFy78Mij8j91GoM=; b=LALjoY4qjM7LVWEO6BHrGtdHebLwFj2ngqn86sN8OBm7VpxfKDldJS6PObiEGkyVzu uaaqHUrgCyeZQvOpVW/F7s2uBcY2vFjQ3eyMaNvc+FCXEir6Q3huG0x0l2XJ2MeuW/JP xzxS+PWJ53ZjZ/v9jQxl5FkiMnXuicha2H0g5i1H26qEG2GP3w3w/Il6LW/xGil10HiD OP7TEWIXnSMPy/2CJbu7kuwhX5+SDrwr3JgHs0YLP+0nr7HuF0/o3YQ2adtqchszkJOc T1tfQw6iHwYgOc6xi8gli0KqtzNYhRTPvjHKbgUVHu4KBCSljNz8YYr9PaSZHe1RRLZJ lEqA== X-Gm-Message-State: AOAM531w8eJntybSwk2gHemdJlcR//el2W3/7o4JKKF8+yCmn86hUNl1 s7D7zooNgU9A78QywwV6Tv8= X-Google-Smtp-Source: ABdhPJwH4XXN0wlyakrsIVtQFO33BnUjaxGyPiNfwEKk18FV8cpayJc8q5Fxq24nWbabDr4kFPoVhQ== X-Received: by 2002:a5d:4e0b:: with SMTP id p11mr25198732wrt.343.1615764577344; Sun, 14 Mar 2021 16:29:37 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Alexander Bulekov , Bandan Das , Stefan Hajnoczi , Thomas Huth , Laurent Vivier Subject: [RFC PATCH 4/8] qtest/fuzz: Restrict CPU I/O instructions Date: Mon, 15 Mar 2021 00:29:09 +0100 Message-Id: <20210314232913.2607360-5-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Restrict CPU I/O instructions to architectures providing I/O bus. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- tests/qtest/fuzz/generic_fuzz.c | 16 ++++++++++------ tests/qtest/fuzz/qtest_wrappers.c | 4 ++++ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/tests/qtest/fuzz/generic_fuzz.c b/tests/qtest/fuzz/generic_fuz= z.c index ee8c17a04c4..3e0089f4a63 100644 --- a/tests/qtest/fuzz/generic_fuzz.c +++ b/tests/qtest/fuzz/generic_fuzz.c @@ -304,6 +304,13 @@ static bool get_io_address(address_range *result, Addr= essSpace *as, return cb_info.found; } =20 +static bool get_mmio_address(address_range *result, + uint8_t index, uint32_t offset) +{ + return get_io_address(result, &address_space_memory, index, offset); +} + +#ifdef TARGET_HAS_IOPORT static bool get_pio_address(address_range *result, uint8_t index, uint16_t offset) { @@ -318,12 +325,6 @@ static bool get_pio_address(address_range *result, return result->addr <=3D 0xFFFF ? found : false; } =20 -static bool get_mmio_address(address_range *result, - uint8_t index, uint32_t offset) -{ - return get_io_address(result, &address_space_memory, index, offset); -} - static void op_in(QTestState *s, const unsigned char * data, size_t len) { enum Sizes {Byte, Word, Long, end_sizes}; @@ -395,6 +396,7 @@ static void op_out(QTestState *s, const unsigned char *= data, size_t len) break; } } +#endif /* TARGET_HAS_IOPORT */ =20 static void op_read(QTestState *s, const unsigned char * data, size_t len) { @@ -626,8 +628,10 @@ static void handle_timeout(int sig) static void generic_fuzz(QTestState *s, const unsigned char *Data, size_t = Size) { void (*ops[]) (QTestState *s, const unsigned char* , size_t) =3D { +#ifdef TARGET_HAS_IOPORT [OP_IN] =3D op_in, [OP_OUT] =3D op_out, +#endif /* TARGET_HAS_IOPORT */ [OP_READ] =3D op_read, [OP_WRITE] =3D op_write, [OP_PCI_READ] =3D op_pci_read, diff --git a/tests/qtest/fuzz/qtest_wrappers.c b/tests/qtest/fuzz/qtest_wra= ppers.c index 921d1e5ed3a..d56dda9e9b8 100644 --- a/tests/qtest/fuzz/qtest_wrappers.c +++ b/tests/qtest/fuzz/qtest_wrappers.c @@ -24,12 +24,14 @@ static bool serialize =3D true; RET_TYPE __wrap_##NAME_AND_ARGS;\ RET_TYPE __real_##NAME_AND_ARGS; =20 +#ifdef TARGET_HAS_IOPORT WRAP(uint8_t , qtest_inb(QTestState *s, uint16_t addr)) WRAP(uint16_t , qtest_inw(QTestState *s, uint16_t addr)) WRAP(uint32_t , qtest_inl(QTestState *s, uint16_t addr)) WRAP(void , qtest_outb(QTestState *s, uint16_t addr, uint8_t value)) WRAP(void , qtest_outw(QTestState *s, uint16_t addr, uint16_t value)) WRAP(void , qtest_outl(QTestState *s, uint16_t addr, uint32_t value)) +#endif /* TARGET_HAS_IOPORT */ WRAP(uint8_t , qtest_readb(QTestState *s, uint64_t addr)) WRAP(uint16_t , qtest_readw(QTestState *s, uint64_t addr)) WRAP(uint32_t , qtest_readl(QTestState *s, uint64_t addr)) @@ -50,6 +52,7 @@ WRAP(void, qtest_memset(QTestState *s, uint64_t addr, uint8_t patt, size_t size)) =20 =20 +#ifdef TARGET_HAS_IOPORT uint8_t __wrap_qtest_inb(QTestState *s, uint16_t addr) { if (!serialize) { @@ -103,6 +106,7 @@ void __wrap_qtest_outl(QTestState *s, uint16_t addr, ui= nt32_t value) __real_qtest_outl(s, addr, value); } } +#endif /* TARGET_HAS_IOPORT */ =20 uint8_t __wrap_qtest_readb(QTestState *s, uint64_t addr) { --=20 2.26.2 From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.50 as permitted sender) client-ip=209.85.128.50; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f50.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1615764584; cv=none; d=zohomail.com; s=zohoarc; b=DzDq/NBdF4fh0Y6noJ/OAm5GYbzQWJnEaBb2UlC3aHpPqjWsfIBbwTVDsEILj8bE7Wd/OrvGoHzEfXiotFG5HBVMRH9ncTww5yd4xnxKu+72D7Z+HMvKoMBQsZGj5QZqlHPuWF9hh7fXWOrI7xWWTdku97xE22BsbEKpPFNo39g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764584; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=70oiTPRv0w7FE2MLsRVbgiZ8dTQJ/B4k2Scty1V1FuU=; b=Iel1dSXB11T0ShVHsuFLOeaNrkgY/ziVP5pusbqvUljVgwbmSz2ScJ6Rl92NEiwp8IF6VvDkm2EYDi3cy369EzB6PU0bXphchZQ3YWRRetkpTSGLSJZiVFDsVzOA9xo2J7BZwl5x42hLwPk5LCT8Fss1qTd6zNrdq/T0P+wC4NQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) by mx.zohomail.com with SMTPS id 1615764584186210.44829617203675; Sun, 14 Mar 2021 16:29:44 -0700 (PDT) Received: by mail-wm1-f50.google.com with SMTP id r15-20020a05600c35cfb029010e639ca09eso19217663wmq.1 for ; Sun, 14 Mar 2021 16:29:43 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id b15sm12054487wmd.41.2021.03.14.16.29.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=70oiTPRv0w7FE2MLsRVbgiZ8dTQJ/B4k2Scty1V1FuU=; b=O3RPy4rqGH8KkAP9tNHKtelgXjEIHJ/q+IGzTj/RHP6qVTpSzef7VZ9jPcp1Yev19u aFAa4Kr/DqXbD0DK7+tZqJFYFGPLiT3Vu4jOceIlJdg45+a4Je6HHo39/I6SoW9CVTsk EuAzY3Ym2YyY+nPp9vfsHi/StLuHhi/1biptIAb4kuFOkjGA2ZZSQ6oRVR/z1PV0lRbS qX6jpKzkFX5bT6UQSAeGUj8pMQ5wBYY490zTejvw9Ig79CKtXEEaBbckMx5umTbGJLoL jTdyqx/AL1IaccQ6IHMEXkSLHmolQtwS1sOvfAmiIekqyhDETsQoB3YYjKjnbxLoiaF1 sH5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=70oiTPRv0w7FE2MLsRVbgiZ8dTQJ/B4k2Scty1V1FuU=; b=LJjEfRQ2UZsPVk4kMKQyesxJeDsnRL/qT/bJTqjFYfWfGX547gLy+MziewRAYRAhcd j8YMIBtetCxqYE72u5sExmYxeILoN+2LfvcrxBClZpa0OFfkHN46IrQ9z7TrSo/d93qI HTYEbygXiYwi4REpopaur1vtGL0vHWyrJfA+ahCjhK7iUNs9Jt7OLPp9fakMZgbXdqD1 eQoUFkHRv5HfEn711qHzu304eQhQK1+S29ct+NHu0S5QnNQgQMAZMcuK8R+N0LXVjGjP ynNSssOTCJ45tdnEd23u6o20Mp3MrpQbQfB/919tR93psON027m6S/zu/McpNUWhyAst WYZw== X-Gm-Message-State: AOAM532tcRfYPda9e1nGjp6o2S3GM6u0uv/Dw6AyjfM3yPU0IC8HLqb2 ZAqFLcfWBEkcvM14OIR9T8o= X-Google-Smtp-Source: ABdhPJy66fgwB1Ba3PO0EzjRIMd2orHQBICO/MbU+2p/kHOK2oRT4j2q7ViAewvH9o5kiQ+h43/psQ== X-Received: by 2002:a05:600c:1550:: with SMTP id f16mr23245428wmg.97.1615764582442; Sun, 14 Mar 2021 16:29:42 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Laszlo Ersek , Gerd Hoffmann , Thomas Huth , Laurent Vivier Subject: [RFC PATCH 5/8] qtest/libqos: Restrict CPU I/O instructions Date: Mon, 15 Mar 2021 00:29:10 +0100 Message-Id: <20210314232913.2607360-6-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Restrict CPU I/O instructions to architectures providing I/O bus. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- tests/qtest/libqos/fw_cfg.h | 3 +++ tests/qtest/libqos/fw_cfg.c | 2 ++ 2 files changed, 5 insertions(+) diff --git a/tests/qtest/libqos/fw_cfg.h b/tests/qtest/libqos/fw_cfg.h index c6a7cf8cf05..3bfb6d6d55b 100644 --- a/tests/qtest/libqos/fw_cfg.h +++ b/tests/qtest/libqos/fw_cfg.h @@ -36,6 +36,8 @@ size_t qfw_cfg_get_file(QFWCFG *fw_cfg, const char *filen= ame, =20 QFWCFG *mm_fw_cfg_init(QTestState *qts, uint64_t base); void mm_fw_cfg_uninit(QFWCFG *fw_cfg); + +#ifdef TARGET_HAS_IOPORT QFWCFG *io_fw_cfg_init(QTestState *qts, uint16_t base); void io_fw_cfg_uninit(QFWCFG *fw_cfg); =20 @@ -48,6 +50,7 @@ static inline void pc_fw_cfg_uninit(QFWCFG *fw_cfg) { io_fw_cfg_uninit(fw_cfg); } +#endif /* TARGET_HAS_IOPORT */ =20 G_DEFINE_AUTOPTR_CLEANUP_FUNC(QFWCFG, mm_fw_cfg_uninit) =20 diff --git a/tests/qtest/libqos/fw_cfg.c b/tests/qtest/libqos/fw_cfg.c index 6b8e1babe51..db2b83f5212 100644 --- a/tests/qtest/libqos/fw_cfg.c +++ b/tests/qtest/libqos/fw_cfg.c @@ -131,6 +131,7 @@ void mm_fw_cfg_uninit(QFWCFG *fw_cfg) g_free(fw_cfg); } =20 +#ifdef TARGET_HAS_IOPORT static void io_fw_cfg_select(QFWCFG *fw_cfg, uint16_t key) { qtest_outw(fw_cfg->qts, fw_cfg->base, key); @@ -162,3 +163,4 @@ void io_fw_cfg_uninit(QFWCFG *fw_cfg) { g_free(fw_cfg); } +#endif /* TARGET_HAS_IOPORT */ --=20 2.26.2 From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) client-ip=209.85.128.54; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f54.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1615764589; cv=none; d=zohomail.com; s=zohoarc; b=aj19epFOd4/EkZiJ/cKVZPcrCcT9F9HSoPqHr8yaenC8SmwNHtbnjDWI7EREwfJVvDwh86Y9jgPxE3IIlqvRt9qpL2EsQKONxXXLCNFvbwTDd223GJeHQmPENBt2NpkKm/YeDuIuH5+2AwRjrEfS5ipXOTAbdZ8WhyAaiORn3G4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764589; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=PKZDm7LBM+uCSZ92Wt+YMih/9De/7VVZu7v4tDHJtE8=; b=E89nMUCG1RYcaIAePXxnrnyueo+JGxQrf3iuuhFO8564xtxHhXegoinUsnb5vP1yl/VdbjQT8nkuSGUxMZ+7dXV3+pl0TMpxMBzwOamHDhL7sFOJJhqQsEG04N89U8kObMJC1vH+HzskU3Dd3dESsPC3X3aRtypPoarf/iYGHXQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) by mx.zohomail.com with SMTPS id 1615764589100181.14788734326783; Sun, 14 Mar 2021 16:29:49 -0700 (PDT) Received: by mail-wm1-f54.google.com with SMTP id u5-20020a7bcb050000b029010e9316b9d5so15490845wmj.2 for ; Sun, 14 Mar 2021 16:29:48 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id d204sm10785054wmc.17.2021.03.14.16.29.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=PKZDm7LBM+uCSZ92Wt+YMih/9De/7VVZu7v4tDHJtE8=; b=p5v+x/1QlWlHY0VY8mBhtjnEIZCtCoTnIOACAX692stBUd1U0Ai+43He3mGlWHXEsb C6VrwhzXYl5eZ+8YeecOJbu5vqOrvIF8hM7QqceLjRwUd6xpOjgtd+PyXmLa+x5h9yOp URhXsCdGhkRgpfHfkXeE0pI1d95cNXUPD31RHgcnQgAEdUX0TphU9zexk6p6Ax6f8VpA c2I9UE3GRKoVULQVkKIRDnlwMnShMYiTxRbd5MviLIU3SA+NJTjvHdDLXqxLfb8OHzkO CmZayf46ovUI3yAHLEuthtQ7q4g81a/TSYT3JrJcRRcO1Aniut5ThdW8F7ntM3zkwWfo 1aTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=PKZDm7LBM+uCSZ92Wt+YMih/9De/7VVZu7v4tDHJtE8=; b=cZaJIK4PHsTpi6mjknWEr9IxS5SCYr0DeiXmZhdtkC8ZoYc+AaXCqOhb9VDWKa/z9G nSWauPeXFb2NDjLJ47KK27wZOaKTp/oKSNXIJXZJQnILyRUei9AFhrLpwvJzcGJO6g49 jLxSxuU4cuavKMurCOpwX9BjxftdY/JbReh5JR5hEnopnA2yWfhypLN1czYUKJZqXnUX J59TG03p+nm2wg18rwgSnT0fRl6rjA5z3z3qdCo+RZmvSHW+VZc0+OnCTwFxrzQIAqBo OVaPugCk8HQpZDA551IoEqd+ibEClpKdqt/5X7Dml61ILFt8+9/PjRBe1mzWqPnGV0vR IpaQ== X-Gm-Message-State: AOAM530Ea9U53khMFEx+XeGQVrFaNAEvs+HJVPTeGzjxDiyybxW+cLe9 gprFPkC/5BTo+H0naiaauXc= X-Google-Smtp-Source: ABdhPJx8Xw1Sf+WDisRX3hjPlqSZUXSLTBbDNSX495xW79OqhGHaCl9RPKAASeduWqbTUCCAhic2KA== X-Received: by 2002:a7b:ce16:: with SMTP id m22mr23974993wmc.65.1615764587452; Sun, 14 Mar 2021 16:29:47 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Thomas Huth , Laurent Vivier Subject: [RFC PATCH 6/8] qtest: Restrict CPU I/O instructions Date: Mon, 15 Mar 2021 00:29:11 +0100 Message-Id: <20210314232913.2607360-7-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Restrict CPU I/O instructions to architectures providing I/O bus. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- softmmu/qtest.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/softmmu/qtest.c b/softmmu/qtest.c index ff253068657..51fe256297a 100644 --- a/softmmu/qtest.c +++ b/softmmu/qtest.c @@ -31,7 +31,9 @@ #ifdef CONFIG_PSERIES #include "hw/ppc/spapr_rtas.h" #endif +#ifdef TARGET_HAS_IOPORT #include "exec/cpu-io.h" +#endif =20 #define MAX_IRQ 256 =20 @@ -462,7 +464,9 @@ static void qtest_process_command(CharBackend *chr, gch= ar **words) qemu_set_irq(irq, level); qtest_send_prefix(chr); qtest_send(chr, "OK\n"); - } else if (strcmp(words[0], "outb") =3D=3D 0 || + } +#ifdef TARGET_HAS_IOPORT + else if (strcmp(words[0], "outb") =3D=3D 0 || strcmp(words[0], "outw") =3D=3D 0 || strcmp(words[0], "outl") =3D=3D 0) { unsigned long addr; @@ -506,7 +510,9 @@ static void qtest_process_command(CharBackend *chr, gch= ar **words) } qtest_send_prefix(chr); qtest_sendf(chr, "OK 0x%04x\n", value); - } else if (strcmp(words[0], "writeb") =3D=3D 0 || + } +#endif /* TARGET_HAS_IOPORT */ + else if (strcmp(words[0], "writeb") =3D=3D 0 || strcmp(words[0], "writew") =3D=3D 0 || strcmp(words[0], "writel") =3D=3D 0 || strcmp(words[0], "writeq") =3D=3D 0) { --=20 2.26.2 From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) client-ip=209.85.221.43; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f43.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1615764594; cv=none; d=zohomail.com; s=zohoarc; b=bWQYjqP5kRoSOlxflhEQvDxezeiROXk/0sPfzHniDmUrMhpTfpVQsWxTOz0r2O08r2mGCRelpmIafm40z/MSR05QDnW8Zj0zYjgf75wgO6PQiywJ0xvHnQp3ppqwag05VOy9ApECNz4j/WraC1gmppSRtn2cvVL1ywjT2A/e+1E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764594; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=jJdhWW4fK4y5udXyK0NB1puC8z9XRvo9dDPHL5cwnpk=; b=WRnhwBeCRjDvSCbxGaGWPMAjhsQoa6ad4u/ONOwPljC390MJIOZKxAUWT20SmjT98Bw8BH5hO0SjRsQomzolH35DRct5GJo7XCrZU8EiXnJ5EWuJGAo8pOdbUWZAN7Jx4IPpuzR64/q6pJXknGMSbOEzbMAyeIHC16CivbaJIfk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.43 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) by mx.zohomail.com with SMTPS id 1615764594123844.8027936515562; Sun, 14 Mar 2021 16:29:54 -0700 (PDT) Received: by mail-wr1-f43.google.com with SMTP id j2so7775913wrx.9 for ; Sun, 14 Mar 2021 16:29:53 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id o2sm7336952wmc.23.2021.03.14.16.29.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jJdhWW4fK4y5udXyK0NB1puC8z9XRvo9dDPHL5cwnpk=; b=r23GqKf9+DtJ9Us3Xw4RWewY3fgqXnWHzcUXztmGXO8letFa6EU5fLl4bK+gYVBUYj tEqXSSM+HU67zV+HEz8NAT58Uja0m+AV46WwapNqunaX3j688C0jX8Q+kspzUoBJhBvO yJ3pQ0JhI0u2oF6QUXYkAcH9siR4jLVPMfv5en/9WvimhshaTz10F+oAiT2T9iR2QawV q9PwwPuHTJS26EJn5tO3ht1luBVPFajRnOJEYyqrt94aKKbUhSz8Sj8ODcwuB1FitaPR QURDaEU+vfA3zfZmuPzP3odY8NhKcuxL35OCDB2C1ZtpXgA6hp1TbhtwoUvuQ78iNesz PoaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=jJdhWW4fK4y5udXyK0NB1puC8z9XRvo9dDPHL5cwnpk=; b=mdMyCMqCJwmvMJeuB8QnSUKcf8AzuVJ1qSRS/JbH5XPP1DOPg26xmq2DV3V0hHMRU7 Ihm5T5zZ9tVudCHTCBUEOc/biHwf2+I0Kx3X+stDRl+ZdGgFhKlm1eC6pUqaVy6rmybx klFrJL0KHaDePIpYWsOpLgtupSmgzGTSAmo39q+2H8FImQP1/HZ1awQJy46Nug/dRyP8 MaqTLrWG/X8AbjsaU9clSekpp965BZv7JE+AJo0WE7sKqz7I8/0YMLgm4aEzuemwGAw6 buNfIUaPf2WboIjg3iE6NB9/jpylzaC6KhvwuUq6Af7QH2/luH+mKTXnKjocdOdGfI3Q tpgA== X-Gm-Message-State: AOAM530U3KvlSSBEM1PzueP2hE5P6m9rxxtfM/KqZ8ZBJwOUNK5trCMY 4X9HzfKIHCvEy6R+BNUlnhY= X-Google-Smtp-Source: ABdhPJzKTB63rtSEOGIVWIkzGei/LAwidsPG0NwIli/yvBSG5aam3MaMz0qu0bu7YgHi6TsGinIyHg== X-Received: by 2002:a5d:4903:: with SMTP id x3mr24656623wrq.143.1615764592458; Sun, 14 Mar 2021 16:29:52 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , "Dr. David Alan Gilbert" , Markus Armbruster Subject: [RFC PATCH 7/8] monitor: Restrict CPU I/O instructions Date: Mon, 15 Mar 2021 00:29:12 +0100 Message-Id: <20210314232913.2607360-8-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Restrict CPU I/O instructions to architectures providing I/O bus. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- monitor/misc.c | 4 ++++ hmp-commands.hx | 2 ++ 2 files changed, 6 insertions(+) diff --git a/monitor/misc.c b/monitor/misc.c index d40c7d5afc0..b59f11433eb 100644 --- a/monitor/misc.c +++ b/monitor/misc.c @@ -77,7 +77,9 @@ #include "qapi/qmp-event.h" #include "sysemu/cpus.h" #include "qemu/cutils.h" +#ifdef TARGET_HAS_IOPORT #include "exec/cpu-io.h" +#endif #if defined(TARGET_S390X) #include "hw/s390x/storage-keys.h" #include "hw/s390x/storage-attributes.h" @@ -884,6 +886,7 @@ static void hmp_mouse_button(Monitor *mon, const QDict = *qdict) mouse_button_state =3D button_state; } =20 +#ifdef TARGET_HAS_IOPORT static void hmp_ioport_read(Monitor *mon, const QDict *qdict) { int size =3D qdict_get_int(qdict, "size"); @@ -939,6 +942,7 @@ static void hmp_ioport_write(Monitor *mon, const QDict = *qdict) break; } } +#endif /* TARGET_HAS_IOPORT */ =20 static void hmp_boot_set(Monitor *mon, const QDict *qdict) { diff --git a/hmp-commands.hx b/hmp-commands.hx index d4001f9c5dc..cedcedf7d8d 100644 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -561,6 +561,7 @@ SRST used. ERST =20 +#ifdef TARGET_HAS_IOPORT { .name =3D "i", .args_type =3D "fmt:/,addr:i,index:i.", @@ -586,6 +587,7 @@ SRST ``o/``\ *fmt* *addr* *val* Write to I/O port. ERST +#endif /* TARGET_HAS_IOPORT */ =20 { .name =3D "sendkey", --=20 2.26.2 From nobody Fri May 17 01:03:24 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) client-ip=209.85.221.52; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f52.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1615764598; cv=none; d=zohomail.com; s=zohoarc; b=caJ6IrQtuipDRgYQcyFXuWApAA4NKLbTta/E8+RMIJLf6XkVsBmPYkPce6tw91pE8LibTNzx7XF7RivFv6DTCcWNwHxYuBGVJb1fdwnEWPXhlEKGfpaJDHy5+oqaE/bvO6mXI8LztfJLZgec4pr6brEAOCYie5UHlp+IFnrPia4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615764598; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=omYqz1dBbqgnwbqos/CkuFX5mITKAgtBS0In2um2yKk=; b=Hy77SZ/4H+wM5cGT5a62BGOjOO+9YI3OfY8cTvxxmRY5nD1zRgCJBeY1wOO3DU1ostBO+s7r9FU44kSPINrDY8/PSfjMu1xBaUdT+oA1QhagC8rvm13NiljNLSx57MauyGkAcMkOai33jqeQjyd92Canb7SuHRUqVkhzxGlX0ZQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.52 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) by mx.zohomail.com with SMTPS id 1615764598828655.0874959213485; Sun, 14 Mar 2021 16:29:58 -0700 (PDT) Received: by mail-wr1-f52.google.com with SMTP id e18so4811042wrt.6 for ; Sun, 14 Mar 2021 16:29:58 -0700 (PDT) Return-Path: Return-Path: Received: from localhost.localdomain (17.red-88-21-201.staticip.rima-tde.net. [88.21.201.17]) by smtp.gmail.com with ESMTPSA id q19sm17336065wrg.80.2021.03.14.16.29.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 14 Mar 2021 16:29:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=omYqz1dBbqgnwbqos/CkuFX5mITKAgtBS0In2um2yKk=; b=garltiyyObrLsT9P5uLMXRvWWCELa8cLtHJfM8XThPwu3/v2SxJLT7FurF9FWULH5o WxErGQbvn6eiS/u0rGtJT3R6cNkzhiCh9iSBp02OET4i9ml1zVMTOfMd/+zRqlLRNNJT aNqj+60YC3huNDaUgluI8FY2Rrbqn9iq8wFM7N9sH9zgkQYT6fV54rCUvxu6FUw/xEvC 9/g4CUDoPtIImspXQkUSaoCAUtrz16gCjE9SuM4ja1EHIyPRl0Dq9CEd5zaxBuPSLlkI /WbUao93T2lfGuTsWKjrVzZcKJNlybKdqZdPisooYRRZXoXm0msvJpVnxTQaTJnq/bys jXuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=omYqz1dBbqgnwbqos/CkuFX5mITKAgtBS0In2um2yKk=; b=HFNvUumyBsw2Ae2Z0kWZthGMnYCafpTq4tObUhv7XHGSdoB7S69/DPOQyBS+dAnywO lhhPcdmAlt7nmONCahnLSU/7BUC9J2zHe7sUlR9SMmGhIeVO71OqV83yYrl98i0s7nR0 B0BUJoi1Ig450NAizWWllViOeGITobF7YQrP9h4/2jvRJ9RV+j3AUANaCvCt0tnJqEgd DHZUGycp2sQCKr+Tn2a9NXJ6VGnOfupTpZv1o7jI6d9ASRUX0mmSNgDW3dKcAq+h09g0 F78KKC/hzydnvjxIS6VWg6o9/XSg52uuHffs1DmOY9LQriCYd2C31opENqSeUV2gPYWE nYLA== X-Gm-Message-State: AOAM531F/JT8IeenCzUm7mbQagZKhkBb9uZaLZ81jsss6Rnq7mys2ht8 4qMm7w1G9zgdjSmOSJCtoauJr4Imc2q/Lg== X-Google-Smtp-Source: ABdhPJxAmp1QFt+9Wcs/WVlU4KvZUtK8eq0jGOwzLGfLhpejtzagvwU5JLVVPE0+A+Rzmy6WSZwL4A== X-Received: by 2002:a5d:6312:: with SMTP id i18mr24967028wru.149.1615764597150; Sun, 14 Mar 2021 16:29:57 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Richard Henderson , Claudio Fontana , Paolo Bonzini , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [RFC PATCH 8/8] softmmu: Restrict CPU I/O instructions Date: Mon, 15 Mar 2021 00:29:13 +0100 Message-Id: <20210314232913.2607360-9-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210314232913.2607360-1-f4bug@amsat.org> References: <20210314232913.2607360-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Restrict CPU I/O instructions to architectures providing I/O bus. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- softmmu/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/softmmu/meson.build b/softmmu/meson.build index ebf063b8990..3df196917a0 100644 --- a/softmmu/meson.build +++ b/softmmu/meson.build @@ -2,7 +2,6 @@ 'arch_init.c', 'balloon.c', 'cpus.c', - 'cpu-io.c', 'cpu-throttle.c', 'datadir.c', 'globals.c', @@ -16,6 +15,7 @@ 'cpu-timers.c', 'runstate-action.c', )]) +specific_ss.add(when: 'TARGET_HAS_IOPORT', if_true: files('cpu-io.c')) =20 specific_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: [files( 'icount.c' --=20 2.26.2