Received: by 2002:a05:7412:251c:b0:e2:908c:2ebd with SMTP id w28csp2092740rda; Tue, 24 Oct 2023 12:03:53 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF+C9i8vsIIJaGMaLWISIATxnjMPVHlrqFYjcxDabOo/h0hljAGkcEESxQpJKY8FU0XXfRR X-Received: by 2002:a05:6a20:8404:b0:17d:e6d5:7585 with SMTP id c4-20020a056a20840400b0017de6d57585mr4267520pzd.18.1698174233440; Tue, 24 Oct 2023 12:03:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698174233; cv=none; d=google.com; s=arc-20160816; b=OOh1s8vD8hDQZowvO5w6mrPXqwQxyRVesdDdV8VYqCSkrQvq96iJYnuZv+Naw/w78o pSB9JhDoER5xlpr1fhNwbuZuAGLJw/0f1DqYgpf5G6OsIs+9oEiJoa4ZeZDtnue7polX nAtQdLnTjrTMMDNplX1jx5/rar2Jy3jA/AhLO0n6bYF2npH90ZuRyA6G+4u95X4dNV7A 0sw5Ti9xXi7QzNYvBPvkPK4zhu9/PdbxV7tOl1NdiaK9b1MRh/vzI9qceQMPmvHRtrH2 367HoKupy4LrUcgH4z2y2ojySEBYfp7PenIyYeMw8dBi4heunYUtCW0xndgzaUolMsnD mp/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=GrekS4CoNdEIxbVvO8w8TUPqsoqaiQBuxBSUtv98lU4=; fh=ctpPq+Nsdkc0DXLVrLmNJWS1eb9oYV7D7zHt/7KaINE=; b=W0T1oWLu1//MBGRd+PGSK3sJSLYJYzbtfXed3imXamzuwZckEm9RgjCcoBbBLO2E5P tJ8c0+4rIzVf7yoh5/xbjwaPde1TfBHGOgCgYHxnTU1nZies1edDzUli6go+FSzCBMPT SeFAHnR7vPUcKRRexfytBvNUOPgKIbVl6QXAgxxv9aXGLtaAbg8OLSqlDg0pRFiDDW4W qZq4KdG8lcRsnsuQ0vTSGma/TvnFntqhYdj4VYEFWEGQ/IWPu6f6t/tGbeSzmm7yTVwf CaFYAoZXLgxdJU2l9LFDlmChHp3AJZX9TUVhnMISFhbeiuy9bqLozhwTi+QK4ZPBBYu5 79nQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=acm.org Return-Path: Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id l70-20020a639149000000b00564f223ef05si9061274pge.11.2023.10.24.12.03.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Oct 2023 12:03:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=acm.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id CE3CB80A90CE; Tue, 24 Oct 2023 12:03:50 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1343935AbjJXTDo (ORCPT + 99 others); Tue, 24 Oct 2023 15:03:44 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344194AbjJXTDm (ORCPT ); Tue, 24 Oct 2023 15:03:42 -0400 Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4A84C10D3; Tue, 24 Oct 2023 12:03:40 -0700 (PDT) Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-6bee11456baso3921709b3a.1; Tue, 24 Oct 2023 12:03:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1698174220; x=1698779020; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=GrekS4CoNdEIxbVvO8w8TUPqsoqaiQBuxBSUtv98lU4=; b=KZ9VnlEx/aaPPNhxMCn6QA3Aq4g7JqlJMgiYbIW5rfNx2OeBIgyV5+uK0iOPwvAhVx 4vLgMDkQTUN8yVhSNka0d9PIooHzCX+efz0uPGYUM//V205lNZ4uxwlyvbj89nfEjxjd rvBGLjWw8jj4pc6EoZPeyMZg+nxc7xNQMkODov5HF5wVOBpfufW7OaIQtG8eOtRAXOzc dRUgv6r4HoNilwc3bLoDewzX9z6djHvS9p4FreuUnOfXaESiMCREtmeoGCExg6fPlgTW J/0ZQqilMvMt6oWF17F5uZ3lLhmXCQ/WlX0iBrz3shPS6t1TMZ6JdTpu0nIHu/G94vnx FX8Q== X-Gm-Message-State: AOJu0YyapflGvuBYa4+aS+aZijPL7ZNgKDoe36JDFSy/xy5ISSMDA0Dc wHN1ZPpbiHRmpm+zWtCUa8DszTkF93y9sQ== X-Received: by 2002:a05:6a21:35c8:b0:17d:f676:40b3 with SMTP id ba8-20020a056a2135c800b0017df67640b3mr3420676pzc.19.1698174219596; Tue, 24 Oct 2023 12:03:39 -0700 (PDT) Received: from ?IPV6:2620:15c:211:201:30e1:c9d3:6b41:493d? ([2620:15c:211:201:30e1:c9d3:6b41:493d]) by smtp.gmail.com with ESMTPSA id q4-20020aa78424000000b006be2927ca7esm7922835pfn.85.2023.10.24.12.03.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 24 Oct 2023 12:03:39 -0700 (PDT) Message-ID: <7f9fa4eb-01fb-4581-badf-535f634d0152@acm.org> Date: Tue, 24 Oct 2023 12:03:36 -0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] scsi: message: fusion: Fix a possible data race in mpt_ioc_reset() Content-Language: en-US To: Tuo Li , sathya.prakash@broadcom.com, sreekanth.reddy@broadcom.com, suganath-prabu.subramani@broadcom.com Cc: MPT-FusionLinux.pdl@broadcom.com, linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org, baijiaju1990@outlook.com, BassCheck References: <20231024072729.455713-1-islituo@gmail.com> From: Bart Van Assche In-Reply-To: <20231024072729.455713-1-islituo@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Tue, 24 Oct 2023 12:03:51 -0700 (PDT) On 10/24/23 00:27, Tuo Li wrote: > In my opinion, this may be a harmful race, because the value of > ioc->taskmgmt_quiesce_io can be rewritten by mpt_ioc_reset() when > another thread is accessing it. It is a common pattern in the Linux kernel that a variable is set from one thread without using locking and is read by another thread that is holding a lock. It should be sufficient here to use WRITE_ONCE(). I don't think that acquiring and releasing the spin lock is required. Thanks, Bart.