public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jeremy Fitzhardinge <jeremy@goop.org>
To: David Rientjes <rientjes@google.com>
Cc: Randy Dunlap <randy.dunlap@oracle.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Paul Sokolovsky <pmiscml@gmail.com>,
	linux-kernel@vger.kernel.org, Andi Kleen <ak@suse.de>
Subject: Re: [RFC/PATCH] doc: volatile considered evil
Date: Tue, 08 May 2007 14:37:01 -0700	[thread overview]
Message-ID: <4640ED7D.708@goop.org> (raw)
In-Reply-To: <alpine.DEB.0.99.0705081423500.24138@chino.kir.corp.google.com>

David Rientjes wrote:
> Ok, so let's take your second paragraph and my email of an hour ago:
>
> 	In an asm construct, if all your input operands are modified and 
> 	specified as output operands as well, volatile must be added so 
> 	that the entire construct is not optimized away.  Additionally, 
> 	it must be added if your construct modifies memory that is neither 
> 	listed in inputs nor outputs to the construct so that it is known 
> 	to have at least one side-effect.

Hm.  Is "asm volatile" necessary if you have a "memory" clobber?  Would
probably be the safest thing, I guess.

> and add it to any proposed change to CodingStyle that suggests against the 
> 'volatile' keyword since there exists a distinct difference in behavior 
> between using the keyword as a type qualifier for an object and as a 
> qualifier for an asm construct.
>   

Yeah, they're completely different.  They're not even analogous, really,
which was my point.  People confer more meaning to "asm volatile" than
it actually has, because of the analogy with volatile variables/types. 
They would have been better off with something like "asm static", which
isn't much more meaningful, but at least it doesn't mislead the reader
into thinking it has anything to do with the other volatile.

But yes, seems like a worthwhile thing to point out.  Or just point to
the gcc manual, which is pretty clear about all this stuff.

    J

  reply	other threads:[~2007-05-08 21:37 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-01  5:08 [RFC, PATCH 2/4] SoC base drivers: ASIC3 SoC hardware definitions Paul Sokolovsky
2007-05-01  6:56 ` Andrew Morton
2007-05-01 10:27   ` Alan Cox
2007-05-01 12:04     ` Paul Sokolovsky
2007-05-01 12:21       ` Jamey Hicks
2007-05-08 19:14   ` [RFC/PATCH] doc: volatile considered evil Randy Dunlap
2007-05-08 19:18     ` David Rientjes
2007-05-08 20:00       ` Krzysztof Halasa
2007-05-08 20:20         ` David Rientjes
2007-05-08 23:13           ` Randy Dunlap
2007-05-08 23:54             ` David Rientjes
2007-05-09  0:00               ` Randy Dunlap
2007-05-08 21:05         ` Jeremy Fitzhardinge
2007-05-08 21:10           ` Krzysztof Halasa
2007-05-08 21:16           ` Jeff Garzik
2007-05-08 21:26             ` Randy Dunlap
2007-05-08 21:25               ` Jeff Garzik
2007-05-08 21:20       ` Jeremy Fitzhardinge
2007-05-08 21:27         ` David Rientjes
2007-05-08 21:37           ` Jeremy Fitzhardinge [this message]
2007-05-08 21:59             ` David Rientjes
2007-05-08 22:04               ` Jeremy Fitzhardinge
2007-05-08 22:19                 ` David Rientjes
2007-05-08 22:29                   ` Jeremy Fitzhardinge
2007-05-08 22:35                     ` David Rientjes
2007-05-08 23:09           ` Randy Dunlap
2007-05-08 21:29         ` Randy Dunlap
2007-05-08 20:07     ` Satyam Sharma
2007-05-08 23:34       ` [PATCH] " Randy Dunlap
2007-05-09  0:06         ` David Rientjes
2007-05-09  2:08           ` Randy Dunlap
2007-05-09  2:38             ` David Rientjes
2007-05-09  3:15               ` Randy Dunlap
2007-05-09  9:21               ` Alan Cox
2007-05-09  9:26                 ` Nick Piggin
2007-05-09 13:31                   ` Alan Cox
2007-05-09 10:25                 ` David Rientjes
2007-05-09 13:36                   ` Alan Cox
2007-05-09 18:41                     ` David Rientjes
2007-05-09 20:23                       ` Alan Cox
2007-05-09 20:25                         ` David Rientjes
2007-05-09 22:47                         ` Rob Landley
2007-05-09  8:50         ` Stefan Richter
2007-05-09 15:52           ` Randy Dunlap
2007-05-09 19:04             ` Satyam Sharma
2007-05-09  1:47     ` [RFC/PATCH] " Jonathan Corbet
2007-05-09  9:43       ` Johannes Stezenbach
2007-05-09 19:34         ` Satyam Sharma

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4640ED7D.708@goop.org \
    --to=jeremy@goop.org \
    --cc=ak@suse.de \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pmiscml@gmail.com \
    --cc=randy.dunlap@oracle.com \
    --cc=rientjes@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox