On Tue, 2007-05-15 at 13:37 -0700, David Miller wrote:
> From: James Bottomley <[EMAIL PROTECTED]>
> Date: Tue, 15 May 2007 12:57:25 -0400
> 
> > It might make sense to put it in lib ... however, I don't think many
> > architectures have the problems we have ... specifically certain boxes
> > can have >1 IOMMU, then you really have to know *which* iommu you're
> > programming.
> 
> Sparc64 boxes will have this at some point, but what I'm
> going to do is simply fill in the dev_archdata properly at
> device scan time.
> 
> Instead of doing a bus walk up the parent every IOMMU request, why not
> cache those results in the dev_archdata?  That seems to make the most
> sense.

That is what we do ... except parisc caches the result in platform_data,
largely because dev_archdata wasn't around when the scheme was
concocted.  However, if we find a NULL platform_data we walk up the tree
until we find a non-NULL value and use that (IOMMUs are on a
disconnected bus topology).

> If there is some probing complexity, catch not-setup dev_archdata at
> the IOMMU request, and slow path into a resolver of some sort.

Yes, that's where we do the walk if the cache is NULL.

James


-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to