From nobody Thu Apr 25 23:33:24 2024 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; dkim=fail; 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=amsat.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 158163741963082.57535703421001; Thu, 13 Feb 2020 15:43:39 -0800 (PST) Received: from localhost ([::1]:32800 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O8w-0002ep-FS for importer@patchew.org; Thu, 13 Feb 2020 18:43:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57328) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O7G-00085N-CC for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j2O7F-0002sB-FQ for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:54 -0500 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]:54658) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j2O7F-0002r5-9X for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:53 -0500 Received: by mail-wm1-x341.google.com with SMTP id g1so8141340wmh.4 for ; Thu, 13 Feb 2020 15:41:53 -0800 (PST) Received: from x1w.redhat.com (78.red-88-21-202.staticip.rima-tde.net. [88.21.202.78]) by smtp.gmail.com with ESMTPSA id d4sm1521065wra.14.2020.02.13.15.41.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 13 Feb 2020 15:41:51 -0800 (PST) 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=ZHa5SRLQcSqztFZ5l0K3j51fwiOgQoZhIG6RRALjXP0=; b=Okj3QJqiCbysVu+BVIj/KLbMa7A4Zfx4eVBxOlCVRgqLkhKc6QmzWPnj/nfI+6GoI4 QgpkyXOHfGG2AFx4aWoiX1CLLsdjc6mbIhN8JmE8Tn0XmyigWQTNNt/w9fuURKCgvSwz 5S/lgq5Hs4S6TnTpDitQNjweDDNSGN18T9AiwETwEhofJH2TkQ/CQJJCi4JojQKGrwXN X+eXMrqB4DgplXxIa5oPmkvJSIGmwmavhL59WfC1p9AKqk7VdOU2yy3u9RZiDih31BDN MBFuBYenUj1c6tAftM86BwCrxJKXeT+3YjuF8dAEwCh/Nix//uyY3Asr5hGgecHlVieu AitQ== 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=ZHa5SRLQcSqztFZ5l0K3j51fwiOgQoZhIG6RRALjXP0=; b=ZgFQ5RV+ZAX6gNY1E6RkiFRo0VDUp8tx4LboiAxFxVKynd/4bjZXVH23Hkoz8toL9k vrri1IYkg3ch7Kk/bgKNZ+W2tic+jXjYSusprVXSbHOFtnuKGIF6FAywdnd7OXqRpFP4 5rIrV6xtvws9vVwiV+kPzuy+fzTzzMs7z+ymhF1ewXikdRpR0oovKu6lUYev/lhwMIye Opd2hJJsffyUrHqAbxMvQ3Mb8CSYRsc3RwOZBndVVe4ySahreRWoOCqm6ZUORinDq3Sp FO29JV8tLLoJIFvdnR4oh7/yC3ouMGQuPPL+3f/AJY+Wf2BmxNwg3gER4CHZMIk0MQ3i inHw== X-Gm-Message-State: APjAAAXE2iLqIp3z5yxe6hCkU+fJKH45QhKANBcPTMeXdtMu6zml5EGu pvQLpxtUGBfVV1LlLqFXm5E= X-Google-Smtp-Source: APXvYqxZ+odHaJBHz9q4yVEwdmlLlAXXiqI/kzR/Kx7fb36riS77Kuz9Jh0+B8K/leT9iEuYkSAInw== X-Received: by 2002:a7b:c183:: with SMTP id y3mr460247wmi.45.1581637312329; Thu, 13 Feb 2020 15:41:52 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Sven Schnelle , qemu-devel@nongnu.org, Helge Deller Subject: [PATCH 1/4] hw/hppa/dino: Add comments with register name Date: Fri, 14 Feb 2020 00:41:45 +0100 Message-Id: <20200213234148.8434-2-f4bug@amsat.org> X-Mailer: git-send-email 2.21.1 In-Reply-To: <20200213234148.8434-1-f4bug@amsat.org> References: <20200213234148.8434-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::341 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Add a comment with the name of each register in the 0x800-0x833 range. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Helge Deller --- hw/hppa/dino.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c index 9797a7f0d9..c237ad3b1b 100644 --- a/hw/hppa/dino.c +++ b/hw/hppa/dino.c @@ -85,18 +85,18 @@ =20 #define DINO800_REGS ((DINO_TLTIM - DINO_GMASK) / 4) static const uint32_t reg800_keep_bits[DINO800_REGS] =3D { - MAKE_64BIT_MASK(0, 1), - MAKE_64BIT_MASK(0, 7), - MAKE_64BIT_MASK(0, 7), - MAKE_64BIT_MASK(0, 8), - MAKE_64BIT_MASK(0, 7), - MAKE_64BIT_MASK(0, 9), - MAKE_64BIT_MASK(0, 32), - MAKE_64BIT_MASK(0, 8), - MAKE_64BIT_MASK(0, 30), - MAKE_64BIT_MASK(0, 25), - MAKE_64BIT_MASK(0, 22), - MAKE_64BIT_MASK(0, 9), + MAKE_64BIT_MASK(0, 1), /* GMASK */ + MAKE_64BIT_MASK(0, 7), /* PAMR */ + MAKE_64BIT_MASK(0, 7), /* PAPR */ + MAKE_64BIT_MASK(0, 8), /* DAMODE */ + MAKE_64BIT_MASK(0, 7), /* PCICMD */ + MAKE_64BIT_MASK(0, 9), /* PCISTS */ + MAKE_64BIT_MASK(0, 32), /* Undefined */ + MAKE_64BIT_MASK(0, 8), /* MLTIM */ + MAKE_64BIT_MASK(0, 30), /* BRDG_FEAT */ + MAKE_64BIT_MASK(0, 25), /* PCIROR */ + MAKE_64BIT_MASK(0, 22), /* PCIWOR */ + MAKE_64BIT_MASK(0, 9), /* TLTIM */ }; =20 typedef struct DinoState { --=20 2.21.1 From nobody Thu Apr 25 23:33:24 2024 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; dkim=fail; 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1581637474430133.8788802170899; Thu, 13 Feb 2020 15:44:34 -0800 (PST) Received: from localhost ([::1]:32814 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O9p-0003ty-74 for importer@patchew.org; Thu, 13 Feb 2020 18:44:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57361) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O7I-00086u-CU for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j2O7G-0002tV-UB for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:56 -0500 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]:36572) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j2O7G-0002sn-N1 for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:54 -0500 Received: by mail-wm1-x341.google.com with SMTP id p17so8711082wma.1 for ; Thu, 13 Feb 2020 15:41:54 -0800 (PST) Received: from x1w.redhat.com (78.red-88-21-202.staticip.rima-tde.net. [88.21.202.78]) by smtp.gmail.com with ESMTPSA id d4sm1521065wra.14.2020.02.13.15.41.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 13 Feb 2020 15:41:53 -0800 (PST) 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=p+fZQCjb1hbct71LIEEtkNrCEMO2FOGV6oj8x/rd5ec=; b=Rp+T1fk2ar45Lox5hxBgRY8s8RJdnbx6qLrZmBqdOuc5+LjY8TgsW/jH1TiHj7NYnS 4Y4Uu91+wuG0XPi4stINYFz2Vni/1pNEDrRLGEL3kfIjxRCnraewJfxtyTnX863OHKaI DEjamTVDKb0Y/SvyAMnIDavSpCdBB+ssFQ34bqYkAizbPlZwNU7XoMVjdOb1PBv4YlkS Vho/kqW4du+ps+aopVw7/BV1tHi5Tgifa9zDhfWpmg235/PFaoTNv9S6QLscppnbT0Iu kmaDPRBb0V/fuHZtGc2hV+MX0b+DKdUGnS86GA4BNsBVK8PrJ7MJzUxWPHeITsmO94/8 3c8A== 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=p+fZQCjb1hbct71LIEEtkNrCEMO2FOGV6oj8x/rd5ec=; b=uAllIbIjFRCj/xjMuvat9RHYlj5v6YoScXUep9/4WiZpYFlsYI/F5GBMCaBXmC+J3d TCOI9KDxQAKqmZ2VNdzir5fVM0//lZ2JNl8RRzqF7wvtSRpyN7rTbUxyexGJZMxAYOuS U65pa3FDDHI6K1rAuAcxtWFc7lcGg7tStZhCovTLpiilZ0ZbXpRZ8BgOZ90vTTCEyGMJ tLB1KKMCR29tZUDjRkukgwiP32TC6DePsW3gvpYKrPrQ8d+D3Geeg/6PN7TuzSnACOF1 Onlzj2pT7ozu1OEinNUwr/WYlK1rUvnUQmT1lrkwdYBCd4lQSKRRDOWd0p+rvOpo01Pp bBrQ== X-Gm-Message-State: APjAAAXc2Nw7nEcxU+74vYJ9IaZG9QY3iMBb4AE0P4GaCJXhSPlfc6z/ CRvSJNy7tARxIMv4QB8TBqo= X-Google-Smtp-Source: APXvYqw2/k2tOQFJZUxSddH4FUQ3B3yI4+J3AQqu86+jktT183OdndTjUrHLTVknxPzNbVCbLL5GJQ== X-Received: by 2002:a1c:960c:: with SMTP id y12mr482260wmd.9.1581637313731; Thu, 13 Feb 2020 15:41:53 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Sven Schnelle , qemu-devel@nongnu.org, Helge Deller Subject: [PATCH 2/4] hw/hppa/dino: Fix reg800_keep_bits[] overrun (CID 1419393 & 1419394) Date: Fri, 14 Feb 2020 00:41:46 +0100 Message-Id: <20200213234148.8434-3-f4bug@amsat.org> X-Mailer: git-send-email 2.21.1 In-Reply-To: <20200213234148.8434-1-f4bug@amsat.org> References: <20200213234148.8434-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::341 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Coverity reports: *** CID 1419393: Memory - corruptions (OVERRUN) /hw/hppa/dino.c: 363 in dino_chip_write_with_attrs() 357 /* These registers are read-only. */ 358 break; 359 360 case DINO_GMASK ... DINO_TLTIM: 361 i =3D (addr - DINO_GMASK) / 4; 362 val &=3D reg800_keep_bits[i]; >>> CID 1419393: Memory - corruptions (OVERRUN) >>> Overrunning array "s->reg800" of 12 4-byte elements at element in= dex 12 (byte offset 48) using index "i" (which evaluates to 12). 363 s->reg800[i] =3D val; 364 break; 365 366 default: 367 /* Controlled by dino_chip_mem_valid above. */ 368 g_assert_not_reached(); and: *** CID 1419394: Memory - illegal accesses (OVERRUN) /hw/hppa/dino.c: 362 in dino_chip_write_with_attrs() 356 case DINO_IRR1: 357 /* These registers are read-only. */ 358 break; 359 360 case DINO_GMASK ... DINO_TLTIM: 361 i =3D (addr - DINO_GMASK) / 4; >>> CID 1419394: Memory - illegal accesses (OVERRUN) >>> Overrunning array "reg800_keep_bits" of 12 4-byte elements at ele= ment index 12 (byte offset 48) using index "i" (which evaluates to 12). 362 val &=3D reg800_keep_bits[i]; 363 s->reg800[i] =3D val; 364 break; 365 366 default: 367 /* Controlled by dino_chip_mem_valid above. */ Indeed the array should contain 13 entries, the undocumented register 0x82c is missing. Fix by increasing the array size and adding the missing register. CID 1419393 can be verified with: $ echo x 0xfff80830 | hppa-softmmu/qemu-system-hppa -S -monitor stdio -di= splay none QEMU 4.2.50 monitor - type 'help' for more information (qemu) x 0xfff80830 qemu/hw/hppa/dino.c:267:15: runtime error: index 12 out of bounds for typ= e 'uint32_t [12]' SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /home/phil/source= /qemu/hw/hppa/dino.c:267:15 in 00000000fff80830: 0x00000000 and CID 1419394 with: $ echo writeb 0xfff80830 0x69 \ | hppa-softmmu/qemu-system-hppa -S -accel qtest -qtest stdio -display n= one [I 1581634452.654113] OPENED [R +4.105415] writeb 0xfff80830 0x69 qemu/hw/hppa/dino.c:362:16: runtime error: index 12 out of bounds for typ= e 'const uint32_t [12]' SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior qemu/hw/hppa/dino= .c:362:16 in =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D29607=3D=3DERROR: AddressSanitizer: global-buffer-overflow on addre= ss 0x5577dae32f30 at pc 0x5577d93f2463 bp 0x7ffd97ea11b0 sp 0x7ffd97ea11a8 READ of size 4 at 0x5577dae32f30 thread T0 #0 0x5577d93f2462 in dino_chip_write_with_attrs qemu/hw/hppa/dino.c:3= 62:16 #1 0x5577d9025664 in memory_region_write_with_attrs_accessor qemu/mem= ory.c:503:12 #2 0x5577d9024920 in access_with_adjusted_size qemu/memory.c:539:18 #3 0x5577d9023608 in memory_region_dispatch_write qemu/memory.c:1482:= 13 #4 0x5577d8e3177a in flatview_write_continue qemu/exec.c:3166:23 #5 0x5577d8e20357 in flatview_write qemu/exec.c:3206:14 #6 0x5577d8e1fef4 in address_space_write qemu/exec.c:3296:18 #7 0x5577d8e20693 in address_space_rw qemu/exec.c:3306:16 #8 0x5577d9011595 in qtest_process_command qemu/qtest.c:432:13 #9 0x5577d900d19f in qtest_process_inbuf qemu/qtest.c:705:9 #10 0x5577d900ca22 in qtest_read qemu/qtest.c:717:5 #11 0x5577da8c4254 in qemu_chr_be_write_impl qemu/chardev/char.c:183:9 #12 0x5577da8c430c in qemu_chr_be_write qemu/chardev/char.c:195:9 #13 0x5577da8cf587 in fd_chr_read qemu/chardev/char-fd.c:68:9 #14 0x5577da9836cd in qio_channel_fd_source_dispatch qemu/io/channel-= watch.c:84:12 #15 0x7faf44509ecc in g_main_context_dispatch (/lib64/libglib-2.0.so.= 0+0x4fecc) #16 0x5577dab75f96 in glib_pollfds_poll qemu/util/main-loop.c:219:9 #17 0x5577dab74797 in os_host_main_loop_wait qemu/util/main-loop.c:24= 2:5 #18 0x5577dab7435a in main_loop_wait qemu/util/main-loop.c:518:11 #19 0x5577d9514eb3 in main_loop qemu/vl.c:1682:9 #20 0x5577d950699d in main qemu/vl.c:4450:5 #21 0x7faf41a87f42 in __libc_start_main (/lib64/libc.so.6+0x23f42) #22 0x5577d8cd4d4d in _start (qemu/build/sanitizer/hppa-softmmu/qemu-= system-hppa+0x1256d4d) 0x5577dae32f30 is located 0 bytes to the right of global variable 'reg800= _keep_bits' defined in 'qemu/hw/hppa/dino.c:87:23' (0x5577dae32f00) of size= 48 SUMMARY: AddressSanitizer: global-buffer-overflow qemu/hw/hppa/dino.c:362= :16 in dino_chip_write_with_attrs Shadow bytes around the buggy address: 0x0aaf7b5be590: 00 f9 f9 f9 f9 f9 f9 f9 00 02 f9 f9 f9 f9 f9 f9 0x0aaf7b5be5a0: 07 f9 f9 f9 f9 f9 f9 f9 07 f9 f9 f9 f9 f9 f9 f9 0x0aaf7b5be5b0: 07 f9 f9 f9 f9 f9 f9 f9 00 00 00 00 00 00 00 00 0x0aaf7b5be5c0: 00 00 00 02 f9 f9 f9 f9 00 00 00 00 00 00 00 00 0x0aaf7b5be5d0: 00 00 00 00 00 00 00 00 00 00 00 03 f9 f9 f9 f9 =3D>0x0aaf7b5be5e0: 00 00 00 00 00 00[f9]f9 f9 f9 f9 f9 00 00 00 00 0x0aaf7b5be5f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0aaf7b5be600: 00 00 01 f9 f9 f9 f9 f9 00 00 00 00 07 f9 f9 f9 0x0aaf7b5be610: f9 f9 f9 f9 00 00 00 00 00 00 00 00 00 00 00 00 0x0aaf7b5be620: 00 00 00 05 f9 f9 f9 f9 00 00 00 00 07 f9 f9 f9 0x0aaf7b5be630: f9 f9 f9 f9 00 00 f9 f9 f9 f9 f9 f9 07 f9 f9 f9 Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb Shadow gap: cc =3D=3D29607=3D=3DABORTING Fixes: Covertiy CID 1419393 and 1419394 (commit 18092598a5) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Helge Deller --- hw/hppa/dino.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c index c237ad3b1b..8868e31793 100644 --- a/hw/hppa/dino.c +++ b/hw/hppa/dino.c @@ -83,7 +83,7 @@ #define DINO_PCI_HOST_BRIDGE(obj) \ OBJECT_CHECK(DinoState, (obj), TYPE_DINO_PCI_HOST_BRIDGE) =20 -#define DINO800_REGS ((DINO_TLTIM - DINO_GMASK) / 4) +#define DINO800_REGS (1 + (DINO_TLTIM - DINO_GMASK) / 4) static const uint32_t reg800_keep_bits[DINO800_REGS] =3D { MAKE_64BIT_MASK(0, 1), /* GMASK */ MAKE_64BIT_MASK(0, 7), /* PAMR */ @@ -96,6 +96,7 @@ static const uint32_t reg800_keep_bits[DINO800_REGS] =3D { MAKE_64BIT_MASK(0, 30), /* BRDG_FEAT */ MAKE_64BIT_MASK(0, 25), /* PCIROR */ MAKE_64BIT_MASK(0, 22), /* PCIWOR */ + MAKE_64BIT_MASK(0, 32), /* Undocumented */ MAKE_64BIT_MASK(0, 9), /* TLTIM */ }; =20 --=20 2.21.1 From nobody Thu Apr 25 23:33:24 2024 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; dkim=fail; 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1581637369318770.3929188867492; Thu, 13 Feb 2020 15:42:49 -0800 (PST) Received: from localhost ([::1]:32788 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O88-0000xQ-4J for importer@patchew.org; Thu, 13 Feb 2020 18:42:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57372) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O7J-00087h-15 for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j2O7I-0002ut-1I for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:56 -0500 Received: from mail-wm1-x344.google.com ([2a00:1450:4864:20::344]:54661) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j2O7H-0002u8-RW for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:55 -0500 Received: by mail-wm1-x344.google.com with SMTP id g1so8141408wmh.4 for ; Thu, 13 Feb 2020 15:41:55 -0800 (PST) Received: from x1w.redhat.com (78.red-88-21-202.staticip.rima-tde.net. [88.21.202.78]) by smtp.gmail.com with ESMTPSA id d4sm1521065wra.14.2020.02.13.15.41.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 13 Feb 2020 15:41:54 -0800 (PST) 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=ilhK2PUI4HwKsXGLBT+WPiq+otgNyfY04DB23QrFmJw=; b=drz3xSOR4LZ6A0Wf3412j4W/90A2CNH4N3dEE1jfsB8v6//Q0bD5zFIR4eTNzxGU3R bHrPTSHSrJlkNmSvY64LavRid6/ghfkXReBneAUROHrCZGAdEO0akBgzhHBkPdqbg58l 2xmVkJaTmM6jAoe5JslHjjIeE9FjJC8ZMDj/xSlOrd0+JbUoKZTqFBCjKPWvtZqUXKbj l5lDqsi9E2wrmnAeH/Ihqf4SGmq6DNS8p01SNnDBuJtq+fBTV3fPxsVSvpccD0bULKSd 6G7akHZv3jsN6EAmwYGkRrk4DUs+4zftrb/CkkCTOWY4j+RMTiboGqmvkP1s3V9OA4A4 35Xw== 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=ilhK2PUI4HwKsXGLBT+WPiq+otgNyfY04DB23QrFmJw=; b=PKBKCV6xpBXvFeMSPRexskYlQnSpWv8XqfX/FBPLii74HwfSa5bQJJTN7y3yTzVZKK wSNyp/xftXvqGegy4YowYK4FScFAJ/XjNRLXzCm0XY2KQ4WPv2KlpdtgveV+yj3PDmLV 0Bl7yQmy4Bjib3jS1yWka7XdSa8n5GR6Lhmwf2qCnfudcQDgyBJnGYPvU08jBBjrXhFE NKZX4ElK79WPBzhrTHzh/p9b0nvOWAvO/8X8m5St/4SWFZiIeSFqkRBzI/GX3Zm83bqd sZeXMudUDQhlNRDfgv8isMeSp9bwb8c1kSgW2v+4wOHiThMK53jU3BF+haUGMKKzytJN olTg== X-Gm-Message-State: APjAAAWpw7r63npEr/RS1D7oEHlq5bx8aYf98SJ6o9ZhtdeNeC5lZVB9 K5fjVhWnsowpahKL2HASyfo= X-Google-Smtp-Source: APXvYqzNKajWO2c0dkj5S6zO8WfOOY6l/3S0sFQo9N1MaHQ5/+D6knyPfIw5STgCKyPekmmox6ttRw== X-Received: by 2002:a1c:770e:: with SMTP id t14mr468548wmi.101.1581637315023; Thu, 13 Feb 2020 15:41:55 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Sven Schnelle , qemu-devel@nongnu.org, Helge Deller Subject: [RFC PATCH 3/4] hw/hppa/dino: Fix PCIROR register access bitmask Date: Fri, 14 Feb 2020 00:41:47 +0100 Message-Id: <20200213234148.8434-4-f4bug@amsat.org> X-Mailer: git-send-email 2.21.1 In-Reply-To: <20200213234148.8434-1-f4bug@amsat.org> References: <20200213234148.8434-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::344 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Only 24 bits of the PCIROR register are documented (see pp. 37 of datasheet referenced in this file header). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Helge Deller --- hw/hppa/dino.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c index 8868e31793..be799aad43 100644 --- a/hw/hppa/dino.c +++ b/hw/hppa/dino.c @@ -94,7 +94,7 @@ static const uint32_t reg800_keep_bits[DINO800_REGS] =3D { MAKE_64BIT_MASK(0, 32), /* Undefined */ MAKE_64BIT_MASK(0, 8), /* MLTIM */ MAKE_64BIT_MASK(0, 30), /* BRDG_FEAT */ - MAKE_64BIT_MASK(0, 25), /* PCIROR */ + MAKE_64BIT_MASK(0, 24), /* PCIROR */ MAKE_64BIT_MASK(0, 22), /* PCIWOR */ MAKE_64BIT_MASK(0, 32), /* Undocumented */ MAKE_64BIT_MASK(0, 9), /* TLTIM */ --=20 2.21.1 From nobody Thu Apr 25 23:33:24 2024 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; dkim=fail; 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1581637370284872.3712814972789; Thu, 13 Feb 2020 15:42:50 -0800 (PST) Received: from localhost ([::1]:32790 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O89-0000zc-0o for importer@patchew.org; Thu, 13 Feb 2020 18:42:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57397) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2O7K-00089H-6J for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:59 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j2O7J-0002wS-AY for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:58 -0500 Received: from mail-wr1-x441.google.com ([2a00:1450:4864:20::441]:46355) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j2O7J-0002vb-4V for qemu-devel@nongnu.org; Thu, 13 Feb 2020 18:41:57 -0500 Received: by mail-wr1-x441.google.com with SMTP id z7so8832116wrl.13 for ; Thu, 13 Feb 2020 15:41:57 -0800 (PST) Received: from x1w.redhat.com (78.red-88-21-202.staticip.rima-tde.net. [88.21.202.78]) by smtp.gmail.com with ESMTPSA id d4sm1521065wra.14.2020.02.13.15.41.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 13 Feb 2020 15:41:55 -0800 (PST) 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=K3jU1DlzIeT5aazRZD5c7uQ9ch7IHGbrpGTEyi2PlAw=; b=N7uK8Kyy6lM1lge8Vdsb5ibzr/N1UUN597O98Eeo8HitITIj+31VR1ivhhEgkyrAjN wGuCqD4u4ukEtTCr3bWsLebgMQfM2SiWmibLyuEZUgOqjRrWjJk5EtgdqLXCbF1g8WPM cMh1VxbQoB50ctAsmbq2OmSIJ3Z4rsy7kF27pnJ/MDkwMyLFn59V1AicuHMeA9us04jn mUEvBrriwYM4OC9KrQIF1JFTREq9snCXZqYzB40mIuQOtG8aolsDtieQ8OXqTo2dlRsc Y1W6+UAmO3yt6ZJJmoVOYIlBx9HRTVw6u1JYfMIJAUyMXjXpfr1O88YhCSHk26GTnysa 0jdw== 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=K3jU1DlzIeT5aazRZD5c7uQ9ch7IHGbrpGTEyi2PlAw=; b=cuuH0T89ugihJNFAg87RBR9Id+xwELMbl0ZP5HXJ4twNSFZhsPrgziTkDFCacD1x3W qoKs9R9CvhsHBysyIqy63Gtz3hIxGhUnKN2rzn1uMWLKWIc/Q69lT+2Us/08LYAKgNA6 /oZULKl5J+LlsUTF0BHqC7qYDDAVWO5tAc5PySx49XmWYn7ni0XThJrzvRNsbSqUUqj8 Nk0MQP/Vp99QkRsjwDbu6BFFtDJs9ZPjbs+668fCNP6KIZcgkkGRmmffdSaxFi0X/MzH aJ7BcgDTHD6NIiZFtXM0AL1AyYeB5YKYQr8b/hcCFC/Jk5JXJ0133yJA+GGecsmS+XKI /TaA== X-Gm-Message-State: APjAAAVxLk+lqNEgkscV7mRLhH5DQTptXoVOTQ80gaOczG99zHnB/Kv2 dAqs/tNhIdl9HIJRNVMDUjM= X-Google-Smtp-Source: APXvYqy4/ysfFEayBzEZO9SA6LVO8yVI3yyLcMsgJz7rYe+t02Z3BzjQbbWy7DRRWzLqwSdFOyiiOw== X-Received: by 2002:adf:b254:: with SMTP id y20mr23698402wra.362.1581637316147; Thu, 13 Feb 2020 15:41:56 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: Sven Schnelle , qemu-devel@nongnu.org, Helge Deller Subject: [RFC PATCH 4/4] hw/hppa/dino: Do not accept accesses to registers 0x818 and 0x82c Date: Fri, 14 Feb 2020 00:41:48 +0100 Message-Id: <20200213234148.8434-5-f4bug@amsat.org> X-Mailer: git-send-email 2.21.1 In-Reply-To: <20200213234148.8434-1-f4bug@amsat.org> References: <20200213234148.8434-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::441 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: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Register 0x818 is documented as 'undefined', and register 0x82c is not documented. Refuse their access. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Helge Deller --- hw/hppa/dino.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/hppa/dino.c b/hw/hppa/dino.c index be799aad43..2b1b38c58a 100644 --- a/hw/hppa/dino.c +++ b/hw/hppa/dino.c @@ -181,7 +181,9 @@ static bool dino_chip_mem_valid(void *opaque, hwaddr ad= dr, case DINO_IO_ADDR_EN: case DINO_PCI_IO_DATA: case DINO_TOC_ADDR: - case DINO_GMASK ... DINO_TLTIM: + case DINO_GMASK ... DINO_PCISTS: + case DINO_MLTIM ... DINO_PCIWOR: + case DINO_TLTIM: ret =3D true; break; case DINO_PCI_IO_DATA + 2: --=20 2.21.1