All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Duyck <alexander.duyck@gmail.com>
To: Ming Lei <ming.lei@canonical.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
	Shuah Khan <shuah.khan@hp.com>, Joerg Roedel <joro@8bytes.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Alexander Duyck <alexander.h.duyck@intel.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Subject: Re: [RFC PATCH 1/2] dma-debug: allow size to become smaller in dma_unmap
Date: Mon, 27 May 2013 13:37:05 -0700	[thread overview]
Message-ID: <51A3C3F1.4080907@gmail.com> (raw)
In-Reply-To: <1369671187-24430-2-git-send-email-ming.lei@canonical.com>

On 05/27/2013 09:13 AM, Ming Lei wrote:
> This patch looses the check on DMA buffer size for streaming
> DMA unmap, based on the below fact:
> 
> - it is common to see only part of DMA transfer is completed,
> especially in case of DMA_FROM_DEVICE
> 
> So it isn't necessary to unmap the whole DMA buffer inside DMA
> unmapping, and unmapping the actual completed buffer should be more
> efficient. Considered that unmapping is often called in hard irq
> context, time of irq handling can be saved.
> 
> Cc: Shuah Khan <shuah.khan@hp.com>
> Cc: Joerg Roedel <joro@8bytes.org>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Alexander Duyck <alexander.h.duyck@intel.com>
> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> Signed-off-by: Ming Lei <ming.lei@canonical.com>

What you are proposing doesn't make much sense.  If you are only wanting
to use part of a buffer then just use the dma_sync primitives.

The idea behind unmapping a buffer is to free any resources associated
with it.  Calling map once, and unmap multiple times per buffer is just
asking for trouble in the form of use after free or memory leaks.

Thanks,

Alex


  reply	other threads:[~2013-05-27 20:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-27 16:13 [RFC PATCH 0/2] dma-unmap: allow to only unmap completed DMA buffer Ming Lei
2013-05-27 16:13 ` [RFC PATCH 1/2] dma-debug: allow size to become smaller in dma_unmap Ming Lei
2013-05-27 20:37   ` Alexander Duyck [this message]
2013-05-27 16:13 ` [PATCH 2/2] USB: hcd: only unmap the actual completed DMA buffer Ming Lei
2013-05-27 17:13   ` Sergei Shtylyov
2013-05-27 20:18 ` [RFC PATCH 0/2] dma-unmap: allow to only unmap " Alan Stern

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=51A3C3F1.4080907@gmail.com \
    --to=alexander.duyck@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexander.h.duyck@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=joro@8bytes.org \
    --cc=konrad.wilk@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=ming.lei@canonical.com \
    --cc=shuah.khan@hp.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.