From: Russell King - ARM Linux <linux@arm.linux.org.uk>
To: Peter Hurley <peter@hurleysoftware.com>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Peter Ujfalusi <peter.ujfalusi@ti.com>,
Vinod Koul <vinod.koul@intel.com>,
Dan Williams <dan.j.williams@intel.com>,
dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org,
nsekhar@ti.com, linux-omap@vger.kernel.org,
linux-serial@vger.kernel.org, john.ogness@linutronix.de,
Greg KH <gregkh@linuxfoundation.org>,
Heikki Krogerus <heikki.krogerus@linux.intel.com>
Subject: Re: [PATCH] dma: omap-dma: add support for pause of non-cyclic transfers
Date: Fri, 7 Aug 2015 19:32:30 +0100 [thread overview]
Message-ID: <20150807183230.GW7576@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <55C4F747.1070604@hurleysoftware.com>
On Fri, Aug 07, 2015 at 02:21:59PM -0400, Peter Hurley wrote:
> [ + Heikki ]
>
> On 08/07/2015 12:33 PM, Russell King - ARM Linux wrote:
> > What you have is a race condition in the code you a responsible for
> > maintaining, caused by poorly implemented code. Fix it, rather than
> > whinging about drivers outside of your subsystem having never implemented
> > _optional_ things that you choose to merge broken code which relied upon
> > it _without_ checking that the operation succeeded.
> >
> > It is _entirely_ your code which is wrong here.
> >
> > I will wait for that to be fixed before acking the omap-dma change since
> > you obviously need something to test with.
>
> I'm not sure to what you're referring here.
>
> A WARNing fixes nothing.
The warning can wait.
> If you mean some patch, as yet unwritten, that handles the dma cases when
> dmaengine_pause() is unimplemented without data loss, ok, but please confirm
> that's what you mean.
But the regression needs fixing.
> However, at some point one must look at the api and wonder if the separation
> of concern has been drawn in the right place.
It _is_ in the right place. dmaengine_pause() always has been permitted
to fail. It's the responsibility of the user of this API to _check_ the
return code to find out whether it had the desired effect. Not checking
the return code is a bug in the caller's code.
If that wasn't the case, dmaengine_pause() would have a void return type.
It doesn't. It has an 'int' to allow failure, or to allow non-
implementation for cases where the underlying hardware can't pause the
channel without causing data loss.
What would you think is better: an API which silently loses data, or
one which refuses to stop the transfer and reports an error code back
to the caller.
You seem to be arguing for the former, and as such, there's no way I
can take you seriously.
In any case, Greg has now commented on the patch adding the feature,
basically refusing it for stable tree inclusion. So the matter is
settled: omap-dma isn't going to get the pause feature added in stable
trees any time soon. So a different solution now needs to be found,
which is what I've been saying all along...
--
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
next prev parent reply other threads:[~2015-08-07 18:32 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-07 8:41 Sebastian Andrzej Siewior
2015-08-07 9:44 ` Peter Ujfalusi
2015-08-07 10:36 ` Sebastian Andrzej Siewior
2015-08-07 11:44 ` Peter Ujfalusi
2015-08-07 12:47 ` Sebastian Andrzej Siewior
2015-08-07 13:22 ` Russell King - ARM Linux
2015-08-07 13:42 ` Sebastian Andrzej Siewior
2015-08-07 13:57 ` Russell King - ARM Linux
2015-08-07 15:08 ` Peter Hurley
2015-08-07 15:29 ` Russell King - ARM Linux
2015-08-07 15:44 ` Sebastian Andrzej Siewior
2015-08-07 16:39 ` Russell King - ARM Linux
2015-08-07 17:23 ` Peter Hurley
2015-08-07 17:42 ` Russell King - ARM Linux
2015-08-07 16:07 ` Peter Hurley
2015-08-07 16:20 ` Sebastian Andrzej Siewior
2015-08-07 16:35 ` Russell King - ARM Linux
2015-08-07 16:33 ` Russell King - ARM Linux
2015-08-07 18:21 ` Peter Hurley
2015-08-07 18:32 ` Russell King - ARM Linux [this message]
2015-08-08 1:41 ` Peter Hurley
2015-08-08 9:07 ` Russell King - ARM Linux
2015-08-07 10:55 ` Russell King - ARM Linux
2015-08-07 12:35 ` Sebastian Andrzej Siewior
2015-08-07 13:17 ` Russell King - ARM Linux
2015-08-07 13:22 ` Sebastian Andrzej Siewior
2015-08-07 13:25 ` Russell King - ARM Linux
2015-08-07 14:46 ` Peter Hurley
2015-08-07 17:55 ` Greg KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150807183230.GW7576@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--cc=bigeasy@linutronix.de \
--cc=dan.j.williams@intel.com \
--cc=dmaengine@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=john.ogness@linutronix.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=nsekhar@ti.com \
--cc=peter.ujfalusi@ti.com \
--cc=peter@hurleysoftware.com \
--cc=vinod.koul@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®