#endif /* __KERNEL__ */
-static inline void wbinvd(void)
-{
- mmu_update_t u;
- u.ptr = MMU_EXTENDED_COMMAND;
- u.val = MMUEXT_FLUSH_CACHE;
- (void)HYPERVISOR_mmu_update(&u, 1, NULL);
-}
+#define wbinvd() \
+ __asm__ __volatile__ ("wbinvd": : :"memory");
static inline unsigned long get_limit(unsigned long segment)
{
for (i = 0; i < num_entries; i++) {
agp_bridge->gatt_table[i] =
-diff -ur linux-2.6.9/include/asm-i386/agp.h linux-2.6.9-new/include/asm-i386/agp.h
---- linux-2.6.9/include/asm-i386/agp.h 2004-10-18 22:53:06.000000000 +0100
-+++ linux-2.6.9-new/include/asm-i386/agp.h 2004-11-28 19:32:03.000000000 +0000
-@@ -3,6 +3,7 @@
-
- #include <asm/pgtable.h>
- #include <asm/cacheflush.h>
-+#include <asm/system.h>
-
- /*
- * Functions to keep the agpgart mappings coherent with the MMU.
-@@ -19,6 +20,6 @@
- /* Could use CLFLUSH here if the cpu supports it. But then it would
- need to be called for each cacheline of the whole page so it may not be
- worth it. Would need a page for it. */
--#define flush_agp_cache() asm volatile("wbinvd":::"memory")
-+#define flush_agp_cache() wbinvd()
-
- #endif