]> git.baikalelectronics.ru Git - kernel.git/commit
[SPARC64]: Fix SBUS IOMMU allocation code.
authorDavid S. Miller <davem@sunset.davemloft.net>
Thu, 12 Apr 2007 04:38:45 +0000 (21:38 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Thu, 12 Apr 2007 06:56:10 +0000 (23:56 -0700)
commit17b4ef6f2854ed4437651961fa18611d397b3176
tree64306b683060c7739de68319fd393541095e1ec1
parentf1d63bee5809ce9038319dc702199960a3d470ec
[SPARC64]: Fix SBUS IOMMU allocation code.

There are several IOMMU allocator bugs.  Instead of trying to fix this
overly complicated code, just mirror the PCI IOMMU arena allocator
which is very stable and well stress tested.

I tried to make the code as identical as possible so we can switch
sun4u PCI and SBUS over to a common piece of IOMMU code.  All that
will be need are two callbacks, one to do a full IOMMU flush and one
to do a streaming buffer flush.

This patch gets rid of a lot of hangs and mysterious crashes on SBUS
sparc64 systems, at least for me.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/kernel/sbus.c