kernels/linux-2.4.0/arch/ia64/lib/swiotlb.c
/*
 * Since DMA is i-cache coherent, any (complete) pages that were written via
 * DMA can be marked as "clean" so that update_mmu_cache() doesn't have to
 * flush them when they get mapped into an executable vm-area.
 */
Since DMA is i-cache coherent, any (complete) pages that were written via
DMA can be marked as "clean" so that update_mmu_cache() doesn't have to
flush them when they get mapped into an executable vm-area.
Since DMA is i - cache coherent any ( complete ) pages that were written via DMA can be marked as " clean " so that update_mmu_cache () doesn ' t have to flush them when they get mapped into an executable vm - area .
static void
mark_clean (void *addr, size_t size)
{
	unsigned long pg_addr, end;
	pg_addr = PAGE_ALIGN((unsigned long) addr);
	end = (unsigned long) addr + size;
	while (pg_addr + PAGE_SIZE <= end) {
#if 0
		set_bit(PG_arch_1, virt_to_page(pg_addr));
#else
		if (!VALID_PAGE(virt_to_page(pg_addr)))
			printk("Invalid addr %lx!!!\n", pg_addr);
#endif
		pg_addr += PAGE_SIZE;
	}
}
static void mark_clean ( void * addr , size_t size ) { unsigned long pg_addr , end ; pg_addr = PAGE_ALIGN ( ( unsigned long ) addr ) ; end = ( unsigned long ) addr + size ; while ( pg_addr + PAGE_SIZE <= end ) { #if 0 set_bit ( PG_arch_1 , virt_to_page ( pg_addr ) ) ; #else if ( ! VALID_PAGE ( virt_to_page ( pg_addr ) ) ) printk ( " \n " , pg_addr ) ; #endif pg_addr += PAGE_SIZE ; } }
Since DMA is i-cache coherent, any (complete) pages that were written via
 DMA can be marked as "clean" so that update_mmu_cache() doesn't have to
 flush them when they get mapped into an executable vm-area.
Since DMA is i - cache coherent any ( complete ) pages that were written via DMA can be marked as " clean " so that update_mmu_cache () doesn ' t have to flush them when they get mapped into an executable vm - area .