"Chris Friesen" <[email protected]> writes: > Linus Torvalds wrote: > >> On Thu, 6 Jul 2006, Mark Lord wrote: > >>> A volatile declaration may be used to describe an object corresponding >>> to a memory-mapped input/output port or an object accessed by an >>> aysnchronously interrupting function. Actions on objects so declared >>> shall not be "optimized out" by an implementation or reordered except >>> as permitted by the rules for evaluating expressions. >> Note that the "reordered" is totally pointless. >> The _hardware_ will re-order accesses. Which is the whole >> point. "volatile" is basically never sufficient in itself. > > The "reordered" thing really only matters on SMP machines, no? No, each CPU does write combining and write merging all on its own. -- Måns Rullgård [email protected] - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
- References:
- Re: [patch] uninline init_waitqueue_*() functions
- From: Ingo Molnar <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Andrew Morton <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Ingo Molnar <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Andrew Morton <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Linus Torvalds <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Ingo Molnar <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Linus Torvalds <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Ingo Molnar <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Linus Torvalds <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- From: Linus Torvalds <[email protected]>
- [patch] spinlocks: remove 'volatile'
- From: Ingo Molnar <[email protected]>
- Re: [patch] spinlocks: remove 'volatile'
- From: "linux-os \(Dick Johnson\)" <[email protected]>
- Re: [patch] spinlocks: remove 'volatile'
- From: Arjan van de Ven <[email protected]>
- Re: [patch] spinlocks: remove 'volatile'
- From: Mark Lord <[email protected]>
- Re: [patch] spinlocks: remove 'volatile'
- From: Linus Torvalds <[email protected]>
- Re: [patch] spinlocks: remove 'volatile'
- From: "Chris Friesen" <[email protected]>
- Re: [patch] uninline init_waitqueue_*() functions
- Prev by Date: Re: [PATCH] hisax fix usage of __init*
- Next by Date: Re: [patch] spinlocks: remove 'volatile'
- Previous by thread: Re: [patch] spinlocks: remove 'volatile'
- Next by thread: Re: [patch] spinlocks: remove 'volatile'
- Index(es):