Messages in this thread | | | Date | Sun, 25 Feb 2007 04:06:57 -0800 | From | Andrew Morton <> | Subject | Re: [patch 3/3] mm: fix PageUptodate memorder |
| |
What an unpleasing patchset. I really really hope we really have a bug in there, and that all this crap isn't pointless uglification.
We _do_ need a flush_dcaceh_page() in all cases which you're concerned about. Perhaps we should stick the appropriate barriers in there.
> On Thu, 15 Feb 2007 08:31:31 +0100 (CET) Nick Piggin <npiggin@suse.de> wrote: > +static inline void SetNewPageUptodate(struct page *page) > +{ > + /* > + * S390 sets page dirty bit on IO operations, which is why it is > + * cleared in SetPageUptodate. This is not an issue for newly > + * allocated pages that are brought uptodate by zeroing memory. > + */ > + smp_wmb(); > + __set_bit(PG_uptodate, &(page)->flags); > +}
__SetPageUptodate() might be more conventional.
Boy we'd better get the callers of this little handgrenade right. - 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/
| |