Re: [PATCH V2 2/3] dmaselftest: add memcpy selftest support functions

From: Sinan Kaya
Date: Tue Nov 03 2015 - 11:57:50 EST

On 11/3/2015 11:46 AM, Timur Tabi wrote:
Sinan Kaya wrote:
1. Bug in ARM64 DMA subsystem.
2. Bug in IOMMU driver.
3. Bug in another newly introduced driver. The new driver would hog the
CPU and won't allow HIDMA interrupts to execute. Therefore, the test
times out.

Which driver?
Some other driver that is not upstream yet.

Wouldn't these problems already be exposed by dmatest? I was asking
whether it's possible that, every now and then, your DMA internal test
could fail and then the driver would unload. I'm not talking about hard
bugs in other code that always causes the DMA driver test to fail.

The point is that dmatest is a kernel module that requires manual interaction. It does not run automatically and is generally used by the dma engine driver developer during development only.

Other developers like UART, SATA, USB, IOMMU etc. They don't care about dmatest and I have seen their changes broke self-test multiple times. I see the value of self test all the time.

I can make dma-self test a new kernel module. It could discover all DMA devices with MEMCPY capability and run a self test on them. We could tell the self test code deregister all DMA devices that fail the test.

I can also make it kernel command line dependent and disabled by default. Those who want this functionality all the time can change their kernel command line.

I hope this addresses concerns.

Sinan Kaya
Qualcomm Technologies, Inc. on behalf of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at