Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp587024ybh; Tue, 10 Mar 2020 04:38:27 -0700 (PDT) X-Google-Smtp-Source: ADFU+vvn9T1HGESLZpF9fCukKMuWe8bKtQOMJPJ1daqgzlqfep07kqaVK0Sc6QSf1GNxTQRyTETz X-Received: by 2002:aca:cc4b:: with SMTP id c72mr806097oig.139.1583840306919; Tue, 10 Mar 2020 04:38:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1583840306; cv=none; d=google.com; s=arc-20160816; b=MquI6j+nwLb49n1+qjfAGu/XEpuCdZv/NrEAq+FTb4r5PADOsoPaQSppawnu4h8ss4 oKg6TyK5H7lHuH8CSAAyqpHuhW5wmnCu0r5gUBUAN1q0T7rpSU+CJ8QQ55tSpu4KK2h1 QrDdqGrfJpPa9FDMXjXB+00bAZXOGshlXc/jiqHmz6GJltyaj/eao0AEv8lZ6JL8D0kk Y6Ueokjz06yfZN29o3W1/dqwr9XfpC+vSYW086WCpBEGiUcF4I6ZjZeRU90cw2oxsrGl x8I0KEQ2haNdQkMqXzIuRZde2ENHZ61rEhDcjCrOzrBFXikCDyfm1uKfkgmXjp/6OpE4 kOYw== 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 :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from; bh=kbno6ABx/i/N/RYZOvvt6e1t1Zr1gXVE0mvlnWo1hd0=; b=qyBIjJVDMafv59knVz277ynRLxNPIf2vjUkHizuuAQBDv6M0FolgzE4vpm1RBx3/lD wmeiFwWYjWh+DibVZi9nCQPsnvainVhadz6YqT6FEIjgsDh++yOni7QcR7LaAOo5/7sM Upv/n4vEHYyCFznpRHkU2VVk1VVwpOu+HTmNcnWAOZzyc7YgTMpaeHPeaOq4z5d2HRoB ojVWOb5uxKx4wFoNKGci6ruXeA19IiDHqcxlp+C/8/77kzqdl6E4fjYD1TryxOKRbpGr Q6dmGCERmodaZ+K1hhuNv7H6rsqgfEaf6+zcR2ML4JIczIVckBHrl7nw2MgQlAnooMkf nYZA== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=aculab.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 22si5403200oij.227.2020.03.10.04.38.15; Tue, 10 Mar 2020 04:38:26 -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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=aculab.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726295AbgCJLgq convert rfc822-to-8bit (ORCPT + 99 others); Tue, 10 Mar 2020 07:36:46 -0400 Received: from eu-smtp-delivery-151.mimecast.com ([146.101.78.151]:38996 "EHLO eu-smtp-delivery-151.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725937AbgCJLgq (ORCPT ); Tue, 10 Mar 2020 07:36:46 -0400 Received: from AcuMS.aculab.com (156.67.243.126 [156.67.243.126]) (Using TLS) by relay.mimecast.com with ESMTP id uk-mta-59-qJx50LcXOruXxnxninM0kQ-1; Tue, 10 Mar 2020 11:36:42 +0000 X-MC-Unique: qJx50LcXOruXxnxninM0kQ-1 Received: from AcuMS.Aculab.com (fd9f:af1c:a25b:0:43c:695e:880f:8750) by AcuMS.aculab.com (fd9f:af1c:a25b:0:43c:695e:880f:8750) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Tue, 10 Mar 2020 11:36:41 +0000 Received: from AcuMS.Aculab.com ([fe80::43c:695e:880f:8750]) by AcuMS.aculab.com ([fe80::43c:695e:880f:8750%12]) with mapi id 15.00.1347.000; Tue, 10 Mar 2020 11:36:41 +0000 From: David Laight To: 'Chris Wilson' , "linux-kernel@vger.kernel.org" CC: "intel-gfx@lists.freedesktop.org" , Andrew Morton , "Paul E. McKenney" , Randy Dunlap , "stable@vger.kernel.org" Subject: RE: [PATCH] list: Prevent compiler reloads inside 'safe' list iteration Thread-Topic: [PATCH] list: Prevent compiler reloads inside 'safe' list iteration Thread-Index: AQHV9r1KBrT+D4Vo2U+Op9v/Nv0od6hBsdzw Date: Tue, 10 Mar 2020 11:36:41 +0000 Message-ID: <2e936d8fd2c445beb08e6dd3ee1f3891@AcuMS.aculab.com> References: <20200310092119.14965-1-chris@chris-wilson.co.uk> In-Reply-To: <20200310092119.14965-1-chris@chris-wilson.co.uk> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: aculab.com Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Chris Wilson > Sent: 10 March 2020 09:21 > Instruct the compiler to read the next element in the list iteration > once, and that it is not allowed to reload the value from the stale > element later. This is important as during the course of the safe > iteration, the stale element may be poisoned (unbeknownst to the > compiler). Eh? I thought any function call will stop the compiler being allowed to reload the value. The 'safe' loop iterators are only 'safe' against called code removing the current item from the list. > This helps prevent kcsan warnings over 'unsafe' conduct in releasing the > list elements during list_for_each_entry_safe() and friends. Sounds like kcsan is buggy ???? David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)