--- linux/arch/ia64/hp/common/sba_iommu.c 11 Dec 2002 19:57:28 -0000 1.28 +++ linux/arch/ia64/hp/common/sba_iommu.c 31 Mar 2003 01:44:49 -0000 @@ -35,6 +35,7 @@ #include /* ia64_get_itc() */ #include #include /* PAGE_OFFSET */ +#include /* wmb() */ #define PFX "IOC: " @@ -816,6 +817,9 @@ sba_map_single(struct pci_dev *dev, void size -= IOVP_SIZE; pdir_start++; } + /* force pdir update */ + wmb(); + /* form complete address */ #ifdef ASSERT_PDIR_SANITY sba_check_pdir(ioc,"Check after sba_map_single()"); @@ -1078,6 +1082,9 @@ sba_fill_pdir( } startsg++; } + /* force pdir update */ + wmb(); + #ifdef DEBUG_LARGE_SG_ENTRIES dump_run_sg = 0; #endif