Re: ccio_clear_io_tlb() and __raw_write() more question?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jan 16, 2008 at 01:53:25PM +0100, rubisher wrote:
> Without doc I guess that this call to WRITE_U32() is supposed to do what it
> name says: i.e purge a TLB entry?
...
> puting all those stuff togther: for CPU, WRITE_U32 (aka __raw_writel), just
> write something at some virtual address, right?
> 
> So my worry is that this data write could be cached and btw the actual
> CMD_TLB_PURGE operation could be delay untill this entry would be purged?

Willy is correct - writes to this IO space (0xf0000000) address is uncached.

While the write is "posted", it's a fairly short path to the IOMMU (1 hop).
Since this is the "unmap path" I don't expect any race conditions since
we would have to call map using the same mapping right away in order to
pickup the stale IOTLB entry. We avoid this race by allocating IO Pdir
entries in a "circular" fashion (start at bottom and work through
the entire resource bit map).

hth,
grant
-
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux