Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp1924802ybv; Thu, 6 Feb 2020 12:22:30 -0800 (PST) X-Google-Smtp-Source: APXvYqytNwM1T36koi/lULRn6shjiU90ozue22Z+U3czoZCtJhyGKpI+O3PCr92o5MYIm/6tos7a X-Received: by 2002:a54:4816:: with SMTP id j22mr8176748oij.179.1581020550043; Thu, 06 Feb 2020 12:22:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581020550; cv=none; d=google.com; s=arc-20160816; b=JCNwZByQWzxAVpEnzbknJTEWsg82KDp/J/cs8BcF/lks/c/yXDaS98oCUjIrxdJ1ph mb8uiNMvg08zTZ9+OsKCh98WXWIrrATmlesUJ5IRAOlNnsmMcx2I5SCJFToHJ1ihW6ho Qur7Ue4oAwkkOE51ZkIDMzsB8gTJPKiMTTn3SmqIr/xNrS4xIH5mo+0KJP7cydvFAc7Y /85D+848CWNlM6fUi/x/e9PSXjgCbs9lQXh7WROPcbXwY3TX5sQmJLaORP1ID2qaBD2h 7KSFG0q/dDUndIS6hB+NrSKupkW+SRqGh5JC3jca/BNY/4kwvynAymkVKuVGTFkJCtHl KoFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=rjvBCgQG7PCKo30bNWy0wd3PGVZSHpsi4wor0rOBgAc=; b=udnyIhe1OkH3WQ+AssAP5knKrXuXWS7i7nRuG+2LZwWVX5PNOQ+rSOBZW1XphAtA0P 8sE60+lI6DdbD2iZgv99EkyMgvlFZ/tO5p58HvsSjbtqIIBLja+TPGfKxcze2RO2jFhd peJaHHGT+hVwHsew7R8FtYtkiUlzDLqWNHXz0tKaBjRcianWkD1LX3ikE2sI99YOoDEq naj7I1rumK58nUYJsaCHtxvAKhRpTREts9RQLPnxkaWOwdgatTn0EUXOoiIFJYgj+D7b sRwGA/SbTul4ARNGNUCBxfmeP2GI6NO+LWL3fSDFWwlG7QjcpvVF7u/nd8zKgpNPJc76 0ylQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=ZGi2BML2; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s204si3036124oie.82.2020.02.06.12.22.16; Thu, 06 Feb 2020 12:22:30 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=ZGi2BML2; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727860AbgBFUUL (ORCPT + 99 others); Thu, 6 Feb 2020 15:20:11 -0500 Received: from bombadil.infradead.org ([198.137.202.133]:40162 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727711AbgBFUUK (ORCPT ); Thu, 6 Feb 2020 15:20:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=rjvBCgQG7PCKo30bNWy0wd3PGVZSHpsi4wor0rOBgAc=; b=ZGi2BML2CU17sq6hY7F3ILOGkv c/kLQ0QaLgaEMpVhUWFAIemXaBw2BO1DbXwzDWMuGDE4St66KbdnVITd49zhhLZ/hMhomYa3THPjR LmaMH9Ji4IehU7vzAQWyRyp8cANkv/87f6SOWANwPK2tiKsFvKipVnvZ6ap1F3os2Pkuqj9gFXCwI DxMypz8aNDozSey/EkLU9T1iXZCLzz507UtB1DRfJnXScrHJviqhucPP/vqVOngGKb45hXIsgdclA uTyiLeEs0HH+6ZK7UHeE5ORUP7dwqFvPNpkJ8oIYUpqOdjiHEVKxtFgMw9Nlzc0Wi5K0UrwPnYCOz YPc4+pvQ==; Received: from willy by bombadil.infradead.org with local (Exim 4.92.3 #3 (Red Hat Linux)) id 1iznd7-0005az-Hc; Thu, 06 Feb 2020 20:20:05 +0000 Date: Thu, 6 Feb 2020 12:20:05 -0800 From: Matthew Wilcox To: Qian Cai Cc: akpm@linux-foundation.org, elver@google.com, jhubbard@nvidia.com, ira.weiny@intel.com, dan.j.williams@intel.com, jack@suse.cz, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH -next v2] mm: mark an intentional data race in page_zonenum Message-ID: <20200206202005.GY8731@bombadil.infradead.org> References: <20200206183000.913-1-cai@lca.pw> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200206183000.913-1-cai@lca.pw> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Feb 06, 2020 at 01:30:00PM -0500, Qian Cai wrote: > Both the read and write are done only with the non-exclusive mmap_sem > held. Since the read only check for a specific bit range (up to 3 bits) > in the flag but the write here never change those 3 bits, so load > tearing would be harmless here. Thus, just mark it as an intentional > data races using the data_race() macro which is designed for those > situations [1]. This changelog makes me think you don't really understand the situation. A page never changes its zone number. The zone number happens to be stored in the same word as other bits which are modified, but the zone number bits will never be modified by any other write. So we can accept a reload of the zone bits after an intervening write and we don't need to use READ_ONCE().