__pte; \
})
-#define arch_set_page_uptodate(__page) \
+#define SetPageUptodate(_page) \
do { \
- asm volatile ("sske %0,%1" : : "d" (0), \
+ struct page *__page = (_page); \
+ if (!test_and_set_bit(PG_uptodate, &__page->flags)) \
+ asm volatile ("sske %0,%1" : : "d" (0), \
"a" (__pa((__page-mem_map) << PAGE_SHIFT)));\
} while (0)