Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758128AbbDWOpN (ORCPT ); Thu, 23 Apr 2015 10:45:13 -0400 Received: from mail-la0-f50.google.com ([209.85.215.50]:34192 "EHLO mail-la0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757884AbbDWOpH (ORCPT ); Thu, 23 Apr 2015 10:45:07 -0400 Date: Thu, 23 Apr 2015 16:45:08 +0200 From: Johan Hovold To: Frans Klaver Cc: Johan Hovold , Greg Kroah-Hartman , Felipe Balbi , Alan Stern , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Stephen Warren , Thierry Reding , Alexandre Courbot , linux-tegra@vger.kernel.org Subject: Re: [PATCH v2 2/3] USB: ehci-tegra: fix inefficient copy of unaligned buffers Message-ID: <20150423144508.GA22193@localhost> References: <1429798012-21916-1-git-send-email-johan@kernel.org> <1429798012-21916-3-git-send-email-johan@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1518 Lines: 39 On Thu, Apr 23, 2015 at 04:31:51PM +0200, Frans Klaver wrote: > On Thu, Apr 23, 2015 at 4:06 PM, Johan Hovold wrote: > > static void free_dma_aligned_buffer(struct urb *urb) > > { > > struct dma_aligned_buffer *temp; > > + size_t length; > > > > if (!(urb->transfer_flags & URB_ALIGNED_TEMP_BUFFER)) > > return; > > @@ -311,9 +312,14 @@ static void free_dma_aligned_buffer(struct urb *urb) > > temp = container_of(urb->transfer_buffer, > > struct dma_aligned_buffer, data); > > > > - if (usb_urb_dir_in(urb)) > > - memcpy(temp->old_xfer_buffer, temp->data, > > - urb->transfer_buffer_length); > > + if (usb_urb_dir_in(urb)) { > > + if (usb_pipeisoc(urb->pipe)) > > + length = urb->transfer_buffer_length; > > + else > > + length = urb->actual_length; > > + > > + memcpy(temp->old_xfer_buffer, temp->data, length); > > + } > > urb->transfer_buffer = temp->old_xfer_buffer; > > kfree(temp->kmalloc_ptr); > > Out of curiosity: any reason not to declare that length variable > inside this new compound? Just my style preference. Johan -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/