From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646812; cv=none; d=zohomail.com; s=zohoarc; b=SGXRcHLK8cfIIALDVS+vt6+XWTLq6Igjmj0x9DM+aUMRLwL3xjJLYiHeu5u4CZZg1e8HGc5XAeZyXUDRuR1ImQzba/tWnBfvBZ4yk5ML8CN6qQpASJ7bU1eUAbUDReTUf7pux8l7r2fCWHXktacN+xdbxVio4ATubhXdCGbxUoA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646812; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=wJNY+f2TrbCPXZjzOHz0yYvcyj3qPpUKW0IeXPo8WUg=; b=KUV4wC+vAhbyIsTtpzFWIoNGS77vshHO8TRyLgOAhNAPZraTynz6k0Kple4PYBmTv+v5+1gHmYEkkYTYCi3zfk+Z27aazwPUHOuXfh3j3Jd1mKFgYd8Tmz+JXaL736FSx3qyAZbuDOVrU3vEhdpP/HOjMdf5zEWAZG3AgkFGcMk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646812792365.0474287886493; Fri, 27 Mar 2026 14:26:52 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6Eh2-0002nA-Cv; Fri, 27 Mar 2026 17:26:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Eh0-0002ma-P2 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:10 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Egz-0003Z5-A6 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:10 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-580-gjcF7hhAP4e7VhACLEEk8A-1; Fri, 27 Mar 2026 17:26:03 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-4837bfcfe0dso27542805e9.1 for ; Fri, 27 Mar 2026 14:26:02 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48722c957b9sm177875095e9.8.2026.03.27.14.25.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:25:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646768; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=wJNY+f2TrbCPXZjzOHz0yYvcyj3qPpUKW0IeXPo8WUg=; b=cQlJ79XF4MqjS1D5uhNHAEFpZVhpbnlsm6JZI1ZgI24R+9TeCUYsX+Sunm7h/uNSrE3fvA SiJj9HQpQhAlt6yke4il92JfdrpN2qjKih0l1kfJW1kjieEupubRLS+e0poxdTwwik/gi0 UVJgGuZa/xKQcOQfPTKQ5nxq3L1FXUA= X-MC-Unique: gjcF7hhAP4e7VhACLEEk8A-1 X-Mimecast-MFC-AGG-ID: gjcF7hhAP4e7VhACLEEk8A_1774646762 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646759; x=1775251559; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=wJNY+f2TrbCPXZjzOHz0yYvcyj3qPpUKW0IeXPo8WUg=; b=XyEIsS5X347kRqY+hkVNQ8uptXOrbKrIDmdK0QzNo0voteAoB/+kTDfMjKJnbqIfPI AmHy5DIgnW5eKF2fHDPSbLONXTgN6ADqSAFlsecutxLyJRiKTISjywJvk5UODZh59dMH nte/E1ie1wjM4ITovSRoQxK77vZopLUj8U0hi5S7ulp8VxPw1bakC6mUJ6tEvO47uU4L gWiD1YSiWncwa2tq4X3TJJSfXR7jjnQIYJC2wyyyWw0g/B6GVCE+L1haePVKeIKc1jcK B0JJkJJozX3JDi3glGSRpbCTgXnKP91c6qR6uRcInsEpqCscePm5OoigP0NUCYCZvF2m FXbw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646759; x=1775251559; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=wJNY+f2TrbCPXZjzOHz0yYvcyj3qPpUKW0IeXPo8WUg=; b=OoTprRt4KtinIwA9YJpT0KpSCM0vX5GQIni65nx65c2dpSztVSBNqedSfnXzZ5CPTy +KHewwnICegcoTK3xlQfSHF6R/UxgM6n5MeGpglu0Ve6O8JysIWl97Pu2fgpyqoo6iD0 K04vRAUCmiZfSUy4iJ+viaC70A7DLvBD7KKEZfg+HiJ+5ABFfrQGpA3sISqmz/Wyb2d2 /rUlO59Dn5um2FMHL4XjTSt5khQLR3TCgSuNKlS3gOrUSFyGs9z3N7UyATL3byDpERnD Mbts37C6LQtLJg/1CGRBQkREi7m/W703aqz6c+inwGfNisFo/tJNZoBjYnAlIkLGKF1I NvxQ== X-Gm-Message-State: AOJu0Yyh6wU1fbluyPwvC9Ld41HNgt8kz/hH7jdWluYcHyekWf4oQiAz voarojzdIYDTURiZ2g6u9eMDt/cwSoc4xgqhQ6aOJ9D4BX4uNg6/uX9DgEuN3FJfwngtOWr4iBN lw7dv1ZwCqoy80SgMitke6O2T/HinhXGDEFWFHNld2U+sAVcwwfKajQsARnhxwFJmaNABF0jovX z17vjSyoFWdRmxU50PrLmrXpHuTBU8MEKfMub8fboc X-Gm-Gg: ATEYQzxf3YhTYDOl0cMF6KW5i1vtO1n4k7m9v3seFlER4pPpkD4zlsaU3VXZ05QApaO tL2hkScEqddQN4XaE+IAuxifQ/lPyaf8tNXGEiO/E+F9QmNyaMf/t3YEG3Of8l3/4LEQwNnUGyY BuxPNrPFmRDo4rv2KQH+WlNYOtUt/m9InBj0pF823g5HMHLHnKHLCcUU/OFNB6BIbm7t0Sq5ovt fzQx2rxm2Ofc02w9O8qgbfoM4uW+7R5J9ilH1oI6hTZWuKpfu9823/FdnpoJaxa8R5yE+GGoIj8 XD488EZn9HpiicrWh+WHzLOzuu7LGAHZJQuO1u64N7Av/j8+ZxRcWGUBE4BA2PQWJVwPSKQZRUv Rni+Al9SgKy7zKDLNUg+1RvKpNdgMZmaO9JCKH9rKUR2keF1gAewOLQluohFu7a02XGSmmxAFEL gTB5UxE94TEDHuFRv14htC48ra X-Received: by 2002:a05:600c:1d15:b0:483:703e:4ad9 with SMTP id 5b1f17b1804b1-48727ee9b10mr66677365e9.19.1774646759406; Fri, 27 Mar 2026 14:25:59 -0700 (PDT) X-Received: by 2002:a05:600c:1d15:b0:483:703e:4ad9 with SMTP id 5b1f17b1804b1-48727ee9b10mr66677095e9.19.1774646758921; Fri, 27 Mar 2026 14:25:58 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller , qemu-stable@nongnu.org Subject: [PATCH 01/16] lsi53c895a: keep a reference to the device while SCRIPTS execute Date: Fri, 27 Mar 2026 22:25:32 +0100 Message-ID: <20260327212547.460420-2-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646814596158500 Content-Type: text/plain; charset="utf-8" SCRIPTS execution can trigger PCI device unplug and consequently a use-after-free after the unplug returns. Avoid this by keeping the device alive. Resolves: https://gitlab.com/qemu-project/qemu/-/work_items/3090 Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini --- hw/scsi/lsi53c895a.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index 6f43e500b3c..90643b26ab8 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -1163,6 +1163,7 @@ static void lsi_execute_script(LSIState *s) s->waiting =3D LSI_NOWAIT; } =20 + object_ref(s); reentrancy_level++; =20 s->istat1 |=3D LSI_ISTAT1_SRUN; @@ -1182,6 +1183,7 @@ again: s->waiting =3D LSI_WAIT_SCRIPTS; lsi_scripts_timer_start(s); reentrancy_level--; + object_unref(s); return; } insn =3D read_dword(s, s->dsp); @@ -1630,6 +1632,7 @@ again: trace_lsi_execute_script_stop(); =20 reentrancy_level--; + object_unref(s); } =20 static uint8_t lsi_reg_readb(LSIState *s, int offset) --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646840; cv=none; d=zohomail.com; s=zohoarc; b=juDMipx4OLrNemFFDdYB4l0iejWLbtc0cFg+OgYGjy4e/muIcWgfw3PshzgIysxZ7shcuwM/MuAf3lVG4m1qAARNAk+BEXfr59qVqBBfJp+Iv0uXZeuUuwow2bKim3lD3HQbr/zftx/o8U7kntZfeId3D6LA3ulAkP6B6eAHhUA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646840; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=zFuDFxFNBz8vOIyKGhG3CH3xVbSczlhaNd9Na1ywSeg=; b=FN65SoBnLI0pm3I00CZFpEzvOylUezQQ5ZcuO070iFxh3+LRl+m8RNpQVn6GCviDCnhi43YK+2cEdV6Q27CcIJFEGZFsryJcWneVFfxljnbDQYqdMVvgxtUXYHJ+dJZ3XN3VcugbP7mVzzIz0V/AdKLD2nX/OE2lvBPS8joJubY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646840879252.0395155779513; Fri, 27 Mar 2026 14:27:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6Eh2-0002nX-SD; Fri, 27 Mar 2026 17:26:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Eh1-0002mz-OM for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:11 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Eh0-0003ZH-Cz for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:11 -0400 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-689-xb1ssxpIN-C3VSlnInsv4g-1; Fri, 27 Mar 2026 17:26:08 -0400 Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-4853466655dso10106695e9.3 for ; Fri, 27 Mar 2026 14:26:07 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4873068858bsm6251665e9.9.2026.03.27.14.25.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646769; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=zFuDFxFNBz8vOIyKGhG3CH3xVbSczlhaNd9Na1ywSeg=; b=XdLPOvEwosTVwZ9qPP9Wqblh7u0GwpTAyl70GFjfvPKiFoVNXWRVSwSac3ptIBilNQixzG po/mtO0CP4u7xg30kFAZDH37DF85alBhpsEKGzknkRHicIHK4sis4Qv38hcK80vonEKqcB vgmXKaLxt6uXhTFw2MYdMFbkGWhiW3M= X-MC-Unique: xb1ssxpIN-C3VSlnInsv4g-1 X-Mimecast-MFC-AGG-ID: xb1ssxpIN-C3VSlnInsv4g_1774646767 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646765; x=1775251565; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zFuDFxFNBz8vOIyKGhG3CH3xVbSczlhaNd9Na1ywSeg=; b=IxmJJrM7LolAv7QTDnSCejukZ+ES7R8UdGyklccecEWiq0cnhYtddC9IxfttIEWzjB rs75THSrmUczZ2DckbnOmsxTRwISXKrdUkRJQnj5i0VdUFY3GwEnbilwaWBhOgFjM6mf o1x3vn8pWpA/JjeIrpXgwaGM/q6H2RpOw9px7hlDRc0AUyhGUPMui1NPKbc3yaTrVlFf FivfCFk/BMtk5JfkMlwvgYU0pT52468b7xDsPNiQ1o174JGwGnO0nFO+KeubJWulZkj1 YdjSVxPk99pNn3Agbiy4Z+4Itn5lnAhNC3ZxGw0Blt8IIbSMKJ7XsR5XgWo6lFkiCr6O WHvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646765; x=1775251565; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=zFuDFxFNBz8vOIyKGhG3CH3xVbSczlhaNd9Na1ywSeg=; b=OiC6CUdcgQbsjTYUrDMEp1ME+p3fJn7J7xIgdBcy5eAh62w19kEWQzx+qD+X2cePed jkZMxotuaTcmWUJxYopZyUDoLxmFOF8LdwSTta2m1/csLs0V3Cn75FJ1lBRYPBZ7uPJo d5BiVh9uvYGSgihdZjzJ902I46qm8bx5vURJuhDGQZPGxFGTcJzW5n22f/Awbgv8kl31 eKcOIJf9wvc1HEOogZGnkXvgTNFJflNHRSfCrfToRPuR11FlkqMdU/6jOF68OtA+zOsV pXnBqTOqsbsDWlU6DGS9+8Ej+5C4f33HwFrCAtfAMoGtB1eziN/v8Z2ga2ht3f/pYFv/ KUJw== X-Gm-Message-State: AOJu0YygIKBoUnMQmx3cWKqhP7WICdEwqIdsYjJIl+UXDj9O2zW7XF3J 7uoKpMo4yw8bJfrSDV//AwqdlM4piO4KnuQkOGl/W9z+4TeOr3Q5ViLZ7ulxpjq+k/EBMdd5BuE +NzIfAAa8GYLSvzdje5MvOO8kPuDUBVcy6c+JfrwDkekaHH+lb444pr554LPPjCk57dKAKsIH3/ 90/XSJ9Km1GACKUuFNPinPYy9r9F1svz3e/RpLA1XZ X-Gm-Gg: ATEYQzxVD7TBHNTqFEXwq6emBhhpAymzdAXlCLh5WqtiK3B6/QOf8mAchXr1LFQ8LLg 5iwKXtWKrmJx5A0muquYJw35VJTlTlnH6aL44KfxlWKoSj5tnnBqGPzKGui1DkomeyimSQ1ohrN 3UvI4G8es/n1bMv9G7gf8oFhaUkEfd0AJI5Vkr12Kf4oqgbo0AIbEsqqQQBtZUsPrStdVgEApCI KxhjpUNpfHa3ppiwy4PJ9Ml/JgBNq00cAtH/EbjPt0kTJ0iKpBiuRG4DPl2EfHlGna4SEfCRGOD i4gqHGB4TzpK2VLFWmBZ7u7IQkuO67R4ZMOSANBBy2oZal6aQJl16Z7FuoO4grg8kNqFweouC5s dfW3hUCRBuv9fql9mtZXzDyae0f+LyeEyC0dEJhYBFkDlZjwY8waclUIOBGQWvKM1BN9fApzdDj Eznfa5Fk5qfvsKyLoXuxU5vd9H X-Received: by 2002:a05:600c:81c5:b0:46e:4e6d:79f4 with SMTP id 5b1f17b1804b1-48727e90ec7mr60750035e9.15.1774646764876; Fri, 27 Mar 2026 14:26:04 -0700 (PDT) X-Received: by 2002:a05:600c:81c5:b0:46e:4e6d:79f4 with SMTP id 5b1f17b1804b1-48727e90ec7mr60749765e9.15.1774646764337; Fri, 27 Mar 2026 14:26:04 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller , qemu-stable@nongnu.org Subject: [PATCH 02/16] lsi53c895a: do not do anything else is a reset is requested by writing ISTAT0 Date: Fri, 27 Mar 2026 22:25:33 +0100 Message-ID: <20260327212547.460420-3-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646842354158500 Content-Type: text/plain; charset="utf-8" If the device is reset, anything that is done before will not really be visible. So do the reset and exit immediately if that is one if the requests in the value written to ISTAT0. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini --- hw/scsi/lsi53c895a.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index 90643b26ab8..81b4f93f4d3 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -1949,6 +1949,10 @@ static void lsi_reg_writeb(LSIState *s, int offset, = uint8_t val) CASE_SET_REG32(dsa, 0x10) case 0x14: /* ISTAT0 */ s->istat0 =3D (s->istat0 & 0x0f) | (val & 0xf0); + if (val & LSI_ISTAT0_SRST) { + device_cold_reset(DEVICE(s)); + return; + } if (val & LSI_ISTAT0_ABRT) { lsi_script_dma_interrupt(s, LSI_DSTAT_ABRT); } @@ -1962,9 +1966,6 @@ static void lsi_reg_writeb(LSIState *s, int offset, u= int8_t val) s->dsp =3D s->dnad; lsi_execute_script(s); } - if (val & LSI_ISTAT0_SRST) { - device_cold_reset(DEVICE(s)); - } break; case 0x16: /* MBOX0 */ s->mbox0 =3D val; --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646812; cv=none; d=zohomail.com; s=zohoarc; b=cwDQF22DUcGMF7wRYvSYdGj/C3QoN0VD6Km4PYmYiuxZMrI0ahF4FUNT57TjhgppyTPKhvA8bGVmCkfpd9Hx+aoLou+GP54/1KgZXDjm/daR8W1YSSjaAMT4HzWggracumG+YqD7Xt+gg5zya6U1SJ99O0xmYxw3jXEUwB6gO+c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646812; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=XB8m7Sndyux0qiJrEVjHOmARiOQkTMH4+4NUfWzFM0Y=; b=OFSnlLNIt9OHmmCisI5ypaayvbuDSyJicsJsZNBnxc07BcasNI9Ws15GCXgGLwKYTsnDDhudgi/RauPGL0TygmGc7eg23jrkKbyn4LO+qJC8UgyKr/8KthMjyfeaQNXhMQOjMADMTWEt0lONi6JOt01oDXubH4aF50oU7RGyDBU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646812538351.27805322015377; Fri, 27 Mar 2026 14:26:52 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EhC-0002pc-NS; Fri, 27 Mar 2026 17:26:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhA-0002p9-Vh for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:21 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Eh7-0003bW-Gu for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:18 -0400 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-336-s9pHYuhnNYu7LVNfjoc0rA-1; Fri, 27 Mar 2026 17:26:13 -0400 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-439f5c57c52so735573f8f.1 for ; Fri, 27 Mar 2026 14:26:13 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf21e2487sm808172f8f.5.2026.03.27.14.26.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646777; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=XB8m7Sndyux0qiJrEVjHOmARiOQkTMH4+4NUfWzFM0Y=; b=CvJ8+sxSLLZQ9RZisbFGDH9D2rTjlUUjtv07qpUAxWlfz4Lmb7nvEeJLsLCNvE2L1Fwm3C Pxdux/emwmHNOhp59mnM21Et5KDSH+Nu6JJ63jbNmxnMqUm34rDHsyN7mpL+s1flo/dsen cocoMv+yvayT8hmn95C73sU59umvVm0= X-MC-Unique: s9pHYuhnNYu7LVNfjoc0rA-1 X-Mimecast-MFC-AGG-ID: s9pHYuhnNYu7LVNfjoc0rA_1774646773 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646771; x=1775251571; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XB8m7Sndyux0qiJrEVjHOmARiOQkTMH4+4NUfWzFM0Y=; b=qUiiukuUHFeQaAetHd3uKKFJBynp797tO7Gjxc88LnFSs2SrgwZ/hLM0ysLSZIF11a 4OB+znHbFI0ieWvMIsC3TspFmbTdyqsD4G9+UfEnXFlbW+C6FltHs8jw2tqiX/UDha52 vGJ2GyJq3rcoUa3K+u18ifxj+CC1LCbGN//yeaNyIIr+HtOO5gSoO0whnIPqN3zAH2qn /19gDVr+/muOMmEjHC6d+kdrrN8YSTCrmXgxxB5uXqIr7QkpXBlmQjMfA0UHH8h9sPem CW7z0/Uk7nzBdGl9CNDvygjwFnPAuIep88WF82JOkDM1Yw69PAp00zRWK23eaEaB7wvL mXwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646771; x=1775251571; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=XB8m7Sndyux0qiJrEVjHOmARiOQkTMH4+4NUfWzFM0Y=; b=Euc3tgpV7tVkYyidFZw7I3hIxXTepk9jmU3Id+ZFs/H+Vmb8Ype+tC/0P/I+0yvzEV 3CJPyUA6u8XedklnwOMuYNa1qN0Mkt4KfV85rFJdRUxh1nTODEfThO58E5XicB+YDABD WTMsFvw8fRHYe9VC5BsIp4eiIvJ6xv9485jsYO1Ec1YSSs+yAHizFNeniTj3KhHbnO+8 KNaeLY6w/ZQtZ7JuX89b3I5ZQfkwNUl4HWV8oKsZJ+anKHcRRlIyZdgKc+UXGzawygrs iHkgap6F7/walHc2KM7bSxkmUTce/fW+yocRQJDWNZWZ2903OEGBLA0+rrD3m42eCAto k2xg== X-Gm-Message-State: AOJu0YzXKaPOFyX2S6CzQL0A9+h23L20YNkNgJI8hRN2Ws1WnescRflm a/p+M/vV1wiMQdjAvlpEGnUVEMEQd0yvir9/iKdofgup6iUrpuJM2O4MDpi6jGbRpuraxRyfiZY 7CQ6VIA7dwQdJ3DIUta+qOxKK309NH+SZWK9D9xvJ/SuLEebzC90xqBDR8/o+l+A1RYJHzxQy44 /wEx7st789ri/3t6/IJg0IGGoRy56Onrm+aw5Rz1XS X-Gm-Gg: ATEYQzzHtVdfdZTwGR+iwdVPzGe4a2cUeVQcbIcVMOpqqDWicccDgdaPfFx3XxQ4YF1 tpRrGKQWqtVVZzHowq4pQvDqc5Hd0Xca6TXft1uDb2boOUP9eYE1kmnbSLt1iMIX+Hr46pAw9Ws t18vg8YB6sv6Z2WppPykxAbuR662a9dunZqMiva+mPvaLI7pfSFudnqlXp/XFc0u8P/85wPdPIX AZbqYopAnxX03/t06kvwb810xMdfGryfyb0CRS6emTGb5TcxV5IJ4sfGKdknbfeC2cItfPOK+ck 9Jv2JOLTWVLXgYGV/ZxgnNdhOhn6bOMBtJAqS/UJLUwR0DozbxSCrU8lq1t78mXYnUgilxtFVUo O7+KVTgawkbaGUuv2BqXvzqXfchaKAqMKbsqIVhbS59A8+Oz7QkpBNFA2rNMZpm8ncbTr1sAHUA 6VtwFXG2/ogdNnZjPMjjF5lLL9 X-Received: by 2002:a05:6000:40dd:b0:43b:445f:3177 with SMTP id ffacd0b85a97d-43b9e9e83f6mr6360011f8f.31.1774646771012; Fri, 27 Mar 2026 14:26:11 -0700 (PDT) X-Received: by 2002:a05:6000:40dd:b0:43b:445f:3177 with SMTP id ffacd0b85a97d-43b9e9e83f6mr6359983f8f.31.1774646770527; Fri, 27 Mar 2026 14:26:10 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller , qemu-stable@nongnu.org Subject: [PATCH 03/16] lsi53c895a: keep lsi_request and SCSIRequest in local variables Date: Fri, 27 Mar 2026 22:25:34 +0100 Message-ID: <20260327212547.460420-4-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646814616158500 Content-Type: text/plain; charset="utf-8" Protect against changes from reentrant device MMIO during DMA, by always operating on the same request. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini --- hw/scsi/lsi53c895a.c | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index 81b4f93f4d3..1180e601811 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -626,6 +626,8 @@ static void lsi_do_dma(LSIState *s, int out) uint32_t count; dma_addr_t addr; SCSIDevice *dev; + SCSIRequest *req; + lsi_request *p; =20 if (!s->current || !s->current->dma_len) { /* Wait until data is available. */ @@ -633,12 +635,14 @@ static void lsi_do_dma(LSIState *s, int out) return; } =20 - dev =3D s->current->req->dev; + p =3D s->current; + req =3D s->current->req; + dev =3D req->dev; assert(dev); =20 count =3D s->dbc; - if (count > s->current->dma_len) - count =3D s->current->dma_len; + if (count > p->dma_len) + count =3D p->dma_len; =20 addr =3D s->dnad; /* both 40 and Table Indirect 64-bit DMAs store upper bits in dnad64 */ @@ -653,21 +657,22 @@ static void lsi_do_dma(LSIState *s, int out) s->csbc +=3D count; s->dnad +=3D count; s->dbc -=3D count; - if (s->current->dma_buf =3D=3D NULL) { - s->current->dma_buf =3D scsi_req_get_buf(s->current->req); + if (p->dma_buf =3D=3D NULL) { + p->dma_buf =3D scsi_req_get_buf(req); } /* ??? Set SFBR to first data byte. */ if (out) { - lsi_mem_read(s, addr, s->current->dma_buf, count); + lsi_mem_read(s, addr, p->dma_buf, count); } else { - lsi_mem_write(s, addr, s->current->dma_buf, count); + lsi_mem_write(s, addr, p->dma_buf, count); } - s->current->dma_len -=3D count; - if (s->current->dma_len =3D=3D 0) { - s->current->dma_buf =3D NULL; - scsi_req_continue(s->current->req); + + p->dma_len -=3D count; + if (p->dma_len =3D=3D 0) { + p->dma_buf =3D NULL; + scsi_req_continue(req); } else { - s->current->dma_buf +=3D count; + p->dma_buf +=3D count; lsi_resume_script(s); } } --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646812; cv=none; d=zohomail.com; s=zohoarc; b=iIX3yse9IdMm9wn9s4UhN/qAy3BARzBsZPhJZs2NFiS3q8rdr5dCoDIy/DAr8GWuUO2Q560/WfvzsRtlqDiUsPb8c22PWqne3E6rtgew4fNL6cUPsIP5kkASbI6yG13TF9DPavMICbv156cWWS+nESaCaJrVmmR1pgqK/uNuQxU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646812; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=N96Cvh9nP6r8XFXHnMsPNyo3ZrU8DUpNDRPrE2edM1c=; b=K3bgTTCUg8udcuWU0P2qrX53mcGjwtGvT2b5fowybyj6pqbj0u/6piYlVnMtfPZyAt5vwNzbo3KnRM9eq4LysfaM01SBQsI13V6+K/ZDKZxpzrwoKYeYS3Y1XjZmUc3po47GyipGC5p3YwrfdqiD8EL+FFHQJ9aYCLx6KpzIe7Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646812265547.6014378585907; Fri, 27 Mar 2026 14:26:52 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EhF-0002qX-US; Fri, 27 Mar 2026 17:26:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhE-0002q7-Qh for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:24 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhD-0003cI-9k for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:24 -0400 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-477-_vk_PstNPP6cJuuFZaSO_A-1; Fri, 27 Mar 2026 17:26:21 -0400 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-43b8c472f3eso1665370f8f.0 for ; Fri, 27 Mar 2026 14:26:21 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf21f279bsm768401f8f.16.2026.03.27.14.26.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646782; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=N96Cvh9nP6r8XFXHnMsPNyo3ZrU8DUpNDRPrE2edM1c=; b=XoZSQtNn6vzGmkrzbo/BeldV1fbFwS0XIxHZK0K8Hm2fPeVmaDHBiCYyZnvrZ8ch0Y8JeH hrYhntIC6PWAhv1B1PBko5k0/xcD32SvMtPgqfWImeFBJtC9hR0R2siHRjHUvip58+8iwt hDamjip39Ci/wNtssR4ih0efii8VoOk= X-MC-Unique: _vk_PstNPP6cJuuFZaSO_A-1 X-Mimecast-MFC-AGG-ID: _vk_PstNPP6cJuuFZaSO_A_1774646780 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646779; x=1775251579; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=N96Cvh9nP6r8XFXHnMsPNyo3ZrU8DUpNDRPrE2edM1c=; b=D3BRKlnoSdenaT6UaznpfQWNJsq9EgpxCB6eKKp42oRih0lC6KTWT1v4pPK1jr0ljA hyUVdu4AT/ONnvN+m/UfiQMhd9BOt7VsHWWoG0FVtFBVswgL4mCzpqX1sjCXNH9k15PX ThvEfpwk+G2nU9+5gmjerMXYi3HVJuDujoUD6kkofgiBXsPRayM1jOlwmvCypsJUAMzG QMrUgsYJAqaDUPKRIblsdBCojmSm40Kj8iz9TXC18ZE8lmtVUZJQwd9B/JeZb6coMWDu WhgryoX/26VqaBIr1KG3ipIc5Z9O5o2ZBSmjR6FI6sZ5baVUxURmPifRkbrd19mxpKAm bgSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646779; x=1775251579; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=N96Cvh9nP6r8XFXHnMsPNyo3ZrU8DUpNDRPrE2edM1c=; b=UHWxNt7kbgntWQ3o5Bwtk2zzOOmIkvgG0Fmn0abHLvAASmkRKBVUszDFYk68WeIU59 79IyoVc1IzMZnjCl8JNuySap2dJ5vucCdqpb3tTPI4F03OBbQOO7k9mENj33QF5sDk1c hxh50pB1kwP/Qo1ZMGUJH2S9PSG0eX8VsWl+FzV/OXwt06iqEpaGNu9R7aNYBk0y9FA9 sgunOd5At9acCLNtM+N/z/aoHOhHLIQCuwSi2Tp9T7KWhLorhycx4jGuSqNsLbQvFH7q uxe093l1k9KFctiRG6uRH6XczZtNpebE/HncHU1zOXLLNX3d/T4tn6xoVK+thKFI+Uju YOyQ== X-Gm-Message-State: AOJu0Yz3g2/t6mknmHd5a58qWLJuZ0cTU9DjAcfLBpSgRGOvhr0AA887 8lDAXszE6HgXhDY+/HT3+4TeNrV/nPHmvB1rDoTA02T9pHzXmxz2A7hicQsDPTNXq31WBCJ4dPI J8Mi/KA3DVZG4o1UbT604IaCRfto00VmJjqzK3XK4qCCeqcNHrn6S1+a0JbGFeprnwQmaosAY30 Xr9o70KOMCz6y1KfYK4ZXOnPOWGFuLNG18fLL8+G2/ X-Gm-Gg: ATEYQzy263h47HpVTiu/uJSRAUkg0AAblQVaaHaRTrgsmVNmIYvCYr3gc7cZDeGCNUg 1fKTxMBMbA+qAyk032kBb1AOKBr+/OGA3Fn0BMM5WxOhIl5uM5hNnsUDAKGODc5GCfdB1aGy5fH vnEz7P/9bgnwZ9l+0jKnrGdEiC2Vmm1QIWlC+s4ZOrzXotq6B9SKnyF6mMWrc4vGWVv2tfewpAl qNj7AUcONnPf0FLPUFcLSnQdZXFTzv64gyMSIkz9DQoXPmLyFgj3amHk9eYLyX1sG/xsOztBlvM CQaixcpgoIpUcFUqMoB4i48TEgp07MX8pa1mMf0aZv3TSUlPoozpITBzcFl8lXeKG6K7wWJnz+M B1F1rclu1F6XNh91GdkZB8FGzWpT0CZdrvbgI0DB+PRKw+1HchSRFSp+PM+VIFSGW6PD10Uf0D2 P3eO8WTFvdJLUUlOJIsNRlZS2p X-Received: by 2002:a05:6000:22ca:b0:43b:921e:d2fc with SMTP id ffacd0b85a97d-43b9ea672f1mr6847156f8f.46.1774646778669; Fri, 27 Mar 2026 14:26:18 -0700 (PDT) X-Received: by 2002:a05:6000:22ca:b0:43b:921e:d2fc with SMTP id ffacd0b85a97d-43b9ea672f1mr6847123f8f.46.1774646778133; Fri, 27 Mar 2026 14:26:18 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller , qemu-stable@nongnu.org Subject: [PATCH 04/16] lsi53c895a: keep lsi_request alive as long as the SCSIRequest Date: Fri, 27 Mar 2026 22:25:35 +0100 Message-ID: <20260327212547.460420-5-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646814629158500 Content-Type: text/plain; charset="utf-8" To protect against using the lsi_request after SCSIRequest has been freed, keep the HBA-private data alive until the last reference to the SCSIRequest is gone. Because req->hba_private was used (even if just for an assertion) to check that the request was still either current or queued, add a boolean field that is set when the SCSIRequest is cancelled or completed, which is when the lsi_request would have been unqueued. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini --- hw/scsi/lsi53c895a.c | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index 1180e601811..b882fc02276 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -197,6 +197,7 @@ typedef struct lsi_request { uint8_t *dma_buf; uint32_t pending; int out; + bool orphan; QTAILQ_ENTRY(lsi_request) next; } lsi_request; =20 @@ -748,14 +749,20 @@ static lsi_request *lsi_find_by_tag(LSIState *s, uint= 32_t tag) return NULL; } =20 -static void lsi_request_free(LSIState *s, lsi_request *p) +static void lsi_request_orphan(LSIState *s, lsi_request *p) { + p->orphan =3D true; if (p =3D=3D s->current) { s->current =3D NULL; } else { QTAILQ_REMOVE(&s->queue, p, next); } - g_free(p); + scsi_req_unref(p->req); +} + +static void lsi_free_request(SCSIBus *bus, void *priv) +{ + g_free(priv); } =20 static void lsi_request_cancelled(SCSIRequest *req) @@ -763,9 +770,7 @@ static void lsi_request_cancelled(SCSIRequest *req) LSIState *s =3D LSI53C895A(req->bus->qbus.parent); lsi_request *p =3D req->hba_private; =20 - req->hba_private =3D NULL; - lsi_request_free(s, p); - scsi_req_unref(req); + lsi_request_orphan(s, p); } =20 /* Record that data is available for a queued command. Returns zero if @@ -817,9 +822,7 @@ static void lsi_command_complete(SCSIRequest *req, size= _t resid) } =20 if (req->hba_private =3D=3D s->current) { - req->hba_private =3D NULL; - lsi_request_free(s, s->current); - scsi_req_unref(req); + lsi_request_orphan(s, s->current); } if (!stop) { lsi_resume_script(s); @@ -830,10 +833,11 @@ static void lsi_command_complete(SCSIRequest *req, si= ze_t resid) static void lsi_transfer_data(SCSIRequest *req, uint32_t len) { LSIState *s =3D LSI53C895A(req->bus->qbus.parent); + lsi_request *p =3D req->hba_private; int out; =20 - assert(req->hba_private); - if (s->waiting =3D=3D LSI_WAIT_RESELECT || req->hba_private !=3D s->cu= rrent || + assert(!p->orphan); + if (s->waiting =3D=3D LSI_WAIT_RESELECT || p !=3D s->current || (lsi_irq_on_rsl(s) && !(s->scntl1 & LSI_SCNTL1_CON))) { if (lsi_queue_req(s, req, len)) { return; @@ -2325,7 +2329,8 @@ static const struct SCSIBusInfo lsi_scsi_info =3D { =20 .transfer_data =3D lsi_transfer_data, .complete =3D lsi_command_complete, - .cancel =3D lsi_request_cancelled + .cancel =3D lsi_request_cancelled, + .free_request =3D lsi_free_request, }; =20 static void scripts_timer_cb(void *opaque) --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646867; cv=none; d=zohomail.com; s=zohoarc; b=JBEZb74IsFBDIIzRFUysJXXNvVmH/ddy3QQH74Hsub9j51LL/5ONzpzS8yjQS71ooAsxreMUEnskJrJheZGQOOvswNwyFz8NZDpaV6g3c1uTW4lAfP53JFYwM0TKLNGZWWcX6bhIOjjWOG2cG16jOjvx0InZH3tFUo9GRQBHVDI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646867; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=iZniXf7Th5qb+Qh//mdwiOoh7tVxEGpoHVgDrxDagI0=; b=m3jxvL2uQtWG9tpMRpdBwyjt43hI9WtQokItPRTVnUpX1Iju8VK+dUm/FzGE3mR7CGS4vmzFZnl1WQ9THeTa5TSx/q0iJeocFjBCQUsQSizXhPfrKDPRRHx9vBi5FOmsvtFawFk1QY+M74nhHPPFz5+5ujY6FLfMTuQCYGbSk2Q= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646867297805.9726136992556; Fri, 27 Mar 2026 14:27:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EhM-0002ui-KP; Fri, 27 Mar 2026 17:26:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhL-0002tq-Kq for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:31 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhK-0003dt-A7 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:31 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-351-cjdAACioPq2zLwSPM7PsFQ-1; Fri, 27 Mar 2026 17:26:28 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-439ae2cba40so1932536f8f.1 for ; Fri, 27 Mar 2026 14:26:27 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf1db08e6sm1906528f8f.0.2026.03.27.14.26.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646789; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iZniXf7Th5qb+Qh//mdwiOoh7tVxEGpoHVgDrxDagI0=; b=PzJHE7O0cF8DZPtF3M7Aa6amVMUYiY7AauyF26oQIuNVbfATYhiIKiXhmkULuQJI+w/SHp kDm9OfYIklorzAztt49/Tm7VIxD4mwPETtVU4zyl+SrxVNoI/GPArMWX3ZeoAj6mEDsdcb J2H/xLDIZ30aNXOZQw5ZKKJHiMqbK48= X-MC-Unique: cjdAACioPq2zLwSPM7PsFQ-1 X-Mimecast-MFC-AGG-ID: cjdAACioPq2zLwSPM7PsFQ_1774646787 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646784; x=1775251584; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=iZniXf7Th5qb+Qh//mdwiOoh7tVxEGpoHVgDrxDagI0=; b=fPt59BAlMlA+BtANcCh+Vf4pk3nN3LKgMYStC2O7/ZxMxOudJahyK93Zo5p4GKwRHS C2rJMs1OVjSFGAq+eE0nbyYK9aUEyp0nJyNZUdpRr8wcGZ/zLheOLb0MOFT8WOsSbmCg 3PjrRa0awNJqNjC/oE7X8DxSz6se+V8gqZ9pVYrIlzV7Gc30erKOVcHFfF8v+Wvq69na awn96dT2lZnQB+LXaf272Gu16jZtYC2ELR5FZ0xCHf/AubH9f/5//AXbq/ZPdjmheU/I Q4Jc9Ow0bG+ldn8Ijjt6U/wY4zpe9Qfevsx02OHc86AZeNAFumR0la3lQrRyDaUHzsCq q+lg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646784; x=1775251584; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=iZniXf7Th5qb+Qh//mdwiOoh7tVxEGpoHVgDrxDagI0=; b=RX0pwF8sAHwSwXWAXzmuJfNaWV6K4Qp2gC/F7fIEifNi0uNT9zscdZer4Jx5NARQHA bnU20pdfbUoguRmDkcodsLKLRD0xS0c4NwKVg6uccsta3N1bWaroO/DITeU5TS072pY8 OolXH1widNc8iN+3pAv70lqobZ8AUsWSvTBBvlhk6xJ6j9AitkGbkxdAhKi+SMjLCWUq kBJHU+jBnbfiBj7f+EXNNNQ+K3M7NDXJtvPEYRc6T3i72go8QbOT0cEjuV6yrdi+4OBE 0pm8aE82XnSNt9vy4fFBwbbhLwnIMYztj6ZmjFxKIDxGdw7WpiOPxkYvXAr8hPQcOT4o gmJw== X-Gm-Message-State: AOJu0YwX2Z2g/dA0y39fERWBDtx3V+NGYf+qmhSq5qmDye0rt/78sfdx b8cSdbovTaR9Q/6ncEVloLt+M5vnxiDkDuYL9VaVxH43VTKavyDqZ7IGPQMFEO7VVUk9N4AkN4u SF9KQkFZRcY2m7KmgeT0Hn5WJekHwSL3OVTToM1cHGKOVEWT6B5V+CUAdQ8IHUnKC/cRPTLnkep /KuslbB2FnsFQQMyS4iaJgxTTiMhWJF6HgV8yjTLLR X-Gm-Gg: ATEYQzy5bprq38eIe+NlaEwi6t+wpmgC3nYCALlqz+eU6dqrByrb0WQzNrg6mlbz9wf kBBJVmJ6aW73BK9+n7BzCxFKNfDXiWcxuizly+93xcNoK7DpyuOn/xG/X9mOy1LwBEuLZM3P7Ug ALafsILTlBjq6iJXQ/txdoTJwNmtaQswTEKwptxmsIjSIUTx78RYVRdJfOhAvykJBIwZfdqfkrm qw78+TIjsvHxtwx5HdhIihTlwDl3sml6tXRErgChyEvDnOoD4lYpl8Z3ao0Dek2xj5rWDRRu9W7 gZ/pliwrjsz+whVKGAlXds1YHm+bDAYOQJjx1Nk2nb2j1iKjL1oEcn4TGkJe5JuRlVRlYBEKL4n qZ90PA8sWe0CrdMvrflFw/8qqGuD8D0DHRGkuEiumHYlcBjom8ytLAADXqr7OlRnEeOjs4O4gUO 8bPx2ga3gZhu005+uB5bVDCHR5 X-Received: by 2002:adf:ec4f:0:b0:43c:dc99:7722 with SMTP id ffacd0b85a97d-43cdc99778amr1474189f8f.42.1774646784320; Fri, 27 Mar 2026 14:26:24 -0700 (PDT) X-Received: by 2002:adf:ec4f:0:b0:43c:dc99:7722 with SMTP id ffacd0b85a97d-43cdc99778amr1474152f8f.42.1774646783701; Fri, 27 Mar 2026 14:26:23 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller , Jihe Wang , qemu-stable@nongnu.org Subject: [PATCH 05/16] lsi53c895a: keep SCSIRequest alive during DMA Date: Fri, 27 Mar 2026 22:25:36 +0100 Message-ID: <20260327212547.460420-6-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646868411158500 Content-Type: text/plain; charset="utf-8" Reentrant MMIO can cause the SCSIRequest to be completed, at which point lsi_request_orphan would drop the last reference. Anything that happens afterwards would access freed data. Keep a reference to the SCSIRequest and, through req->hba_private, to the lsi_request* for as long as DMA runs. Reported-by: Jihe Wang Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini --- hw/scsi/lsi53c895a.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index b882fc02276..54123f77579 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -637,7 +637,7 @@ static void lsi_do_dma(LSIState *s, int out) } =20 p =3D s->current; - req =3D s->current->req; + req =3D scsi_req_ref(s->current->req); dev =3D req->dev; assert(dev); =20 @@ -667,6 +667,11 @@ static void lsi_do_dma(LSIState *s, int out) } else { lsi_mem_write(s, addr, p->dma_buf, count); } + if (p->orphan) { + scsi_req_unref(req); + return; + } + scsi_req_unref(req); =20 p->dma_len -=3D count; if (p->dma_len =3D=3D 0) { --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646825; cv=none; d=zohomail.com; s=zohoarc; b=S78kQK7XYUif3C6u1iVMXJriufspBAdEKlPZyOWzEuuAwp56LM+FcR5kGQY/cmRc7EQmWBfP+Xg4UrbupHT+ypXwyRTL0XGSEx4hS2bPPTJB1ZbhX03TWvpbRRQR+FZmNjxmEzZuDFHGYd/0R6iGHaGe98neT3RTLwSVNXmQUus= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646825; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=cUsd9sUtiSiyq2C2ZiaTTBXPp31lw16nowEZdc00IaI=; b=M3eb8OQ68/tmf9wJEoYEvW2yaWNSbsQSGGGvCSadPA1Iylo9wB0bCAN9IZMm3s233VDqMCcsjTltzoKETHsQ9pxl9qRJuveJgxnsk1lemIcsytU5kYDfFknAxz0bIr1fYLuLLZVPY2Pz43hQFMl04ANIlQJVCBHukU73KL9ua0Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646825668279.4872979617062; Fri, 27 Mar 2026 14:27:05 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EhT-0003CR-3v; Fri, 27 Mar 2026 17:26:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhR-00035P-El for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:37 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhP-0003gJ-Qx for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:37 -0400 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-137-eiqHmz1MNsqbAqmgxCTQWA-1; Fri, 27 Mar 2026 17:26:33 -0400 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-43ba0d2e46dso812023f8f.3 for ; Fri, 27 Mar 2026 14:26:33 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf21f173dsm909682f8f.15.2026.03.27.14.26.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=cUsd9sUtiSiyq2C2ZiaTTBXPp31lw16nowEZdc00IaI=; b=AxXj8/kkjJT8T4VB6My2V5bXEA99FVMF4Dc6ZswdZhMdx0rTYWlmqBep1MXhZq3SrbfTZC MvlFSAfLp5lZ2u/mCcYf6Lsv8cLSEAapNJKnSAq8fjAIAJc+RHr8WQ5OtTmMNguR4U91nX 4cTvVe1S1Il1O0rek4O6Qtv2z/xEPhQ= X-MC-Unique: eiqHmz1MNsqbAqmgxCTQWA-1 X-Mimecast-MFC-AGG-ID: eiqHmz1MNsqbAqmgxCTQWA_1774646792 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646790; x=1775251590; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cUsd9sUtiSiyq2C2ZiaTTBXPp31lw16nowEZdc00IaI=; b=L9z9IXAcy4WvW85xDAddNB/01/asuAm5ojRCfdG5FO5X/kmiHNyOq3D6mBFp3PSSoH 5qdMlWgCtKhjBI0cO6VHxK/1OwRYIp2TsWZzdM7/bt8o8mXPNXS0mw3PSexwul6I+Dj3 VOTJEofffAvtBBBVGoO6MVWD82V8J/XoipalleBFLVuvrLd0cFvHaWRKOhyOOJol/Clc Sn4EJuumeOz7eXQNs/0qZShnLA0517RZUbqbwIIZ/2mGqQhmdLb92+fXAkAVM24yCpPz hx0SQAZylnsohWnR6O/QAnANHmVfGCsKPviC49Z3izm3cEdmjgSa9EVMsu5xiA8wR4fT JTZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646790; x=1775251590; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=cUsd9sUtiSiyq2C2ZiaTTBXPp31lw16nowEZdc00IaI=; b=WeCvbn4WilOx0h0CagWAlnjUj6ViMmn+hu+UkIEZYvn+cfyKkHQmyrL9zo39UPJUmv EkeFydDRvOx++h8H8G3LoOPETcXI5vhvYtXFFuhOPXb1l5tfc1Pk2ywIvmK1/z2Y+iit PRxLD16kFn/c9wuUVVcpRE5QltIHLAdUFFJkRTjklRKF4qElxpnJK/4G/sbxyRStF+qI T/ZS69Ns0YWY8i4Me0NDhktdUaupJgHTZ9bHNWbNxQda9GxfgNaz2HrlMBgv8VF/3dfD bASxi78T0+e3jtf+hBbDla/6iv22JLZVZh0mDRKYN5d7mzXJkOvMUFfkY4z9mbUakKxk ztXw== X-Gm-Message-State: AOJu0Yz95lG02hkzvpUbWLPcKgrrQbJTe5gZWDiuJxYqgyZbh3hWmiyv chnpulpR1lNOomazRf8a6QbsaDwA5jmIvP5DIknSUsQs0dYsqI4HHOjUG6juMrFOFWBeymsuYOe k2uCACT8MVzOi7oC1U22pKf+R7mwnBFGek3jg+609QfWMwHpPO07Nfjf59NgWl9vr5PdO4/a6Qp 5qT+1bsi+Wthg89kngNNEidPzN20ri+BcYDaEvcA2T X-Gm-Gg: ATEYQzzKgtBW69DtXtiL2H/lt2036qupD4u0wltkquiK0dZr2t9j9gzmxQAVLJlKnQX 9AgLCaRtwdn6cMuNpeue1L0NMyToWUaWFgn4oVyFVOVzpDpV/Jw4tnZ8MPl9c5hwe7la2Ay0Cbp yJqddb23dLsdedNO8MyqEKTzxQYDHQYx/Y9ZkYGddzHtjU7EopDx645KRqWt4a6UMm9aC25GRwm MgurLOWX4mtqgwWT/1F8bmUr/xorCClkYf+I6Uxe2l2ltTPS7JtcNE3tATM9ufE8yZ2gdGQZR4S 9xp53IubSazEzpw8aQQts3ifELT0kbHngxZn6M/+UkXpP0CPR4DjLurIKYZIha1okKVmBUoXv06 EItgmsM6kpsI2Rzrhouf03UE12vpuoy56PvmuGfRtpIZ+SEbulJb0srfGN1RXBQSc7Lu8MwMkD1 gNashtld7QQymcseUZL5wZu2WB X-Received: by 2002:a05:600c:8207:b0:485:3f1c:d887 with SMTP id 5b1f17b1804b1-48727ee4d13mr67741965e9.26.1774646790190; Fri, 27 Mar 2026 14:26:30 -0700 (PDT) X-Received: by 2002:a05:600c:8207:b0:485:3f1c:d887 with SMTP id 5b1f17b1804b1-48727ee4d13mr67741705e9.26.1774646789627; Fri, 27 Mar 2026 14:26:29 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 06/16] ncr710, lsi: use same enums for command_complete Date: Fri, 27 Mar 2026 22:25:37 +0100 Message-ID: <20260327212547.460420-7-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646827972154100 Content-Type: text/plain; charset="utf-8" The ncr710 and lsi53c895a HBAs share some of the logic, also make them use the same enum for the command_complete variable. Change the names for ncr710 to something that is more representative, for example NCR710_CMD_DATA_READY might also indicate that the device is ready to *receive* data, not just that it has data ready to send. Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.h | 4 ++-- hw/scsi/lsi53c895a.c | 16 +++++++++++----- hw/scsi/ncr53c710.c | 10 +++++----- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/hw/scsi/ncr53c710.h b/hw/scsi/ncr53c710.h index 00b6a01577c..97f1bf5fe22 100644 --- a/hw/scsi/ncr53c710.h +++ b/hw/scsi/ncr53c710.h @@ -100,8 +100,8 @@ typedef enum { } NCR710WaitState; =20 typedef enum { - NCR710_CMD_PENDING =3D 0, - NCR710_CMD_DATA_READY =3D 1, + NCR710_CMD_SENT =3D 0, + NCR710_CMD_READY =3D 1, NCR710_CMD_COMPLETE =3D 2 } NCR710CommandState; =20 diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index 54123f77579..6b0c97d98e3 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -209,6 +209,12 @@ enum { LSI_WAIT_SCRIPTS, /* SCRIPTS stopped because of instruction count limi= t */ }; =20 +typedef enum { + LSI_CMD_SENT, /* command is running */ + LSI_CMD_READY, /* one round of data transfer completed */ + LSI_CMD_COMPLETE, /* command completed */ +} LSICommandState; + enum { LSI_MSG_ACTION_COMMAND =3D 0, LSI_MSG_ACTION_DISCONNECT =3D 1, @@ -238,7 +244,7 @@ struct LSIState { int current_lun; /* The tag is a combination of the device ID and the SCSI tag. */ uint32_t select_tag; - int command_complete; + LSICommandState command_complete; QTAILQ_HEAD(, lsi_request) queue; lsi_request *current; =20 @@ -815,7 +821,7 @@ static void lsi_command_complete(SCSIRequest *req, size= _t resid) out =3D (s->sstat1 & PHASE_MASK) =3D=3D PHASE_DO; trace_lsi_command_complete(req->status); s->status =3D req->status; - s->command_complete =3D 2; + s->command_complete =3D LSI_CMD_COMPLETE; if (s->waiting && s->dbc !=3D 0) { /* Raise phase mismatch for short transfers. */ stop =3D lsi_bad_phase(s, out, PHASE_ST); @@ -854,7 +860,7 @@ static void lsi_transfer_data(SCSIRequest *req, uint32_= t len) /* host adapter (re)connected */ trace_lsi_transfer_data(req->tag, len); s->current->dma_len =3D len; - s->command_complete =3D 1; + s->command_complete =3D LSI_CMD_READY; if (s->waiting) { if (s->waiting =3D=3D LSI_WAIT_RESELECT || s->dbc =3D=3D 0) { lsi_resume_script(s); @@ -876,7 +882,7 @@ static void lsi_do_command(LSIState *s) s->dbc =3D 16; pci_dma_read(PCI_DEVICE(s), s->dnad, buf, s->dbc); s->sfbr =3D buf[0]; - s->command_complete =3D 0; + s->command_complete =3D LSI_CMD_PENDING; =20 id =3D (s->select_tag >> 8) & 0xf; dev =3D scsi_device_find(&s->bus, 0, id, s->current_lun); @@ -900,7 +906,7 @@ static void lsi_do_command(LSIState *s) } scsi_req_continue(s->current->req); } - if (!s->command_complete) { + if (s->command_complete =3D=3D LSI_CMD_PENDING) { if (n) { /* Command did not complete immediately so disconnect. */ lsi_add_msg_byte(s, 2); /* SAVE DATA POINTER */ diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index 57967e7a84f..7113ce2d8a9 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -849,7 +849,7 @@ void ncr710_transfer_data(SCSIRequest *req, uint32_t le= n) } =20 /* Host adapter (re)connected */ - s->command_complete =3D NCR710_CMD_DATA_READY; + s->command_complete =3D NCR710_CMD_READY; if (!s->current) { return; } @@ -924,7 +924,7 @@ static void ncr710_do_command(NCR710State *s) s->dbc -=3D bytes_read; s->sfbr =3D buf[0]; =20 - s->command_complete =3D NCR710_CMD_PENDING; + s->command_complete =3D NCR710_CMD_SENT; id =3D (s->select_tag >> 8) & 0xff; s->lcrc =3D id; =20 @@ -1279,7 +1279,7 @@ void ncr710_reselection_retry_callback(void *opaque) p->pending =3D 0; =20 SCSIRequest *req =3D p->req; - s->command_complete =3D NCR710_CMD_PENDING; + s->command_complete =3D NCR710_CMD_SENT; p->dma_len =3D len; =20 s->scntl1 |=3D NCR710_SCNTL1_CON; @@ -1466,7 +1466,7 @@ again: break; case 1: /* Disconnect */ =20 - if (s->command_complete !=3D NCR710_CMD_PENDING) { + if (s->command_complete !=3D NCR710_CMD_SENT) { s->scntl1 &=3D ~NCR710_SCNTL1_CON; s->istat &=3D ~NCR710_ISTAT_CON; s->waiting =3D NCR710_WAIT_NONE; @@ -1640,7 +1640,7 @@ again: "preserved for driver processin= g\n"); ncr710_script_dma_interrupt(s, NCR710_DSTAT_SIR); - s->command_complete =3D NCR710_CMD_PENDING; + s->command_complete =3D NCR710_CMD_SENT; } else { ncr710_script_dma_interrupt(s, NCR710_DSTAT_SI= R); } --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646858; cv=none; d=zohomail.com; s=zohoarc; b=PYJJ3J8C9WQuDqijKycJBjmpL0Ooh0BYAWsRpNZm/eBlpmFA6jFdz+IviV4TCZlDIXG2nv/y5yWw1b9umuWF1QMvE5/Oqs95rhZ3ce1SRb86+8GgWov49UXgjQXnskYsFxSMkZLybHCTzQYUr8zMVkC308BDthCh9z73HwfqGjI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646858; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Ag0x9W61+MLi+fSgFl+jWBLoe9JN7um6jSU0ZIBfrJQ=; b=VvWQwFHshrHA00jcn1zfsw1mlN3r/guB47I78AXjWD95V1cTizaxmAtx/kYT0cvhcaba1lHwyfRZMj9BHViFGZKujZf2ihIEzpDlnDZ5ILaSmDLXGpZ9571flBgK1aDYUUmnzMlyCJMmqY9yew9UlQikFUejG/iD/n9hrvdEX20= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646858940440.33081544710046; Fri, 27 Mar 2026 14:27:38 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EhY-0003Eb-By; Fri, 27 Mar 2026 17:26:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhW-0003E5-KA for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:42 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EhV-0003h4-76 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:42 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-561-LAf42xDPORuFuAcIyP2UeA-1; Fri, 27 Mar 2026 17:26:39 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-48534941525so32035095e9.2 for ; Fri, 27 Mar 2026 14:26:38 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48725ebe9dfsm33989145e9.4.2026.03.27.14.26.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646800; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Ag0x9W61+MLi+fSgFl+jWBLoe9JN7um6jSU0ZIBfrJQ=; b=NSaWbBuo9x/R8XU6/do4jI39zULSbd1ugdaiRjJwGqyScj1tTL2/iSgRXwGCDiP7ojOwoV FhCNZUNOQxfANBanO9GOwEA7qF2r9J7dSVznNyNsDWaxDDfE0gf8+FJC3bEroFkR4jVjE1 Id+nyiSGCd153NLvLVGNQYKSXi4jTSQ= X-MC-Unique: LAf42xDPORuFuAcIyP2UeA-1 X-Mimecast-MFC-AGG-ID: LAf42xDPORuFuAcIyP2UeA_1774646798 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646795; x=1775251595; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Ag0x9W61+MLi+fSgFl+jWBLoe9JN7um6jSU0ZIBfrJQ=; b=I+rVMam6zBIEhspQP+bERPn4izbkbZfHp/qErWBlKatjnydB+gVu6YQ6jUIL9NdLaw XR5V/eM3ouXsO8FQWW7wi6bE+oDYQpJaVD2IlRkZSVFynZPhoRxoEXEZDl83XOpSCKD/ R1pr1sgrk/Y/CBZpn/gnTPLaMIBmZ2wtzFOTrG26nJOCg7mZaem7YhgHGZbi69wdDt4Y OoXNIavaHQfoXq7swZmacv8Uc8oh6JSq7gCebPwuueds+BSpDrUX6LSimZh5HN0B+o7T VV/DQoVltNhLfpom2Ykj8KMgwVge6cUQZsPvDjkA7cWr2oh9z5HWqFOD8/YATw1cGaZ/ CJdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646795; x=1775251595; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Ag0x9W61+MLi+fSgFl+jWBLoe9JN7um6jSU0ZIBfrJQ=; b=PW0CudDSuDh7gbfjsu29CgHs52vG4rcK5SHCoRHQ6LSpLvz21WNTFII2NabMll4DhH 9dm6a1lgo94657Q8LtPLnFxsP9EzAxRJ+rC3FjYbvEKArdNtFGGo5bIykJ72aMwm8Lcg fg6Oo/N9Z4Dj0+Rq6o+GVllPmko14CW9r9DXU1URu6jkcCs0XPqNE4Hoi8Z/T4azfqC0 Bb0rr5oQSRJ2mO/BZ+u/VwoXFgaDar0RZADIoxS3bB68Z1C4fTjgvHDUPPgten2+Q27W 6dtjs0nUdspbapqZtdLUQUyfO16JcxJRQl/ooxqpadRZZ6plzpOL1TYHzkRylzbVEu50 nI3Q== X-Gm-Message-State: AOJu0YwTgEjJdMYbMUuPE+rc4L86crb9zXI4RFhl5aifGkheYBBkRzVe 0J2hCgN3h1MP1UQwiiEcfUGvoh/1bp46MQqKCvDs4DAzkMoj2cumA23ui7quMc8FnM3veRzFXZz M/7RJcn4+xc2At/UDl3px0ed7U4O9amGx7gVM79KYvgw+2MMK0wXTZlBn3wATU3BE3qEBO5KsDC HIOhIas7bORf2+4q9a9moQdWBFq/XVWBX/ZeBbb0/l X-Gm-Gg: ATEYQzz56PsJejLwHkOravjLy8FsvdCSl1K1t7OW+CRe7i1ijoTJqKOmHMMqs5yO6Ac gsE1Kyrq3MbirMX8ryP6YVvAknB2vukWmH7K8Cv7TC4ACN1jqj6YjQv4HBGgeh2VSCNiLF9W76N BII+QF3V4M4j5ZyNjfYnyzKTFWn4wiebPcStNSMLm0QRbBH1c2z4PdP6uoW4nkIfT2+961CYUjP lUqcRTA9lXn17ABG9U45L+63zZE52Uv1rG7o7MMhb3SPSJR7SsYC7d+AokE9wjmXP3vCXsYoRBA GZvFutVO1xqye4atL7k4dbGOFEFaw4YkIPGy0x/6e7U+YI1aS4amEJwXkV249yx1YiyGsUaOENg LeJye5bdfmptMvgBZlu4j66cxOHTx0Ctpn87PJUJXT1JmVK8e7GO3KhimCDfY7i4j7I0ku6t9zK 0ifD73hYonIweG9C5vFfKC30CI X-Received: by 2002:a05:600c:6487:b0:485:3d00:efd with SMTP id 5b1f17b1804b1-48727d679e5mr66323035e9.7.1774646795475; Fri, 27 Mar 2026 14:26:35 -0700 (PDT) X-Received: by 2002:a05:600c:6487:b0:485:3d00:efd with SMTP id 5b1f17b1804b1-48727d679e5mr66322815e9.7.1774646794952; Fri, 27 Mar 2026 14:26:34 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 07/16] lsi53c895a: always use enum constants for s->waiting Date: Fri, 27 Mar 2026 22:25:38 +0100 Message-ID: <20260327212547.460420-8-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646861463154100 Content-Type: text/plain; charset="utf-8" Signed-off-by: Paolo Bonzini Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/scsi/lsi53c895a.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c index 6b0c97d98e3..6f65a2188c1 100644 --- a/hw/scsi/lsi53c895a.c +++ b/hw/scsi/lsi53c895a.c @@ -201,13 +201,13 @@ typedef struct lsi_request { QTAILQ_ENTRY(lsi_request) next; } lsi_request; =20 -enum { +typedef enum { LSI_NOWAIT, /* SCRIPTS are running or stopped */ LSI_WAIT_RESELECT, /* Wait Reselect instruction has been issued */ LSI_DMA_SCRIPTS, /* processing DMA from lsi_execute_script */ LSI_DMA_IN_PROGRESS, /* DMA operation is in progress */ LSI_WAIT_SCRIPTS, /* SCRIPTS stopped because of instruction count limi= t */ -}; +} LSIWaitState; =20 typedef enum { LSI_CMD_SENT, /* command is running */ @@ -239,7 +239,7 @@ struct LSIState { int msg_action; int msg_len; uint8_t msg[LSI_MAX_MSGIN_LEN]; - int waiting; + LSIWaitState waiting; SCSIBus bus; int current_lun; /* The tag is a combination of the device ID and the SCSI tag. */ @@ -605,7 +605,7 @@ static int lsi_bad_phase(LSIState *s, int out, int new_= phase) /* Resume SCRIPTS execution after a DMA operation. */ static void lsi_resume_script(LSIState *s) { - if (s->waiting !=3D 2) { + if (s->waiting !=3D LSI_DMA_SCRIPTS) { s->waiting =3D LSI_NOWAIT; lsi_execute_script(s); } else { @@ -822,11 +822,11 @@ static void lsi_command_complete(SCSIRequest *req, si= ze_t resid) trace_lsi_command_complete(req->status); s->status =3D req->status; s->command_complete =3D LSI_CMD_COMPLETE; - if (s->waiting && s->dbc !=3D 0) { + if (s->waiting !=3D LSI_NOWAIT && s->dbc !=3D 0) { /* Raise phase mismatch for short transfers. */ stop =3D lsi_bad_phase(s, out, PHASE_ST); if (stop) { - s->waiting =3D 0; + s->waiting =3D LSI_NOWAIT; } } else { lsi_set_phase(s, PHASE_ST); @@ -861,7 +861,7 @@ static void lsi_transfer_data(SCSIRequest *req, uint32_= t len) trace_lsi_transfer_data(req->tag, len); s->current->dma_len =3D len; s->command_complete =3D LSI_CMD_READY; - if (s->waiting) { + if (s->waiting !=3D LSI_NOWAIT) { if (s->waiting =3D=3D LSI_WAIT_RESELECT || s->dbc =3D=3D 0) { lsi_resume_script(s); } else { --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646827; cv=none; d=zohomail.com; s=zohoarc; b=QFYv08zIv9wwKy++9ocrvp9yAWBDL+/NMpkn45o0OFHhw9o4YMLj9mAaXMnT7Yzfmij3pOJ7bRnYxgC3BB8IIxMpGXRqS5i6hY4mq6Jag32GRoOG9GA5aQzkB29dB3DrZltF5qp+Q9cSqyZfz94QJhlMtaqHVtU29UNKM3oCssA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646827; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=2JQ9Yj7brdIqvdNhWPI2MQ1hWd0faHyBLi+vTK2i8O4=; b=nyelcpkqPpzgtiaHE/Rf1hIVEHtm41D1dQbwOTQu0KP0jzRlWlC3eRpd8GKxV4Iew8vL7EMJ+Z5KttOp3XTCt6QT6YWDZADz6eend9obAwbxIXZwFVEzvBAHrO7eFbynFIqIJTN6TFYY2smZMgVtOP5dgKsFAu566ZQK3Xrc0wQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 177464682730624.737565072783582; Fri, 27 Mar 2026 14:27:07 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6Ehc-0003Fi-RZ; Fri, 27 Mar 2026 17:26:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ehb-0003FD-It for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:47 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Eha-0003hd-9w for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:47 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-619-VCrYhd-3Nw2SuqOlQCfsoQ-1; Fri, 27 Mar 2026 17:26:44 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-4852ccff333so23885025e9.2 for ; Fri, 27 Mar 2026 14:26:44 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48730688605sm13189985e9.10.2026.03.27.14.26.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2JQ9Yj7brdIqvdNhWPI2MQ1hWd0faHyBLi+vTK2i8O4=; b=fOzT0DfiufFm6ZEQqnxejUD09TiyLegGYt6AgNIdLWJiwx+ipUyU1LJXztEaQLRgcFoHgz Gix8rHmJhUwwxTj2BA7EIeYX4PnY0NcRe4aM+KKJxt4YS6HTtmhSCQtEb/RVk0ClY8e41U KGD6WZfzYPppyBfV3wQDbC1SbOuG8cc= X-MC-Unique: VCrYhd-3Nw2SuqOlQCfsoQ-1 X-Mimecast-MFC-AGG-ID: VCrYhd-3Nw2SuqOlQCfsoQ_1774646803 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646801; x=1775251601; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2JQ9Yj7brdIqvdNhWPI2MQ1hWd0faHyBLi+vTK2i8O4=; b=tkmaRVwFr5XSuv0Gmm07c50f/lxA8nq770VIQFjdZNkC1+DN2HEStNfpMVVMielXCP XHrOYygz7KIOk2JHH6ZS062U3XHsXSvELSVimKrF64TUuUubuIG+jPC2ouKTuE3cMMWN mfjVitJhC3DVLizpdmVrAQiydgG+v46JiZ4Y+LsESOrzzLrn0V4VHur7Em9nNWeFy1WI ACFBiaSkW8tEOuUHVp5HqjWPfvD4YvR9NcFowSRakyOeS6/KFIqS7xmrbps52Wde+eQ4 UweWkzP2DCM+v3NlrdamOWSu/gbZhao6XWYQPrtRvZcXAhevEWjYNkbsLN9DLISU//gs 5mvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646801; x=1775251601; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=2JQ9Yj7brdIqvdNhWPI2MQ1hWd0faHyBLi+vTK2i8O4=; b=WSpggwNPYFIfnOCUjy9zrGk8aMV0iANaqc4YOQNwEKJjnumc6XqCZcdfeWexiBm+qN 6tjiCMJLrys1PoUXdJMvFGBfRbKEukiyBNUadKRC7ipoqeJ0QNLTEHYRzHdR9u8Itwdm PGC3s/uvlSuMvVPpikmPHDagCvtcvZYrEacvsk+OiTtsCQ6VpcDtIf+Bu90/rs2LFgCj Ftb3ELsZBLjY7gb/7uYD6PU83R5YXo87jLFNR2tUtZRdh4IuBfBDolz110sAxmnPRNvE 83srxYbn4RzUJG0z+Sua4oEmXWGSDlCR59aH+wYolHPVqITubY1qCiyxjM7CdYzaMB1i PGGQ== X-Gm-Message-State: AOJu0YwKRx+ze54svSIisSqoBI5dJRzlO7hSUXFAfbZOKRWXX/IeCXId EBwKRWRXlOqy7NEqKjSuTH2pxsYLDHQCotCLYV/WXwKuwAeRWaUj0Ysykyt7HiN3QGzC4ocBo9r sli1oSmT0cXBpl0n+9DW5fOidICo163jFw1MW8YFBVYa3bJqgHu4pewRXH556tqvTlrIgl56VEe 5cnvuTfEROU+9pxY+E9XUH87u2NpXCpxhHC/PE2ITu X-Gm-Gg: ATEYQzxBlG7TOCZJbfgggFTI3PoCChppFVpE6l+ZCIRKkROQflz2RCBTVF/mJTdpBjS UpTtaGJ5IfyD5t0iNj43Sxpt4KmOxcu9bH7TAXxmXd2ucE3vv0p5G5wxk6eJKeAy3x8l5wG5UVF Zjp9yhkrCXM9xkCMHYE3ntVZospuQg0CA0u0/Q0SmdbCw7mGSbtPBRAYOi3TMuYllUkVvr/oNO5 z8jw9taqTI68A9BclSPAvxmtOral1Fh45s78RuQ0eMPnkr0mBIB1L/IrSRDB9Zvux2AqmnIY1vD W33HywsCn3DU1JxQl6vbe9A4T3ya2Ad13d0eRcTwbQpHcAOccqvWoUo/OgouBAZJUgPNZL/EKmL jitO7vHFD95JcpRG0W6o7FVGP28KSRh/VvuH2piObmJwlPDnFGmdqU/W1bd+2RIvjd3uQaovkdH e+n+AEdKWYvG+Let0/ndOhPbQ0 X-Received: by 2002:a05:600c:524a:b0:486:f9a4:d487 with SMTP id 5b1f17b1804b1-48727c816e6mr65883865e9.0.1774646801023; Fri, 27 Mar 2026 14:26:41 -0700 (PDT) X-Received: by 2002:a05:600c:524a:b0:486:f9a4:d487 with SMTP id 5b1f17b1804b1-48727c816e6mr65883615e9.0.1774646800481; Fri, 27 Mar 2026 14:26:40 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 08/16] ncr710: simplify ncr710_clear_pending_irq Date: Fri, 27 Mar 2026 22:25:39 +0100 Message-ID: <20260327212547.460420-9-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646828871154100 Content-Type: text/plain; charset="utf-8" The same checks are done in ncr710_request_free. If req->hba_private is anything, it is the NCR710Request that points to req, so it would be cleared. Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index 7113ce2d8a9..9832d833b37 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -316,11 +316,7 @@ static inline int ncr710_irq_on_rsl(NCR710State *s) static void ncr710_clear_pending_irq(NCR710State *s) { if (s->current) { - if (s->current->req) { - s->current->req->hba_private =3D NULL; - } ncr710_request_free(s, s->current); - s->current =3D NULL; } } =20 @@ -739,9 +735,6 @@ static void ncr710_add_msg_byte(NCR710State *s, uint8_t= data) =20 static void ncr710_request_free(NCR710State *s, NCR710Request *p) { - if (!p) { - return; - } if (p->req && p->req->hba_private =3D=3D p) { p->req->hba_private =3D NULL; } --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646857; cv=none; d=zohomail.com; s=zohoarc; b=Ghe40GZOxoOGGhhCGxnrKm5ZbX1Wy65uXCwKsW/snyvPCXcM79FeuOTOo2/cHADIIGhaJHiUqKpAo3dwIQxjKBE/kSkVmnnqiZl1cOSqkMa9OcrIDzkd6gxgkMZ8jZXQLrBmnKHubbMRiLGNKOtsx++IFcUA0gF2DKztxcWhzso= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646857; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=87D9hfkXTy21U107ad64fZEaWnZ7Kh+l8r3zoihxcCE=; b=cP3vHjXKOjdRVzOJO35So+vkMAxRKj6nok8/ko/lr/G31+AuXoA+mcqmGFVSGbZINNFCImCSeC+A9gGQI8vVp+E3L4N2ou9WelUidupvAWJA5XhWR3akzl4TvNE2rE95UM9pWiXwwo8OS8py46HfAwLMQkyC6qEA6ZGOXaSLpzM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646857100608.5979797172998; Fri, 27 Mar 2026 14:27:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6Ehj-0003Sl-IS; Fri, 27 Mar 2026 17:26:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ehh-0003Ro-VF for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:53 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ehg-0003hx-H4 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:26:53 -0400 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-673-NmCMyRGAN02RHgvTfHylDg-1; Fri, 27 Mar 2026 17:26:50 -0400 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-4852cf0318dso26741375e9.3 for ; Fri, 27 Mar 2026 14:26:50 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4873061f44csm8893305e9.1.2026.03.27.14.26.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646811; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=87D9hfkXTy21U107ad64fZEaWnZ7Kh+l8r3zoihxcCE=; b=Arm2faUwO8NNJo6LZW9wryF23Ri0+M6bLkM9GfCRLhJOHtIdII/S9QPRzLbzgH7eWSkKug xlA6FdCoq1Z5PPq2KHp8iGnoEKau35WSAncLav09TPVUdoDdUg1lztTG6B9MucXfrToGZl mDYWN05R7fkLvGKwHZEbk32pJ5t6/4o= X-MC-Unique: NmCMyRGAN02RHgvTfHylDg-1 X-Mimecast-MFC-AGG-ID: NmCMyRGAN02RHgvTfHylDg_1774646809 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646807; x=1775251607; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=87D9hfkXTy21U107ad64fZEaWnZ7Kh+l8r3zoihxcCE=; b=iqSO6vqMLKiPVPCUwb9tYGLTKYWGC60SxmLj4CL6ouVsqO8lrkHKYc5Fjc4a4gjcWY GS84JArG9Hwy4eOudBqV00jbxlpGLtkIPhooDRyrd3kDebviy9U7hSoQXVVF2kS4OEsd Wn9mTDWgqik09PD0hz8Ek1q8HlLJyAcM7BF+p0lp0rnsIVvqkql16cxGMNih/4GSwQ/b IWq+VVALPayEnQUFAvaSSjPPYoxfZZ/GRGCICH/pGe8Yy7iVYtdKzzOerj7YiN7DlX04 fTz35PNThzvyJ1C+PXQKvwu0bfV2O8hhh54yUpc1Ql5LXpnaGZcZd6EkmKFnBXauOHsz APDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646807; x=1775251607; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=87D9hfkXTy21U107ad64fZEaWnZ7Kh+l8r3zoihxcCE=; b=bSMLYEPKR2GGelLS1XONC+IKIh4J81g+Z6D3Y5FV3hFG0lMN/BCe9LVIzuTmiMfFN0 rx/W6Pszk7AXng3WxK2ew1cKEholr1AMl4NLw/N/lrYZR4kKzWkohWX8cQveVfrQpdyn SVNOZpSHUqPKwwp72R80QpzWVEW7p2B60v/1OqcI/ZqOfa+pxf4xBCSs2/U0tMepEHCf v9aQepAfIEaPFLrwW0hV8PLl5vWgalu6/pxtCPmtk92HM6smtV8/0Z/X6q/6SSElilyx ZYkASbPMHSn+3GNAJ/GqLWEKikziUL9S3bTDoBhCuJ55LeRQXudsw3QVQc3uccxcu+Y3 PT5Q== X-Gm-Message-State: AOJu0Yx1nJ9JSvjERZbbFBXe2rbsWjG0iuzUVNLM4ET2Wr6pn6x+vwKk i+2xv/VTqz3CDrTmw82pzF0Ck7PHikhGBJJNE/H/p7Im2TQvSOcfZzUHKrh2PQ41xXOFBI5JutI Nx9fciQL+CGQ4Bqu4FudYunEtaELhmX2kDE+mpcWcSq3Jlj/fffeSgeRsIyJRqno45Fs/mJVfCE Clb1Qc7bV4/+oQKAaeAF6n6tN9HUFDIbyQj6vAbN3d X-Gm-Gg: ATEYQzwrrYE29ORf2TVYqKH+61djeRw2HYuL0wXWpBt4CgTA1FgosVY4XKlpNLTfZD/ aZRKO3WwJe/91/75KsreB6L6QEyk/ozJKyRLxSGrcOlGLiEnvtAYTZ+9a6uqJRH4B+zsGNobMTH 7klgRHfH+G8qXFYCaKnuDf4HYyKzabZqX2puRsDc4G1LyyWaXVk6tLI8iRIgRukDCQGZbFMzsxO rYteJUGXcjUKBoztr4MzIOOWi5UzIaEFs28jD1TGBt4lFGD00HSj6vHW2UtyyFQ5oA8bZK9Df5d VplxCHa01r4kgdNg6d8KaSX69VeiMMKDkvExaQ6GLOxdROzazxYA3LJxv7D2tNJLJ0Hdfrx6FPg I5meYTeUKYSDOM9PSZk1LONEDUzr8LYSmSVQJytJzGSdBdDa66AUMzRLQ8557TYx/dXNcPZ826s zpIUDT/YQeLEIblCFgYHL/VpSS X-Received: by 2002:a05:600c:c87:b0:486:f308:94ec with SMTP id 5b1f17b1804b1-48727edf6eemr68427105e9.24.1774646807108; Fri, 27 Mar 2026 14:26:47 -0700 (PDT) X-Received: by 2002:a05:600c:c87:b0:486:f308:94ec with SMTP id 5b1f17b1804b1-48727edf6eemr68426855e9.24.1774646806609; Fri, 27 Mar 2026 14:26:46 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 09/16] ncr710: reuse ncr710_clear_pending_irq in ncr10_do_command Date: Fri, 27 Mar 2026 22:25:40 +0100 Message-ID: <20260327212547.460420-10-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646858520158500 Content-Type: text/plain; charset="utf-8" Signed-off-by: Paolo Bonzini Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/scsi/ncr53c710.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index 9832d833b37..7503d791205 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -928,10 +928,7 @@ static void ncr710_do_command(NCR710State *s) return; } =20 - if (s->current) { - ncr710_request_free(s, s->current); - s->current =3D NULL; - } + ncr710_clear_pending_irq(s); =20 s->current =3D g_new0(NCR710Request, 1); s->current->tag =3D s->select_tag; --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646842; cv=none; d=zohomail.com; s=zohoarc; b=kvxSrvUJZb9ceoaR4WyU8d6ByKFxVxnMT8OenQ8kfItMvz+hvVmY4mAQ6RoFxYdLWkA/qqlQSwqlzQP4UPBOOIi1m63+CVy/FVPa7uhfhg599tOTEBLkZF1SU8e9RWOHCQxKJBUCmY2qIzRDzaxdbUTtVPMiM2fvwubLVLhgenU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646842; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=6j+8F9WY80KMSNsIWnJr/7G6jY4kVXncWxg0JKnHv9A=; b=Wcmp8uq10mwhJEccoquZDBq9EhXAcYWb9CQxXUwRcGPJ+LS3+2ywtLCzeHpAzBjmlpNkyxqrszQ86dwdNSm1IYEQoHbfkBi7HcISDlpiSvVQ6xRZgDFIPJbva0wCqZiNocJUNhdJWVumU3Ul0wDzjOc3mwmKZniyJf+mJc71Zt4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646842845495.22292969685225; Fri, 27 Mar 2026 14:27:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6Ehv-0003ui-AI; Fri, 27 Mar 2026 17:27:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ehp-0003fd-LQ for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:01 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ehl-0003iJ-Su for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:00 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-654-HFpQQ921MTSMdlM8WSCXIQ-1; Fri, 27 Mar 2026 17:26:55 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-4871fc50fe7so16847985e9.0 for ; Fri, 27 Mar 2026 14:26:55 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48722d49c18sm115720295e9.14.2026.03.27.14.26.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646817; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=6j+8F9WY80KMSNsIWnJr/7G6jY4kVXncWxg0JKnHv9A=; b=VmzxgmzhYltZu+llmVcmKUainiiHDMzLlnFaeV19XEB7hatZxETTWJKgBfliPIk+dE/kRU Xpm96nAXEX+pMBxn7x3F0YSSAzDPhg06Myhthx+IRhfN4GcSX+XjCG8JmbywwJCd+8kI+7 6LEfrZoiQYZDc8kR2iitUg+VWJ+pdvo= X-MC-Unique: HFpQQ921MTSMdlM8WSCXIQ-1 X-Mimecast-MFC-AGG-ID: HFpQQ921MTSMdlM8WSCXIQ_1774646815 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646813; x=1775251613; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=6j+8F9WY80KMSNsIWnJr/7G6jY4kVXncWxg0JKnHv9A=; b=tB7kMR89smjw2mOcULJ9lL30zg+EWagjKuOx1eUh6YstpVadFR4IZSvzyhtl3mnHmS REUtI8jVezDPO1y3bfkbQSZQUCxH4WiHwauGqWVoBwUvItVn7+bzlTyrEzodTICxOBTo QGay/6hhyEO+p2iwJmzZ6BFMFhH0JgsI5aQahPyNwhbskNCZlUYPDEiA3ETA01cmRtOV KnOi5Uf41j5EFpKhg3vQsFZWhZ/8jSreyd6Ap7NG461pD8isrR63EZgl0cO9FH10zWnX jN31QdFtUB589yKDTeWrNjoXaYzVwHECo00Lf10+ceXF+trxLeEezXiKLEW4o79VtGxX L6CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646813; x=1775251613; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=6j+8F9WY80KMSNsIWnJr/7G6jY4kVXncWxg0JKnHv9A=; b=Hr3AYx7SVLWIoI+2bumWAip8hyeDpNCWStCjoHcgLmHi/PBM8yyFwB2p7kxAJlfF0O AlpoHegPewUlx+mo5KT4EB/0dL6kzmLzT0ETPRK+jd1vv+vKM7Qwpv88yRD6dzE+hBTw LQ0NIf4c33BcgZYNIZwjpQdsUPbhGOV1mFi8nyh2j8NKMJZiLKt7MVmkqwuwQIfKnTzr bGavpaMww43jsA48ZcGVdhPK7avOoMYlpcWtvPRAedkzRW/k7MJQns4OfNnfsATKbFAI LyORBLfmZhI8+ozw02j/ISnrLY4RsXi67RjmodwGFypMzQQXoX+NuviPliUDpgbhLAW/ sS+A== X-Gm-Message-State: AOJu0YwLFHRRvvS8mJIw/dReAWxYrgeSCdZy9KE6+aS/nYSBnrAO5VKL bGIvmFJGPciznD5Gs+IMCq+qP6cive+iHrhcN0H6YrKtnDePf8eTcBH8CCiDzXDlRyjxWw6QLVp ng3Hrck9ypI5OzMLWACXj8cjjpkqiddothKugEwsoNHHLaZT+Mov8yz1umaa1qqlJAYfeCwCUL7 1VNjCmirJuOm5Q2otN0USxArwkTMtq9zCf9J5GyWtc X-Gm-Gg: ATEYQzwaCB4gxJVOXN+e5hkY/AwQNooyHlWoDb12X1GG2OXjhsQUIchz7IhnYMhzvu2 jv0sKCTjmUwNiMEWqdpWffmauo7G96KCs3lZZdi4iNjIMLIHvNdJ9zpplQf66TEujfe0MqR2qp8 uY2OvFmFUbewWzlPW9SLtY3Na4XJD5PqnbKCbOdEQeKoTPfw+2qROwL605dxm4D7R6YoEVgyeW7 19HfSgtnHkix9EX6oP+XhMYr2aEmogiWXnUKQEKTNmX6ZYPh+GDOq2UFiisO2XCD6DsTGj/4O+v bs48kS/sZPB3mZ4SeHmhDINkmoeqhNr+4IFHsxqqHVB6RdE2TV0oYjkSSPUkYkIH3uwmcBhertw uCDpMw6XXkL18rYOIJjWGgjn0bUWNS1k7cZtLoabThHhgsEZrz4p/D215qW4/QxZKoRlxFkehUD z2skyT0UVIkEuNs1Y1aoZhsfjv X-Received: by 2002:a05:600c:a10a:b0:485:3f72:324d with SMTP id 5b1f17b1804b1-48727e9ea73mr65002955e9.14.1774646813588; Fri, 27 Mar 2026 14:26:53 -0700 (PDT) X-Received: by 2002:a05:600c:a10a:b0:485:3f72:324d with SMTP id 5b1f17b1804b1-48727e9ea73mr65002735e9.14.1774646813152; Fri, 27 Mar 2026 14:26:53 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 10/16] ncr710: remove weird p->req == NULL case Date: Fri, 27 Mar 2026 22:25:41 +0100 Message-ID: <20260327212547.460420-11-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646845337154100 Content-Type: text/plain; charset="utf-8" Setting p->req to NULL in ncr710_request_cancelled and ncr710_command_compl= ete only protects from clearing p->req->hba_private in ncr_request_free. Howev= er, in this case p->req->hba_private must have been already cleared (by the same ncr710_request_cancelled and ncr710_command_complete); so the reference to = the SCSIRequest can be kept until ncr710_request_free (called eventually by e.g. ncr710_do_command) and that assignment can be made unconditional in ncr710_request_free. Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index 7503d791205..ff0d3cf0c86 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -735,12 +735,11 @@ static void ncr710_add_msg_byte(NCR710State *s, uint8= _t data) =20 static void ncr710_request_free(NCR710State *s, NCR710Request *p) { - if (p->req && p->req->hba_private =3D=3D p) { - p->req->hba_private =3D NULL; - } + p->req->hba_private =3D NULL; if (p =3D=3D s->current) { s->current =3D NULL; } + scsi_req_unref(p->req); g_free(p); } =20 @@ -750,10 +749,8 @@ void ncr710_request_cancelled(SCSIRequest *req) NCR710Request *p =3D (NCR710Request *)req->hba_private; if (p) { req->hba_private =3D NULL; - p->req =3D NULL; ncr710_request_free(s, p); } - scsi_req_unref(req); } =20 static int ncr710_queue_req(NCR710State *s, SCSIRequest *req, uint32_t len) @@ -795,12 +792,9 @@ void ncr710_command_complete(SCSIRequest *req, size_t = resid) =20 if (p) { req->hba_private =3D NULL; - if (p =3D=3D s->current) { - p->req =3D NULL; - } else { + if (p !=3D s->current) { ncr710_request_free(s, p); } - scsi_req_unref(req); } =20 if (s->waiting =3D=3D NCR710_WAIT_RESELECT || s->waiting =3D=3D NCR710= _WAIT_DMA) { --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646849; cv=none; d=zohomail.com; s=zohoarc; b=ariUQRKs3N0f7YvdpkqAsKN2q03sZ7EDDsacgBfzNazj7Wb7f4bnlLWLtlJxZTV+LbFGs8A29YcH9VY6ApJcqzey5oM3Ma2XrSzBGuqRaxZDWY9JJWHdqeLhTUuCCXYbkIA//paDb4v76gFkJC/vMHGD7IqXrYwhmvtoyUAiD6w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646849; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=TnVwG3SYokTAtK+IdutEPcnvYRG2V0/1TTaen2gHy5Y=; b=TA/1CE1x4SjO6WoDYN+eJO4D4LBn3DhHYH9u/WBCNhCFh9cXBHfOy6gnMeAPVxZJAWDBPk+c/FAhxHcOERyQVGfkC/tVQEx3u6cbeEtK52cb17t1OIMzKFc3+GAH8IH923gK1K7k0rvbhU9/LUp8NiTk77zq82t5PV0/pZUYqZg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646849331935.6112626244479; Fri, 27 Mar 2026 14:27:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6Ei1-000467-8G; Fri, 27 Mar 2026 17:27:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ehu-0003uk-2B for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:07 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ehs-0003kF-LD for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:05 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-425-lCYxLqK8O3mwm2yFn9lluQ-1; Fri, 27 Mar 2026 17:27:02 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-4836abfc742so21694485e9.0 for ; Fri, 27 Mar 2026 14:27:02 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf247102dsm911762f8f.27.2026.03.27.14.26.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:26:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646824; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=TnVwG3SYokTAtK+IdutEPcnvYRG2V0/1TTaen2gHy5Y=; b=fQ51BUr/kuv9w1x6hyjlYFdeieDPWaHuw+iw3m7ogoH6OYkxIztxwWXd1ZrU/TciPv1YN0 x5HYsYLBg13xOkLWM0hXKTzSva6lQBA553baKYZd0laNYz9k7Pzbt7MAKoUpZU4Art7Swq L0aTjNIbUkl6lLhjwCZiEELkTj70Keo= X-MC-Unique: lCYxLqK8O3mwm2yFn9lluQ-1 X-Mimecast-MFC-AGG-ID: lCYxLqK8O3mwm2yFn9lluQ_1774646821 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646819; x=1775251619; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TnVwG3SYokTAtK+IdutEPcnvYRG2V0/1TTaen2gHy5Y=; b=aUPdS5OEBzduaao5rFw2sSJC09SdcHz23V3fSqNsv5hmXS82ABDHsNENikVo7buWzV EncIrHABmsWXzyhoeCPCLPiNYdt1pId9z4DnEyAMZB0xtY8gLm+9jciQF37psfwTmUaW +I+tFXWk9yv5uek20CQDIMXO+O0ZFOPYCRWSmGEka2DdmPzeEARI9zmNWOZYxCrjhpOD fqIHQ/GM/3kmXrYZrKbWJg+Y8CGX2E6oZ6ehcPpP5PtTxFPwPfMxomdiBsVo2QEe3wVn PNA/ujittKOx7zC0ilB4Qe2lGQhA3EmrbYRh3FbZvnQj7kMG3g1Bl4AlmNY4CSSX5H+7 VAIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646819; x=1775251619; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=TnVwG3SYokTAtK+IdutEPcnvYRG2V0/1TTaen2gHy5Y=; b=jJ66lg/8UvT7Fn2BKbGM6H+AwzvZRK85d6cN8bUpKbvQgMBEiW4aD3cL8WW8PWk1PZ STRm0fXJK5lKLVYTbwilJvrlcr2w//qMI54x3A9YQXWGKRV4gJKjY5piJe3SUAFyP4Bu 2ZHRn0Z9ydLEjnmP+SJKA1hmXIC9wQXoXUoqii8UUvUnXGWtBsLDxGCcOEuAmMucYML/ D8nUX39wXiev5feM4HKfu2Od5QfClytN5o4V4zmASk0iEopApFFSe9Zh+N7mJ1uAE6Jt sbQjnMbHaVhyMJaHJbDtcLKhwGjo9JYJMO9y7AqKSxQXMpyDMWBnpAcBh89/Mx8lU7Jg gXlQ== X-Gm-Message-State: AOJu0YzhCUZXcom6slFIdCFrTOomwDuhl68Fhd0SOvVk9yGQtGFFq3jM i5Xk90ijzJtweDqX+LtRenf1P5AJQfu10CoCkP6sOfL22vUJdLVX4JL6Dzx9ifJFHnEv1LwykP3 URQZ7XW4oY8SgZGXwIL5gv9R48DjTDRmm1PCTJOQ8dEiw6OJQYteTHyjMPvxWJJkRHqCVeyED0i kw87fqtYteNsHuFccj5X9R1CVZ14OEPH3uriHkXPWv X-Gm-Gg: ATEYQzy/HjKv29GYhx6XiLf9xXv2m6sl3QkMMAms+l5ECrTQTdx1u/DOFSsIcd+N4c1 HfAFJbDGiL3spkJrNLq0NAFIXjN8a4cI9D4WTIxxCIxCSJZCRWb66U9fpyl8d6RlEDrXSUb7Sk7 Pf5WFnLBUw/GByOGYFWbzN5VTMiiqjwWUYpnDXE9OvP3IOiVtyasOmD9kC64PznhoIGAednaBLF 87Mf2C/VPFet1P6OUZ+mQy0AB0sWo+He9GT2eTFLzHvHUwS+b8hhwK7cF9utQRUUy+mtOpU+Xbr SyN9W9x8adOogPOe+42/a+9skRAslEI/8xkSKYGuvpTmwGbj/k7Ql8KxaXmwCOnrNJ2Q7NFc0kf IuUUkAqFe/jigwEQaiFgXHm0Nm40hyORwBkv2tisg16Lm5Ljar7vYRV1h/Re8xFKakoFE9LCdxe IyCLgvCtFZINDYuHxxsE4kV90P X-Received: by 2002:a05:600c:8589:b0:485:39d1:b500 with SMTP id 5b1f17b1804b1-48727eef71bmr55847595e9.16.1774646819411; Fri, 27 Mar 2026 14:26:59 -0700 (PDT) X-Received: by 2002:a05:600c:8589:b0:485:39d1:b500 with SMTP id 5b1f17b1804b1-48727eef71bmr55847275e9.16.1774646818930; Fri, 27 Mar 2026 14:26:58 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 11/16] ncr710: remove redundant req->hba_private assignment Date: Fri, 27 Mar 2026 22:25:42 +0100 Message-ID: <20260327212547.460420-12-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646850369158500 Content-Type: text/plain; charset="utf-8" It is already done by ncr710_request_free, so it is only needed when the function is not called. Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index ff0d3cf0c86..fd03f243eda 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -748,7 +748,6 @@ void ncr710_request_cancelled(SCSIRequest *req) NCR710State *s =3D ncr710_from_scsi_bus(req->bus); NCR710Request *p =3D (NCR710Request *)req->hba_private; if (p) { - req->hba_private =3D NULL; ncr710_request_free(s, p); } } @@ -791,8 +790,9 @@ void ncr710_command_complete(SCSIRequest *req, size_t r= esid) ncr710_set_phase(s, PHASE_ST); =20 if (p) { - req->hba_private =3D NULL; - if (p !=3D s->current) { + if (p =3D=3D s->current) { + req->hba_private =3D NULL; + } else { ncr710_request_free(s, p); } } --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646887; cv=none; d=zohomail.com; s=zohoarc; b=Z1euLHnHS6HfN/5Aon4MLuzcMfUUnBA72JZ9sml8A8xQjF9ILvQeTdPN8aOga0sSELbC1TXG3CpZjmZiJFnG9wksOsJAO9Fx1PQOSkT6XX6fpbovPkdu7zBn+hZe2FbyaSt3+3FqWFpw9OqP6TGPCwUZMnDdKvKxjD/TA9gDNHA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646887; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=V8WL7DzJeKU4ayulWVhy2puPdPuY2wFd4bIkD8S1wS0=; b=esQOE8SRz3FjDF0+eOLtt3mlI6TURxjrkwI+OWlDSx24Apy++rVcHnK4C/wjWFIdkL+nKq95TbwNwdmn+K/9HAOaoROB1EMAOLYs/ncnKqSnypC+DAez5tzNvyvJ4I8lA2GYBeYsH77OBwMf+kAQS6vruZSKX2CI4jWkl/PtmOM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646887481187.56246415531973; Fri, 27 Mar 2026 14:28:07 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EiH-0005mh-A6; Fri, 27 Mar 2026 17:27:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiF-0005Yu-Cb for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:27 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiD-0003p5-OZ for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:27 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-586-uydHhSxyOyqO2FRWK0zR4w-1; Fri, 27 Mar 2026 17:27:14 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-43b96365ea8so2481924f8f.2 for ; Fri, 27 Mar 2026 14:27:14 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf21f1749sm790860f8f.14.2026.03.27.14.26.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:27:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646843; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=V8WL7DzJeKU4ayulWVhy2puPdPuY2wFd4bIkD8S1wS0=; b=XmNZ6bDZqrh6CIkC5o8c7+5wGcMsKQnK4ORxKPP09/DD336PBkxaUtLAm3t/6c0n3n6sja U07z8ckNpWMG43huCZVoaZwPiSmtuAg0Uz/ENntKOvxvCQu+9d/txFsGcw2MVjRgcSoMS7 LbgM+9ibpoNlb9VhzIMPLoKCp/QUjtA= X-MC-Unique: uydHhSxyOyqO2FRWK0zR4w-1 X-Mimecast-MFC-AGG-ID: uydHhSxyOyqO2FRWK0zR4w_1774646831 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646826; x=1775251626; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=V8WL7DzJeKU4ayulWVhy2puPdPuY2wFd4bIkD8S1wS0=; b=qsrVPpO2EWe+ZMcUfPdBYh6GZHKhY9KZRumETfQVYKSYNh706SBIZgnIZFVwDg45kv w3eY/ldxxO8dphS8MLYTl9uEuXf+E4svDWHJRJmQqDgLtOScECSmBh3X49rxErFgIh3L 888c871YMcX8H8mCh2k2l+eILJNqq4zEMChd+nj+9M/aLYqth3dA86n2PkMnWscpsBZq Xo5IrOegGRgNrMikhV6mpxYPgdd1wX0H+CuOrp/7LZhNVAt25HbtuD2CaWxTDvH3nr1G Ssw7l9ONZ/keRXn3oXi3WA00pFobVHoX++EgdtdTSYys7C5RG3CEH+Wdhmd4fATe0mpY xfPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646826; x=1775251626; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=V8WL7DzJeKU4ayulWVhy2puPdPuY2wFd4bIkD8S1wS0=; b=Tq1yglkcKuRJAgCax0dtcxv6DRF4uZuNHkUomI71YyHeB1VE+jGRig5X5fSiRi5bIq 1QcY0nLArpJZ2UKu8YkGtufbsbdH/NQl6rsNtoi6wRMs8S55tsVkt7NC7NpRPuYoGr/v I+OBWmHN7OlIvwnt1ZU4HUdkysBwloc0T4eJKWlOIUNMxee+JV9f7k2g2924jqi4msf6 naxR0EyrInB1ieKbwdkfFq5LyEp4/5qwQNCUN5cfmFcCgP8IonwpqgGiLKIzMQOfoRsj oUqsQNpIgOJPaSnTO2rFEFbICVBBpqstfNHmzpt3g9ul1Y3R62wJH8vAuNdWvwpD/5g9 nbvA== X-Gm-Message-State: AOJu0YymdPxlZocJ3uztl1wcAeUzUcwey/dL7GjdCgMEl42DcORvseGd E1Nj8XJP2uVH+aeRkdd7t+0xzPzfNz3XA31WKLsdYj5yvaDUcoZt4E91novDkQ/NxSMjtiNbSHb 40RP67w18384OJMIIiqOfdGlpx7BUX4I66/H2eN3uNfnajUTgRd34qz8FmWfI+IuQsYocE3TdmZ x6AB8dtlGavcEpgOB4p5I1aOWHjXvYrlZj+XH2rUAm X-Gm-Gg: ATEYQzyggaVrS65RPX2eYUxalhcR1ZmG2Qn20qfr4NTxbctGANSBUe5EElgFMuPoPgQ otvpEr0j/y1rsF9U3Ajc1VJ0bgLB02ptISc3IsaCbaNMKYf25Ls9eMlhiF1rex/UmNG3S98moCL Je6MPASjrNH7wKo7pYhT84L9ts3LCfShV1JmUhVi/ei2/XFGNI2wUk0JqexM+ocv1GbTtQvkXZc 6jLVxiGPWtpWLC7G9i4Dzb5Fn4aBjO51HcHphpsBMjivQNi3Ok7iFJ/50H+fVMybCYoV7hEo7vD SW9QQChxtBlYzCgfpABWKV7Zy9D9Wjb10eKBnA5DGiwr6I0pCbAU2QV6tQwxsTKEDov0ubou+qO SePnkU5ACUi7rxEWlvRspic3C2Wjkb61Cjgj+2uz8z3QR3FlWkQf6vn4y+rzQFronaUS0IhaVb4 v9p3Pe6D1T0Ht5S89ZsKAjooz7 X-Received: by 2002:a05:6000:40cb:b0:43b:5003:e300 with SMTP id ffacd0b85a97d-43b9ea66e1emr6684259f8f.43.1774646825988; Fri, 27 Mar 2026 14:27:05 -0700 (PDT) X-Received: by 2002:a05:6000:40cb:b0:43b:5003:e300 with SMTP id ffacd0b85a97d-43b9ea66e1emr6684205f8f.43.1774646825382; Fri, 27 Mar 2026 14:27:05 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 12/16] ncr710: clean up ncr710_transfer_data Date: Fri, 27 Mar 2026 22:25:43 +0100 Message-ID: <20260327212547.460420-13-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646888503158500 Content-Type: text/plain; charset="utf-8" Move the short ncr710_execute_script case first. Remove redundant s->current check. Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.c | 65 ++++++++++++++++++++++----------------------- 1 file changed, 32 insertions(+), 33 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index fd03f243eda..f768ad74237 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -842,43 +842,42 @@ void ncr710_transfer_data(SCSIRequest *req, uint32_t = len) } s->current->dma_len =3D len; =20 - if (s->waiting) { - s->scntl1 |=3D NCR710_SCNTL1_CON; - s->istat |=3D NCR710_ISTAT_CON; - s->sbcl =3D NCR710_SBCL_IO | NCR710_SBCL_CD | NCR710_SBCL_MSG | - NCR710_SBCL_BSY | NCR710_SBCL_SEL | NCR710_SBCL_REQ; - uint8_t host_id =3D (s->scid & 0x07); - - /* Special case: both target and host are ID 0 */ - if (req->dev->id =3D=3D 0 && host_id =3D=3D 0) { - s->sfbr =3D 0x00; - } else { - s->sfbr =3D (req->dev->id =3D=3D 0 ? 0 : (1 << req->dev->id)) | - (host_id =3D=3D 0 ? 0 : (1 << host_id)); + if (!s->waiting) { + if (!s->script_active) { + ncr710_execute_script(s); } - - ncr710_set_phase(s, PHASE_MI); - - if (s->current) { - uint8_t identify_msg =3D 0x80 | (req->lun & 0x07); - ncr710_add_msg_byte(s, identify_msg); - - if (s->current->tag) { - ncr710_add_msg_byte(s, 0x20); /* SIMPLE_TAG_MSG */ - ncr710_add_msg_byte(s, s->current->tag & 0xff); - } - } - - s->sstat0 |=3D NCR710_SSTAT0_SEL; - s->istat |=3D NCR710_ISTAT_SIP; - s->dsps =3D RESELECTED_DURING_SELECTION; - s->waiting =3D NCR710_WAIT_NONE; - ncr710_update_irq(s); return; } - if (!s->script_active && !s->waiting) { - ncr710_execute_script(s); + + s->scntl1 |=3D NCR710_SCNTL1_CON; + s->istat |=3D NCR710_ISTAT_CON; + s->sbcl =3D NCR710_SBCL_IO | NCR710_SBCL_CD | NCR710_SBCL_MSG | + NCR710_SBCL_BSY | NCR710_SBCL_SEL | NCR710_SBCL_REQ; + uint8_t host_id =3D (s->scid & 0x07); + + /* Special case: both target and host are ID 0 */ + if (req->dev->id =3D=3D 0 && host_id =3D=3D 0) { + s->sfbr =3D 0x00; + } else { + s->sfbr =3D (req->dev->id =3D=3D 0 ? 0 : (1 << req->dev->id)) | + (host_id =3D=3D 0 ? 0 : (1 << host_id)); } + + ncr710_set_phase(s, PHASE_MI); + + uint8_t identify_msg =3D 0x80 | (req->lun & 0x07); + ncr710_add_msg_byte(s, identify_msg); + + if (s->current->tag) { + ncr710_add_msg_byte(s, 0x20); /* SIMPLE_TAG_MSG */ + ncr710_add_msg_byte(s, s->current->tag & 0xff); + } + + s->sstat0 |=3D NCR710_SSTAT0_SEL; + s->istat |=3D NCR710_ISTAT_SIP; + s->dsps =3D RESELECTED_DURING_SELECTION; + s->waiting =3D NCR710_WAIT_NONE; + ncr710_update_irq(s); } =20 static int idbitstonum(uint8_t id) --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646850; cv=none; d=zohomail.com; s=zohoarc; b=iarYf1PxpAiYjTy6b1GHzD9TeebocqTcAW+jogp5XP3QKgAvN/ltf7GEFfvXif2kUjI3OvmYt4kZLFuPBm6HzOtC48PgLsgyqwzqV1DEtPEsH5h393sc9O04jRrnFhKLJCPt3wzOzrEB1ZDlPwuaX94tkPSPhaiQ+9mIRYIFgHA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646850; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=4hPfYq4/WFarXboY4nnyRVuUgvfU5bRhiXWfm+ko4U8=; b=bCtc58MBdmQ1L0Jk4ztVF/2+CakiYukeY13USxe4QPlZq7KH92/P+1hBAooV0ROMUht3vCYa9sfbXWzRqYFenuJmd/ke2MeYx8M76qQ4uORwWzboeh//Bnom1gEIygMbeid4OUTEQuQzaO6m+r4N04YNaM5La410GCVvrX/hO5Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646850491620.3854986404424; Fri, 27 Mar 2026 14:27:30 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EiC-0005KU-UO; Fri, 27 Mar 2026 17:27:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiA-0005Ct-N6 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:22 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6Ei9-0003oh-D8 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:22 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-59-OaygELqpNhyapIMMBB32qw-1; Fri, 27 Mar 2026 17:27:19 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-43b9a86b9b0so1556727f8f.0 for ; Fri, 27 Mar 2026 14:27:19 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf21e2487sm812846f8f.5.2026.03.27.14.27.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:27:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=4hPfYq4/WFarXboY4nnyRVuUgvfU5bRhiXWfm+ko4U8=; b=K1wJh/fLvMtJsI+wwqBiimS1g++Z27THTf/V2C9rMKaeQ6iOKlQ0qvnsL37NZDfg3qv/Le sYkUDPRrQTAkLH4akaLz72xyEmjtlQZuVL92V6wYStunWQSX+871+UF9dQsmSkt/CK/B21 HhKWFKayZZeuGlg0NTUdf/bt5HtCIYw= X-MC-Unique: OaygELqpNhyapIMMBB32qw-1 X-Mimecast-MFC-AGG-ID: OaygELqpNhyapIMMBB32qw_1774646838 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646835; x=1775251635; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4hPfYq4/WFarXboY4nnyRVuUgvfU5bRhiXWfm+ko4U8=; b=pUwdrosOn9D1rh7KcmLZlm3wHD/cXPk6dkzflbFPZqYCMlZN5sFxDq/f7i0JIsn+rU 7O2hoKJfBiMp3Fbp9qftEgMo23pe3siiCnzA/OAGsf+Ys2/dMqjYzxsl36YOMCbH4xKp e38Moferjw/DaZFLo4f3sjcBuP/OM3xzWIFZ13mKrvfARiAn/SjVX3lAgnowJOgNkkGg DCi2tZtCCxjD+7h0C43LLPe4ZbveTKfgPZ7jjgF3FHttrRdumLmkaQ7guYIdNUCNfJiB 6uO3fVj0vEuUNr2DFU06x3OIM/IlWqAhM+kSmwpZ7zwfSH3GOS9AyzNFwJ6vpWqevd16 VHfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646835; x=1775251635; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=4hPfYq4/WFarXboY4nnyRVuUgvfU5bRhiXWfm+ko4U8=; b=SSiNk9kHy06DQ3ZTGDIPdXUx5VaPCrD0W7moVgcbUOC0oiZtutXOQmQ7k4H40niZIm jm9xVyyD+ak0tW2+h+hS/pz+RgdlQzSVANXzBIG3AQoCOtvP8PbREOkRN6AfKxbpfqKc foxgI5V0vZxfTQNuKwza+hD+x2TUX5QvDtS5KyliDbJ5i5FqwjPKGt+ab6VMqgaG3Drh DnF/9O4n61ldz6FsJg9sQeRgk4MVbsLxZ1gPoie4SaAQbxJ7mDFeADLdKAv+bCrrGjZf mIf9OfdgLRWt4sbmsORTpjLMcmhviyX70ic8sSheGHgLgiEosRqHOlLOpqOmRSEmzDvZ KqNw== X-Gm-Message-State: AOJu0YziD0FMguiTiWSfE+Qdty3dQr0dB3DzuB8bsS0HVOKqEl96P1iT mawkJOb3n1D2oD2dfuA/mfXApc7Aw+8kDlsmHGtJMqhq3DRzTRQW8WmtBBNetzihjuN0elPrSbc ULZovbXrbxA8p9bUp/R14z60KO9q1qvPAUisyAbBKbH02fwlKNDiJOgjgggW3VPrL53ovCpftk/ oTaFQ5AvwmwFmXsdvIhsxVXveezNeFp7KahGAzpwA0 X-Gm-Gg: ATEYQzy1SCUFPYecsqCGfoRrf52DsKWVSp2FcL3T3VOe4Vkfwlo99TmLXXCqp+DTCVp qrJN7QzrlBbjnArn1rwSPBw0kcNfP7croCRiwUl9ZZ3enxj4bvmQLlAHHMmR8n2ukJCqMzHmfOe SVGobjOtDmaJ3xrij11gpJPHnyii43/oJ+O1W/WIMyELURQ2K0gNQi0cv7tkVotlB+wGiYlQwS2 6CQ/Ni1ELo1aa1JX2+BBneuxoLdWP0YDKifPV1IKlHAbvCTFzWsCVSY/EnA3pkwuSIiEsuvliyu 6V+lu8X86fN25aKhp8eIt3SvK2zj9o1Qo0TkZEuEwGH3FhlEZ4tBhXiQrMSks+XPTpCFOw9bMmb BKdyBCQGOTYUfhfbJuaL9hVz/Pubw32JiAwRQsrFMO7qIcXD968hgV7wZrMtFGPC3BIQKuxixpS EzJWTACkUWvMBlCeztW2ck5W8k X-Received: by 2002:a5d:584b:0:b0:43b:7ff5:fdf7 with SMTP id ffacd0b85a97d-43b9ea4a3a8mr6435933f8f.29.1774646835586; Fri, 27 Mar 2026 14:27:15 -0700 (PDT) X-Received: by 2002:a5d:584b:0:b0:43b:7ff5:fdf7 with SMTP id ffacd0b85a97d-43b9ea4a3a8mr6435901f8f.29.1774646835078; Fri, 27 Mar 2026 14:27:15 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 13/16] ncr710: do not load s->current in advance Date: Fri, 27 Mar 2026 22:25:44 +0100 Message-ID: <20260327212547.460420-14-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646852344158500 Content-Type: text/plain; charset="utf-8" It is unnnecessary and potentially could use stale data. Load s->current just before use. Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index f768ad74237..298e0317b70 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -1040,8 +1040,6 @@ static void ncr710_do_msgin(NCR710State *s) =20 static void ncr710_do_msgout(NCR710State *s) { - NCR710Request *current_req =3D s->current; - while (s->dbc > 0) { int to_move =3D MIN((int)s->dbc, NCR710_SCSI_FIFO_SIZE); uint8_t temp_buf[NCR710_SCSI_FIFO_SIZE]; @@ -1169,8 +1167,8 @@ static void ncr710_do_msgout(NCR710State *s) break; =20 case 0x0d: /* ABORT TAG */ - if (current_req) { - scsi_req_cancel(current_req->req); + if (s->current) { + scsi_req_cancel(s->current->req); } ncr710_disconnect(s); break; --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646881; cv=none; d=zohomail.com; s=zohoarc; b=RtyKzB8/K6hdWdUqE9PPGdZsdtK9bzlS9nW529lIKUXGYh59Bo1KyFfZRvkk6sK/SPPuOqKH9yM8QDh3F72wW70VMEX7dbOK2/hc9+DinOfhLo7zjScxI44Unv58jByF8cJKRmHTzyQNjLK3x5akGt0cdEfCUno38gBCx/HiLqE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646881; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=RDlQX+UUc5AOH1czgnahPp+EQgUsIkyNsfGBa+IQYX8=; b=lmckrst3+JGgoY5FVRBiOwqjs9KOpxxFllQIFxTQcuFGS8Pj2s4SnekrVQy9PFMO5GBTD5ASHK9p1BkJTZgqJwzXtskc0r/sAqjnJ7StC3rKT340NGJY2gqhOX1sNyIu0Ttd4jQk3ED5+rkZ+f92XKwoGvDZIK4eS3GQe6F9xLU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646881499509.7757823309473; Fri, 27 Mar 2026 14:28:01 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EiH-0005pp-Tc; Fri, 27 Mar 2026 17:27:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiG-0005es-7y for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:28 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiE-0003pE-Na for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:27 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-688-VfN28IY2Pwyfk1uKmHm-ag-1; Fri, 27 Mar 2026 17:27:24 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-439af7ba802so2183215f8f.2 for ; Fri, 27 Mar 2026 14:27:24 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf1db08e6sm1913655f8f.0.2026.03.27.14.27.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:27:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=RDlQX+UUc5AOH1czgnahPp+EQgUsIkyNsfGBa+IQYX8=; b=Pu2cZnHmnmbHxORuHNXI8wRusv/QEIM38sUUk+O+kUZK+oZyAtJQOL1jKsL5KmOan1Tm+z WrA97W2hdsYvNbFVd57LBcJzLhgOpnLURPGIb+70C/EoQRBQrRT7jPws3QGB4fSEZN9AW1 NgZXa520n2WrI97kVwoV90NM7K9bB8s= X-MC-Unique: VfN28IY2Pwyfk1uKmHm-ag-1 X-Mimecast-MFC-AGG-ID: VfN28IY2Pwyfk1uKmHm-ag_1774646843 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646841; x=1775251641; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RDlQX+UUc5AOH1czgnahPp+EQgUsIkyNsfGBa+IQYX8=; b=mHNTS1vBt9WtJ5AD09HDQ/7YiQ6GIUyDVwkmE3unptZvrayuS1aJyjo/8ESVBTgxPt GmN0UvPxjhTHKNmO7m2zTOdp7GsB1Zq58V8KUN8FI+mtbxSrXQAN8gdHyCNv388mH/ub tWybnUEq723ab9oBv0qNU7wW7jG7aO6AEBtFuznd2zaNEoGEF3dc/wRCoBUpqHlO2AQ3 NloJMzfnWZ5W2xg3/7ECol4JCAE3r5DxtTbUMwEcpHOqBZ83LDi0TdkNHOxt0ETeLNLi so5ZNCyRE7xx2ZXyAckjOYap39WvTfSsjErvc17ZMMoEQshsPOnPlFLbN9sKCSpIFbTW D/SQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646841; x=1775251641; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=RDlQX+UUc5AOH1czgnahPp+EQgUsIkyNsfGBa+IQYX8=; b=DpeJ3FHi9s5JhGLd/6SPiSBdlvGwiVrd/MXU/Yp8BbfQiUv4nWoOxBsYX4x77sFcbo VGfkWfNEYPdACGn2U5GUYEku5cinVt/siF3y5TGeHeCRD18i9Oj4KKib4asvoRoD0Gtz 8uezfQdwUYWclXdZ5P7GXodiDo+saT59299EMldaJTciMa60U37YODALFwdg00fH2U6Q y4tc2iG8CgFAd21WUUJxWzqJeThTb1bXxgBLbddrfZ0C++VJ8j/GRoW9JkE4kGkdVSwj MUxdD6LOS0j4wYhAqPSCTwXCO0oY9I+OimQtQ1Tyf9cEBk8Mg2gGO2DRltPKJhseGnRN M1wg== X-Gm-Message-State: AOJu0Ywhe5SU2oQd+z/DpBxbS6bvElL1fSdQT5ELxIKk6VbElIDr37XK WB01Z9eivUahSpy6OFDMNpgvIxMBsNJ9VR6Heqzi06ud2QVwnnhB0MHLCBrMjvHJbf1u5KFPwah DWS5OLpwDbR+r2zm6dAelFMsLTGkmuG/7ozQtuf5G+c7uRbhk97MWnA7Aux5KfSLc0aq7kNACuQ 5oosHhjVSriBkIEdTF2O3ft1aSNTV4w4/nfTakyfPW X-Gm-Gg: ATEYQzxXXiXeiHF9YKfl82dHshNLtJwh6LccYhFnbGcic1b2nqausZuSkJhbnX9cWvv 7mBsS6UEUeroGJxygZaAGwM/irCSmOkk3jLG6Ra/uPwSGiI07GFHEOgEfBIz1upMyjkuig4/1/j rosS3H9TO/BlQy4VTf5Drz5onocK7UUQd97Z+YpADkrXRHN+uDl0rdtic6MUnbiWUMAJnyxTF9Q 0C9bRtFJD1h9a3n7CYRyIpAlcnLww5vK9lQhs53FlS7D5pdw1btcKnYUoVk1195+BLUC4UgA3Jm BgLLtz0mpN/PqSorkCGrwWXTO4QjcmU1gaIJKGKC6ff9F2GC6pgBeS6R707RoiiQB3ZVAZvEbiI e9DcwEaMDWLEhAD88NGVcMwRpMJ4rn0idlSDdZoQVYztgKNW8kMVMa/deuBMZBMYvim/6VE8Pxm QlIBeEIZMkXlgORmVFdkLIKH8h X-Received: by 2002:a05:6000:184f:b0:43b:9060:8829 with SMTP id ffacd0b85a97d-43b9e9d8c3cmr6728632f8f.10.1774646841316; Fri, 27 Mar 2026 14:27:21 -0700 (PDT) X-Received: by 2002:a05:6000:184f:b0:43b:9060:8829 with SMTP id ffacd0b85a97d-43b9e9d8c3cmr6728599f8f.10.1774646840763; Fri, 27 Mar 2026 14:27:20 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 14/16] ncr710: remove dead message in actions Date: Fri, 27 Mar 2026 22:25:45 +0100 Message-ID: <20260327212547.460420-15-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646883651154100 Content-Type: text/plain; charset="utf-8" Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.h | 2 -- hw/scsi/ncr53c710.c | 6 ------ 2 files changed, 8 deletions(-) diff --git a/hw/scsi/ncr53c710.h b/hw/scsi/ncr53c710.h index 97f1bf5fe22..ee6980753d5 100644 --- a/hw/scsi/ncr53c710.h +++ b/hw/scsi/ncr53c710.h @@ -108,8 +108,6 @@ typedef enum { typedef enum { NCR710_MSG_ACTION_NONE =3D 0, NCR710_MSG_ACTION_DISCONNECT =3D 1, - NCR710_MSG_ACTION_DATA_OUT =3D 2, - NCR710_MSG_ACTION_DATA_IN =3D 3 } NCR710MessageAction; =20 typedef struct NCR710State NCR710State; diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index 298e0317b70..ea114a0cb40 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -1027,12 +1027,6 @@ static void ncr710_do_msgin(NCR710State *s) case NCR710_MSG_ACTION_DISCONNECT: s->sstat2 &=3D ~PHASE_MASK; break; - case NCR710_MSG_ACTION_DATA_OUT: - ncr710_set_phase(s, PHASE_DO); - break; - case NCR710_MSG_ACTION_DATA_IN: - ncr710_set_phase(s, PHASE_DI); - break; default: abort(); } --=20 2.53.0 From nobody Thu Apr 2 14:14:17 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646893; cv=none; d=zohomail.com; s=zohoarc; b=Tsljvljp/JfrfJcRv3aOoWJKnP98lxMVyzRAOBkBmHAZccbc/v6LnDkfk64m/P6SCK0N5LQGGiXg+lJIYROeOD6k+bJ1sSYE4fKEwmdfrjfOj9wg+fSHypQPGAScxxwWH0APhS/uWJ3JpjkDXTUBQuPX1AmydbKNOOmpMXcXWMk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646893; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=64HjyIw3YSOllArTTqZkAithVHrT5AIrg1J84ohe30s=; b=QFDZMguc5/xT04jHRgzal9xDz9tYFDezGYrCpN/VIwVHLv2XiXzZ8rf0uoy1HAbk23R8ksD7oTFBi2wQ2MWApbUl2X8Mo+SsjIILlWCqT553g1xADcT/ZgRPS1a/UbjA1WivRFEhnw01Ay2/w8Tm77ezmE47tGPvLqSzptkoZhc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646893985150.06125478849685; Fri, 27 Mar 2026 14:28:13 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EiR-0006jf-GN; Fri, 27 Mar 2026 17:27:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiP-0006Sg-CV for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:37 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiN-0003rI-Ho for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:37 -0400 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-230-cps7H3i9MPSJMSaccNPM_Q-1; Fri, 27 Mar 2026 17:27:32 -0400 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-486fcc05b20so17776225e9.3 for ; Fri, 27 Mar 2026 14:27:32 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48722c9506dsm112708875e9.7.2026.03.27.14.27.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:27:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=64HjyIw3YSOllArTTqZkAithVHrT5AIrg1J84ohe30s=; b=WkN5nqrokkzpOkXW63o0+n92FCI8yIsFnaXDZhjUywfNpX+ov4SQHjxSsOpbwy5ME/sWRN LpSepOMQ5G4BZJOP+beqV81jtzHl+KO25m8j/7myuXooO8ZE9zeL50GFIPkI6zK/clDyt1 HgvAXRRW6EG/B5XSltb/Rh/AqzQyJGA= X-MC-Unique: cps7H3i9MPSJMSaccNPM_Q-1 X-Mimecast-MFC-AGG-ID: cps7H3i9MPSJMSaccNPM_Q_1774646851 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646848; x=1775251648; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=64HjyIw3YSOllArTTqZkAithVHrT5AIrg1J84ohe30s=; b=G2LLFIsQFMR4a0rGW510A8gngRubwYeBlrvDeGfdvD3K4yP5I3p+HCIFeQZY0cbGGL 16v3zfsSD/EIM/uGaI/1NSPc913Bl4wqXWsKbJdvwth6Yk1ykZZMDXBu3hQ9Zuy61tMX ObB7u9RN8/WPDYWg7zNw/nFSc1INbJw3+rSZtI5g+oqgaoDZzbN7jxChn4IhuT4RuXg5 lg8wRTnRsXmdXmlQWyQv6iEepGDDtfUbrGFynRlIrptzZxqHXreKfsRjHGE2nx/VMFIN nqbmGJhi1dkfGB6R5di+gyNHOxQf9d8gguM//fCBVisNcN4lLjQmCMOpdVFYIcxHxfvY akhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646848; x=1775251648; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=64HjyIw3YSOllArTTqZkAithVHrT5AIrg1J84ohe30s=; b=dF7ie5M4cknNWoxrWAWNlYDV+OdNx5GJDNL59CIxTHXGo6CDUFGwHgnuVPFrBBKY56 1ogMKkTji6CSvlU3ITmzFsMeySxDLPOdZOLNAT7JxXu613NbDLT8y74D8xNeKZgJnUBh /Bg0olY53nmgMod9hs23mGnNmBYHQliOyP3RTdlveDohXUtPDmiBMgmLFxO8RM0iB7Sc o/K/1bOGeg3yPH7/BG3tYR8jY+Twb+euUiFr49JOprAcskRgDddse1pW/obHRhbq5PVm of3w638ktBuxBdlgebUUVQ+xBOjswMxrOPzRFar8YtnKIwb2GDMUeoFJ0XSOtA2RQ2Lp D9ZA== X-Gm-Message-State: AOJu0Yxk4adozl7ytqtdRTOz8TtELwQmp16fRnC7IL6w0v5cyV6iMAls D3HiZ2nUOlnXuGw35+A5vhk/YJ7lCQKVjxX6sRV8ZChJDTkHD7b2rohTNToDftx0RUI6aIp5msh UmLgHVcIFO0m3CDdUZV42PFZPPT41mcNhTldFPlMUlrsuLYv7w/Xz653heHwBL/Rja3nQlkAId6 sdEVJbSARkxpUROc5JzNaqRLZuMPxPccBLXcI5z2J1 X-Gm-Gg: ATEYQzzPSEFWlfAmDwz43tz4uDmtqzoC2z1gUUFRMaY048raIH35LI07XMCwx0OkQKm exqwsILPFUdpmNrICTs0sqDHyANjSOSzXr71j3b3X1cNF8B0r3+qlcNB+YgEaYQp1cuLIMLwxxm QveItue50b82TNPp3PCDuDeZRrs5m14Xoy6RHl+1RN5kS1XRCrSn8z/tM2/kbTncNI4Tjvxj9MR ZUcGXNdsQd6TOb9PqTckBu+HcfrJze8dIzZso+VXiOvTAEJxqeWbELC85cM2Y9Eu+gVhC4RVrUk SSyKT+RN/MdRORowN/ynXFhVYkyLiKYa29Tot13a2vw7wCMo99LwDHZcP6YJRPiEoB7hG9NhWdQ T/+L0z1jRnGl3DRwOKEKOrl3bjoeNpNTKTGijuVbKm+cQpECGmEa159zJwQhuRbcVd4te+e2ADS oEuBhgdpA73e7vwPuWq6nu90NK X-Received: by 2002:a05:600c:3e88:b0:487:1108:48b8 with SMTP id 5b1f17b1804b1-48727ee9897mr62252185e9.2.1774646848459; Fri, 27 Mar 2026 14:27:28 -0700 (PDT) X-Received: by 2002:a05:600c:3e88:b0:487:1108:48b8 with SMTP id 5b1f17b1804b1-48727ee9897mr62251915e9.2.1774646847953; Fri, 27 Mar 2026 14:27:27 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 15/16] ncr710: copy reference counting fixes over from lsi53c895a Date: Fri, 27 Mar 2026 22:25:46 +0100 Message-ID: <20260327212547.460420-16-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646894605158500 Content-Type: text/plain; charset="utf-8" These are mostly the smae, with only the "if (p =3D=3D s->current) case of ncr710_command_complete needing some care to check that it's safe to remove. s->current is dereferenced: - in ncr710_clear_pending_irq - guarded by if (s->current), just to free it - in ncr710_do_dma - guarded by assert (s->current); only called from Data In/Data Out phases, which are entered after scsi_req_new and left after scsi_req_cancel - in ncr710_command_complete - guarded by if (p), command is not complete - in ncr710_transfer_data - coming from the req field of NCR710Request, with assertion that !p->orphan - in ncr710_transfer_data, later - guarded by if (!s->current) return - in ncr710_do_command, after assignment - in ncr710_do_msgout - guarded by if (current_req), would be bad if the request is already complete - in ncr710_reselection_retry_callback - guarded by short-circuiting s->current check - in ncr710_execute_script - guarded by if (s->current) - in ncr710_reg_readb - guarded by short-circuiting s->current check Nothing relies on the post-completion s->current being alive, so get rid of this case and clear s->current immediately as in the lsi53c895a device. Signed-off-by: Paolo Bonzini --- hw/scsi/ncr53c710.h | 1 + hw/scsi/ncr53c710.c | 65 ++++++++++++++++++++++++++------------------- 2 files changed, 39 insertions(+), 27 deletions(-) diff --git a/hw/scsi/ncr53c710.h b/hw/scsi/ncr53c710.h index ee6980753d5..b15e331f060 100644 --- a/hw/scsi/ncr53c710.h +++ b/hw/scsi/ncr53c710.h @@ -133,6 +133,7 @@ struct NCR710Request { bool active; uint8_t *dma_buf; bool out; + bool orphan; uint32_t resume_offset; uint32_t saved_dnad; }; diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index ea114a0cb40..f7b1e153960 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -299,7 +299,7 @@ static const char *ncr710_reg_name(int offset); static void ncr710_script_scsi_interrupt(NCR710State *s, int stat0); static void ncr710_update_irq(NCR710State *s); static void ncr710_script_dma_interrupt(NCR710State *s, int stat); -static void ncr710_request_free(NCR710State *s, NCR710Request *p); +static void ncr710_request_orphan(NCR710State *s, NCR710Request *p); static inline void ncr710_dma_read(NCR710State *s, uint32_t addr, void *buf, uint32_t len); static inline void ncr710_dma_write(NCR710State *s, uint32_t addr, @@ -316,7 +316,7 @@ static inline int ncr710_irq_on_rsl(NCR710State *s) static void ncr710_clear_pending_irq(NCR710State *s) { if (s->current) { - ncr710_request_free(s, s->current); + ncr710_request_orphan(s, s->current); } } =20 @@ -683,42 +683,52 @@ static void ncr710_do_dma(NCR710State *s, int out) uint32_t count; uint32_t addr; SCSIDevice *dev; + SCSIRequest *req; + NCR710Request *p; + assert(s->current); if (!s->current->dma_len) { /* We wait until data is available. */ return; } =20 - dev =3D s->current->req->dev; + p =3D s->current; + req =3D scsi_req_ref(p->req); + dev =3D req->dev; assert(dev); =20 count =3D s->dbc; - if (count > s->current->dma_len) { - count =3D s->current->dma_len; + if (count > p->dma_len) { + count =3D p->dma_len; } =20 addr =3D s->dnad; =20 s->dnad +=3D count; s->dbc -=3D count; - if (s->current->dma_buf =3D=3D NULL) { - s->current->dma_buf =3D scsi_req_get_buf(s->current->req); + if (p->dma_buf =3D=3D NULL) { + p->dma_buf =3D scsi_req_get_buf(req); } /* ??? Set SFBR to first data byte. */ if (out) { - ncr710_dma_read(s, addr, s->current->dma_buf, count); + ncr710_dma_read(s, addr, p->dma_buf, count); } else { - ncr710_dma_write(s, addr, s->current->dma_buf, count); + ncr710_dma_write(s, addr, p->dma_buf, count); } - s->current->dma_len -=3D count; - if (s->current->dma_len =3D=3D 0) { - s->current->dma_buf =3D NULL; - s->current->pending =3D 0; - s->waiting =3D NCR710_WAIT_DMA; - scsi_req_continue(s->current->req); + if (p->orphan) { + scsi_req_unref(req); return; + } + scsi_req_unref(req); + + p->dma_len -=3D count; + if (p->dma_len =3D=3D 0) { + p->dma_buf =3D NULL; + p->pending =3D 0; + s->waiting =3D NCR710_WAIT_DMA; + scsi_req_continue(req); } else { - s->current->dma_buf +=3D count; + p->dma_buf +=3D count; s->waiting =3D NCR710_WAIT_NONE; ncr710_execute_script(s); } @@ -733,14 +743,18 @@ static void ncr710_add_msg_byte(NCR710State *s, uint8= _t data) } } =20 -static void ncr710_request_free(NCR710State *s, NCR710Request *p) +static void ncr710_request_orphan(NCR710State *s, NCR710Request *p) { - p->req->hba_private =3D NULL; + p->orphan =3D true; if (p =3D=3D s->current) { s->current =3D NULL; } scsi_req_unref(p->req); - g_free(p); +} + +static void ncr710_free_request(SCSIBus *bus, void *priv) +{ + g_free(priv); } =20 void ncr710_request_cancelled(SCSIRequest *req) @@ -748,7 +762,7 @@ void ncr710_request_cancelled(SCSIRequest *req) NCR710State *s =3D ncr710_from_scsi_bus(req->bus); NCR710Request *p =3D (NCR710Request *)req->hba_private; if (p) { - ncr710_request_free(s, p); + ncr710_request_orphan(s, p); } } =20 @@ -790,11 +804,7 @@ void ncr710_command_complete(SCSIRequest *req, size_t = resid) ncr710_set_phase(s, PHASE_ST); =20 if (p) { - if (p =3D=3D s->current) { - req->hba_private =3D NULL; - } else { - ncr710_request_free(s, p); - } + ncr710_request_orphan(s, p); } =20 if (s->waiting =3D=3D NCR710_WAIT_RESELECT || s->waiting =3D=3D NCR710= _WAIT_DMA) { @@ -806,11 +816,11 @@ void ncr710_command_complete(SCSIRequest *req, size_t= resid) void ncr710_transfer_data(SCSIRequest *req, uint32_t len) { NCR710State *s =3D ncr710_from_scsi_bus(req->bus); + NCR710Request *p =3D (NCR710Request *)req->hba_private; =20 - assert(req->hba_private); + assert(!p->orphan); =20 if (s->waiting =3D=3D NCR710_WAIT_DMA) { - NCR710Request *p =3D (NCR710Request *)req->hba_private; if (p) { p->dma_len =3D len; } @@ -2248,6 +2258,7 @@ static const struct SCSIBusInfo ncr710_scsi_info =3D { .transfer_data =3D ncr710_transfer_data, .complete =3D ncr710_command_complete, .cancel =3D ncr710_request_cancelled, + .free_request =3D ncr710_free_request, }; =20 static const MemoryRegionOps ncr710_mmio_ops =3D { --=20 2.53.0 From nobody Thu Apr 2 14:14:18 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1774646883; cv=none; d=zohomail.com; s=zohoarc; b=OGF9W5zkom4l6DqjYtA4IBApQviqKlZILBAgzTQZuo+Dg1T9pRYBHW7nglwY0lwv0kHfgCIqNd8ZkL7sEhFgmFiPdsEj3Bit0VwWwehdcOO42FBPQ1fqjKEzHB7BhFR0mwncAReJZd9QhtjlNymAjcT94HIX8nsQvqEkc0rzdDE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1774646883; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Kn3TlGxvri/ygLm6oWXfbfHTV18razK+0DgQDbp4zwI=; b=GLBVNPYZ8wNrtLflKROyFsjV6VVM2YUchG1J4gJ558z7w6HhY/TDA9zc1nZ6/nGMsxrOUvc1YMFMUdYaszxl+8S0X3LnXHSW0LmoMoCTBN1XhnrNigBl0E1tY1uoy26KSzrIxKzUICAxxk16ocI0rUtmpRTF7Nrv/I24A8tWDJk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1774646883080405.79155600093657; Fri, 27 Mar 2026 14:28:03 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w6EiW-0006pk-Cm; Fri, 27 Mar 2026 17:27:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiV-0006pF-4h for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:43 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w6EiT-0003uT-Q3 for qemu-devel@nongnu.org; Fri, 27 Mar 2026 17:27:42 -0400 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-316-fysDzwhVP9ijGUCagEkUXg-1; Fri, 27 Mar 2026 17:27:37 -0400 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-43b86de58d9so2133853f8f.0 for ; Fri, 27 Mar 2026 14:27:37 -0700 (PDT) Received: from [192.168.10.48] ([151.49.85.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43cf21eb95fsm823760f8f.12.2026.03.27.14.27.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Mar 2026 14:27:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1774646861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Kn3TlGxvri/ygLm6oWXfbfHTV18razK+0DgQDbp4zwI=; b=EJqXLSDFjcxmTdh6g7MR3EvTxehYVLH1Gnszy2Q1NWreMIZpsup+oLukx3qzy6LyOLKeH7 mTIqC4EbQbOITmYPv3EYVkfMRlwaCfJ3w6mNXa6r/z6EWHilJIt11/XXDPMXspaNn2/3Fd HTgaNfM3XjuDKdhTSAPgCeSPUfPMmLU= X-MC-Unique: fysDzwhVP9ijGUCagEkUXg-1 X-Mimecast-MFC-AGG-ID: fysDzwhVP9ijGUCagEkUXg_1774646856 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1774646855; x=1775251655; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Kn3TlGxvri/ygLm6oWXfbfHTV18razK+0DgQDbp4zwI=; b=TTWhWo1echKEbAIqXF17DWA45LDlMmrogIqw8i1M8yBaeN5sQOcjTMA0y08ZvjlWa2 3yLIXhD68AeQu5kj2TLzHp3oWcFPyXFACx6pF/E9rNE22LCwe9fIXqP33mZNQ2XLn2va nUGfVOERFyduU06/CI93+loYBuUIuohJyQi/3VrqeIwnTTDw7mBWs6HZ1ut1rPq0lyMf Au8rJsBsmD+N+QNguHul4vfMYSXki9KPfN5QZY1L2r+Iv4ov7OqfD0apwezMfruRD+DB zyPEfQo0uwRZWkkY48aXhljIML3zot9jxpdQ5v0HepIW/Fwe1ccTKDN5+E/w6FIp206m UmaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774646855; x=1775251655; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Kn3TlGxvri/ygLm6oWXfbfHTV18razK+0DgQDbp4zwI=; b=LUZ8JcScbwgNRPSvWy9eyj3Dap9yfxWX/aXTM+rfwp66FEaarUDF5t6Y/shgetiiZw LO7JVfQAAyIHQII9Q2A6s3Gw35DqzPtcEQxjvQAAveJRTJvxsp2tXqmnIc7uFTYc0VEI c+dL+bGpPX3jAcFC0aLyOYP/vXqfpGoDuH6q/cqZWuLUdWpUU2t9GBG0U9J+F+XJAtgx kgFPXXVVbHX5T4J1WdRGSBL+DF950N+4NypTRb9kfKHbToAqsyh0sYlfR5D5XtU5LgbV Ky1FVRNulM1Blx0NWJrfD5lOZ/j6ZZ2Y/vrD4yPL/MPyUTfOeRe+w8e/I//xBlDVDsMo nWsw== X-Gm-Message-State: AOJu0YzGPDBTM3z5QsAq9ySvX1Zix8CPFUuAiOgi1cloJnfZ4CTHqwGs 2Ht7FBClCAqB7kCx3S3ej6F4dD+cyX81D4k9AcKKK32fL+2LEOHzV5K//1lpDeNfJtOX8nNpr4e fdVGNg0YFwAuf/ELiOmV7NMuizBQdXFsmtqDCzRRDPaL8k9YJ0BBTUfLTwGxzKFk6SqDqv5ORDi rI+GHTlmi80iZvjuVzzCENg47RMv1H+Lbuuedroko4 X-Gm-Gg: ATEYQzyxRoZqyH4pd+lGXLKgRTmF2B0oahQ+Yhirz/Nkg/xemrkT0aYuH/eCRE2d8V2 RPpOkHxkKUVh42K+jJec2jPNpenGnbjFlCVh+TS9r23SIOSAeCSPkGyWB2Aa5zfqhp7jeSiKcOl HX8jUnKML09dY5i1MmfyEgQVwGVCHvdkXWvBFufkZBO6ieB9lv/PO+38yFSfu+++27ytCb6we4p KQRlbV7C3JBdZjRTInNtqCSInFcbIng9/M09wx73Mp5fNaM8sOZE6PZgkMIrtVG1idG7KgF0C5T T33eW3ZTLdIAjXTHFykX2/2l5AwxQqBosViRn0j6iSsdwe8Zy3lsn7tYupH7MToGitERU3BlOUr e19ZbaClNotSyUna4qs7//Lvce1FC0RGS2hzETyX+y8/J6pXXzT0hBV3XuPzBhhmXqfRqkim2dw 99doXwkFkyTBrvJgfob+Q+Drxl X-Received: by 2002:a05:6000:2382:b0:43b:4757:cc5 with SMTP id ffacd0b85a97d-43b9e9e8e21mr6297921f8f.19.1774646855208; Fri, 27 Mar 2026 14:27:35 -0700 (PDT) X-Received: by 2002:a05:6000:2382:b0:43b:4757:cc5 with SMTP id ffacd0b85a97d-43b9e9e8e21mr6297897f8f.19.1774646854694; Fri, 27 Mar 2026 14:27:34 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Helge Deller Subject: [PATCH 16/16] ncr710: unify two conditionals Date: Fri, 27 Mar 2026 22:25:47 +0100 Message-ID: <20260327212547.460420-17-pbonzini@redhat.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260327212547.460420-1-pbonzini@redhat.com> References: <20260327212547.460420-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1774646884491158500 Content-Type: text/plain; charset="utf-8" Signed-off-by: Paolo Bonzini Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/scsi/ncr53c710.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index f7b1e153960..25a1018ab11 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -797,13 +797,10 @@ void ncr710_command_complete(SCSIRequest *req, size_t= resid) s->status =3D req->status; s->command_complete =3D NCR710_CMD_COMPLETE; =20 - if (p) { - p->pending =3D 0; - } - ncr710_set_phase(s, PHASE_ST); =20 if (p) { + p->pending =3D 0; ncr710_request_orphan(s, p); } =20 --=20 2.53.0