Jeff Garzik <jgarzik@xxxxxxxxx> writes:8) The DMA pad code is very buggy. It uses the dma_map_single() to
map a buffer, but never synchronizes nor flushes the buffer. This can
and will lead to data corruption, particularly on x86-64 platform.
That's very bad since the target platform for that chipset is able
to support AMD64. :-(
From your comments I've learned that my patch (just the device ID) is
too tiny and the SiS provided patch is doing too much things that it
shouldn't do. How can we find a solution for that?
Would it make sense that I try to find the "goods" in the SiS patch and
merge them somehow in the actual kernel? But: What kernel shall I take
to do that work? The latest development kernel, the kernel of my distribution (whatever this will be, sooner or later it has to work
with all distributions) or just a kernel that is "close" to the patch
from SiS, e.g. 2.6.10?
As I mentioned before, getting hardware to try out patches wouldn't be
that big deal since I'm located in a PC factory and I can get test machines if needed. What would be good tests to e.g. detect the problems
that you mentioned above? Are there hardware specific tests for SATA
hard disks around? I would be very interested in that since testing also under Linux will become daily work for me and my colleauges from
the system test department.