From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751353AbeDEPQC (ORCPT ); Thu, 5 Apr 2018 11:16:02 -0400 Received: from iolanthe.rowland.org ([192.131.102.54]:55658 "HELO iolanthe.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1751038AbeDEPQC (ORCPT ); Thu, 5 Apr 2018 11:16:02 -0400 Date: Thu, 5 Apr 2018 11:16:00 -0400 (EDT) From: Alan Stern X-X-Sender: stern@iolanthe.rowland.org To: Peter Zijlstra cc: Daniel Jordan , , , , , , , , , , , Steven Sistare , Pasha Tatashin Subject: Re: Control dependency between prior load in while condition and later store? In-Reply-To: <20180405145650.GT4043@hirez.programming.kicks-ass.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 5 Apr 2018, Peter Zijlstra wrote: > On Thu, Apr 05, 2018 at 10:35:22AM -0400, Alan Stern wrote: > > In this example, READ_ONCE() is in fact a volatile access, so we're > > okay. > > But our documentation clearly states a control-dep can only be from a > READ_ONCE() (or something stronger), right? So we should be good > irrespectively. Agreed. My point was that these are delicate issues. (And they will become more relevant when we want to expand the Linux Kernel Memory Consistency Model to cover ordinary accesses and data races.) Alan