From: Krzysztof Halasa <khc@pm.waw.pl>
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
Subject: Re: [RFC/PATCH] doc: volatile considered evil
Date: Tue, 08 May 2007 22:00:49 +0200 [thread overview]
Message-ID: <m3k5vj2iha.fsf@maximus.localdomain> (raw)
In-Reply-To: <alpine.DEB.0.99.0705081217180.12908@chino.kir.corp.google.com> (David Rientjes's message of "Tue, 8 May 2007 12:18:33 -0700 (PDT)")
David Rientjes <rientjes@google.com> writes:
> Since 'volatile' has two different semantics depending on the context in
> which it is used, this warning should be appended to include the fact that
> it is legitimate to use for inline assembly.
I think it hasn't two semantics, it's like arguing that char has two
semantics.
Volatile does one thing - prohibits C compiler from optimizing
accesses to the variable. Either with (volatile *) casts and with
volatile var;
Linus is right in that volatile != direct access to the hardware
and direct sync between all CPUs. Yes, most uses in high level code
are probably bugs. OTOH, there are other uses where optimizing must
be prohibited. It doesn't matter which form
is used, in fact
volatile type name;
name
is equivalent to:
type name;
*(volatile type *)&name;
At least as long as "volatile" keyword is concerned.
--
Krzysztof Halasa
next prev parent reply other threads:[~2007-05-08 20:00 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 [this message]
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
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=m3k5vj2iha.fsf@maximus.localdomain \
--to=khc@pm.waw.pl \
--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
all inboxes | Powered by JetHome®