Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp27095ybh; Wed, 11 Mar 2020 19:59:47 -0700 (PDT) X-Google-Smtp-Source: ADFU+vvszVsNOREXB3bKI8DZakKOh/RDMC/lKOin7guprMv1wij2Ddi5sBhcTr/IKj0c5AOdy55F X-Received: by 2002:a05:6830:14d7:: with SMTP id t23mr4573165otq.80.1583981987189; Wed, 11 Mar 2020 19:59:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1583981987; cv=none; d=google.com; s=arc-20160816; b=lDrFaVV3+Z5IMcNCYo+iRBuh3oAUR5sZksYCW3IcItdyqZcFaVnqzrqYYPWi8obOkv HYBojbQ3JL0MNUBsss74daltX7cNceHVCzCzJ2/HAj9DHmBHpyImtlYddak/2/Lbb+4/ ZrLDerf+p3eVC/KdaIenZQvQQy/BoA3sshVsOURwxmdyD0zSSk7PmqLUQ/wxjWtv91mW cStepLOHe9zzyKk98E+X+gT/4xbiRCMDisLSGC6X/KmgAZieMTDF7wUS4bmrOTMur9m1 R1Scsr8meCpvTyd+2l4K1y88Agy9qfJeZm7TZiVGx0HlU1obLjy9n4l1XdCev4CSTIFD CzBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature; bh=jrk/Hx3sSb7S1FQZCsz+eQgPw4XUgo5qZVMPsf50INY=; b=xA+C0+iNcUHezNhJkClDWOQIkQ6pwmOq/9fae6tF8YWqWK4FpEgr6BfwjV7b1EhV63 L2cHmvYBnff3F+bjTvpSbumg0i4CvO/6ZaNTdHaD8qg6ZMy9D0n3smjQM7BeVU7ihcfb AWeVQHNWZ7tOWY1CMUvCGIcldPxdjvLn/LEQWv/6sMQ3j/iHWP/EPAvOs+cRkwP4GsmK Me/xzRS7ZQPVU0jlJhygExkblugrw2XgHCEAHqYBBl8+4TIoaqMrB2iV1UQ4RdiHLIco jIaPAxXQHs4FLJctj0xwitUdayVvcxozW9ceRj0mwAx+LeKZs9m5WaMJFfyOeRcAifdr bzpA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="K8pZg/PK"; 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 l23si1917606otj.144.2020.03.11.19.59.29; Wed, 11 Mar 2020 19:59:47 -0700 (PDT) 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=pass header.i=@kernel.org header.s=default header.b="K8pZg/PK"; 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 S2387673AbgCLC6L (ORCPT + 99 others); Wed, 11 Mar 2020 22:58:11 -0400 Received: from mail.kernel.org ([198.145.29.99]:39780 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387396AbgCLC6L (ORCPT ); Wed, 11 Mar 2020 22:58:11 -0400 Received: from localhost.localdomain (c-73-231-172-41.hsd1.ca.comcast.net [73.231.172.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id EAB4920755; Thu, 12 Mar 2020 02:58:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1583981891; bh=wJdKQS6Gj9xiXn1BGxhMdcyOYuYKUt5sQjTbx3jinXE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=K8pZg/PKbre08qAnpKHYtRQEa3Y8eHQgSJ3fgLwtnqltex4FaiU8ZEIREHiNxjpb9 qxfNUXGPXjA4gqUzprHjQcLRywJGzvrNEi9TTFQuebfkJWWooV/O8sPMetTVryirIh b+RYwrkYLKzVIQ3DjUV5cnyC5qOPAdbW/iiKlw60= Date: Wed, 11 Mar 2020 19:58:10 -0700 From: Andrew Morton To: paulmck@kernel.org Cc: David Laight , "'Marco Elver'" , Chris Wilson , "linux-kernel@vger.kernel.org" , "intel-gfx@lists.freedesktop.org" , Randy Dunlap , "stable@vger.kernel.org" Subject: Re: [PATCH] list: Prevent compiler reloads inside 'safe' list iteration Message-Id: <20200311195810.959d4f40d6013ee59a238cf3@linux-foundation.org> In-Reply-To: <20200310154749.GZ2935@paulmck-ThinkPad-P72> References: <20200310092119.14965-1-chris@chris-wilson.co.uk> <2e936d8fd2c445beb08e6dd3ee1f3891@AcuMS.aculab.com> <158384100886.16414.15741589015363013386@build.alporthouse.com> <723d527a4ad349b78bf11d52eba97c0e@AcuMS.aculab.com> <20200310125031.GY2935@paulmck-ThinkPad-P72> <77ff4da6b0a7448c947af6de4fb43cdb@AcuMS.aculab.com> <20200310154749.GZ2935@paulmck-ThinkPad-P72> X-Mailer: Sylpheed 3.5.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 10 Mar 2020 08:47:49 -0700 "Paul E. McKenney" wrote: > On Tue, Mar 10, 2020 at 03:05:57PM +0000, David Laight wrote: > > From: Marco Elver > > > Sent: 10 March 2020 14:10 > > ... > > > FWIW, for writes we're already being quite generous, in that plain > > > aligned writes up to word-size are assumed to be "atomic" with the > > > default (conservative) config, i.e. marking such writes is optional. > > > Although, that's a generous assumption that is not always guaranteed > > > to hold (https://lore.kernel.org/lkml/20190821103200.kpufwtviqhpbuv2n@willie-the-truck/). > > > > Remind me to start writing everything in assembler. > > Been there, done that. :-/ > > > That and to mark all structure members 'volatile'. > > Indeed. READ_ONCE() and WRITE_ONCE() get this same effect, but without > pessimizing non-concurrent accesses to those same members. Plus KCSAN > knows about READ_ONCE(), WRITE_ONCE(), and also volatile members. > So I take it from all the above that we should do this. Did anyone actually review the code? :)