Messages in this thread | | | Subject | Re: Unnecessary barrier in sync_page()? | From | Chris Mason <> | Date | Wed, 07 Jul 2004 16:57:04 -0400 |
| |
On Wed, 2004-07-07 at 14:42, Andrea Arcangeli wrote: > On Wed, Jul 07, 2004 at 11:29:53AM -0700, Andrew Morton wrote: > > Andrea Arcangeli <andrea@suse.de> wrote: > > > > > > however the smp_mb() isn't needed in sync_page, simply because it's > > > perfectly ok if we start running sync_page before reading pagelocked. > > > All we care about is to run sync_page _before_ io_schedule() and that we > > > read PageLocked _after_ prepare_to_wait_exclusive. > > > > > > So the locking in between PageLocked and sync_page is _absolutely_ > > > worthless and the smp_mb() can go away. > > > > IIRC, Chris added that barrier (and several similar) for the reads in > > page_mapping(). > > how does it help to know the page is not locked before executing > page_mapped?
I wasn't worried about the locked bit when I added the barrier, my goal was to order things with people that set page->mapping to null.
-chris
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |