From: Haavard Skinnemoen <hskinnemoen@atmel.com>
To: Dan Williams <dan.j.williams@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
Shannon Nelson <shannon.nelson@intel.com>
Subject: Re: [PATCH] DMA: Fix broken device refcounting
Date: Sat, 27 Oct 2007 15:49:47 +0200 [thread overview]
Message-ID: <20071027154947.6836a3d9@siona> (raw)
In-Reply-To: <1193416577.9353.5.camel@dwillia2-linux.ch.intel.com>
On Fri, 26 Oct 2007 09:36:17 -0700
Dan Williams <dan.j.williams@intel.com> wrote:
> @@ -221,7 +220,6 @@ void dma_chan_cleanup(struct kref *kref)
> {
> struct dma_chan *chan = container_of(kref, struct dma_chan, refcount);
> chan->device->device_free_chan_resources(chan);
> - kref_put(&chan->device->refcount, dma_async_device_cleanup);
> }
> EXPORT_SYMBOL(dma_chan_cleanup);
While I can't see any problems with the rest of the patch, I think this
part is wrong for the same reasons removing the kref_put() from the
class device cleanup function is. I don't see any constraint that
guarantees that dma_chan_cleanup() will always be called before
dma_dev_release(), which means that "chan" may have been freed before
this function gets a chance to run. Please correct me if I'm wrong.
Håvard
next prev parent reply other threads:[~2007-10-27 13:49 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-26 16:12 [PATCH] DMA: Fix broken device refcounting Haavard Skinnemoen
2007-10-26 16:36 ` Dan Williams
2007-10-27 13:49 ` Haavard Skinnemoen [this message]
2007-10-27 19:12 ` Dan Williams
2007-10-28 19:17 ` Shannon Nelson
2007-10-29 16:02 ` Nelson, Shannon
2007-10-29 16:11 ` Haavard Skinnemoen
2007-10-26 16:59 ` Nelson, Shannon
2007-10-26 17:10 ` Nelson, Shannon
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=20071027154947.6836a3d9@siona \
--to=hskinnemoen@atmel.com \
--cc=akpm@linux-foundation.org \
--cc=dan.j.williams@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=shannon.nelson@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