On Sun, Jan 03 2016 at 10:35:26 PM, "Koul, Vinod" <vinod.koul@xxxxxxxxx> wrote: > On Tue, Dec 22, 2015 at 07:35:23PM -0800, Ashutosh Dixit wrote: >> This reverts commit e958e079e254 ("dmaengine: mic_x100: add missing >> spin_unlock"). >> >> The above patch is incorrect. There is nothing wrong with the original >> code. The spin_lock is acquired in the "prep" functions and released >> in "submit". > > And going by dmaengine sematics, I do not think that is entrely right. > > A user may choose to prepare multiple desciptors and then sumbit later, > looking at code I do not see how that will work. > > Please fix that The mic_x100_dma driver still allows a client to prepare and submit multiple descriptors and triggers the hardware only when issue_pending is called (or a threshold is exceeded). Identical coding patterns exist in the IOAT dma driver, on which the mic_x100_dma driver is based. Further, mic_x100 dma channels are private and used only by other MIC drivers such as SCIF (drivers/misc/mic/scif). These drivers obviously alternate prep and submit calls as required by mic_x100_dma. We do not envisage a wider use of the mic_x100_dma driver at this point. A change such as allowing multiple prep's before a submit requires large scale changes in the driver. In the absence of a real use case, there is no plan to make such changes at present. At this point we only want the driver to be restored to its previously functional state for the 4.4 kernel. The patch in question results in system lockups so it is a serious v4.4 regression. -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html