From patchwork Tue Nov 3 19:30:14 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Friesen X-Patchwork-Id: 37529 X-Patchwork-Delegate: grant.likely@secretlab.ca Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from bilbo.ozlabs.org (localhost [127.0.0.1]) by ozlabs.org (Postfix) with ESMTP id 9609AB7E70 for ; Wed, 4 Nov 2009 06:54:26 +1100 (EST) Received: by ozlabs.org (Postfix) id 2B256B7BE3; Wed, 4 Nov 2009 06:54:20 +1100 (EST) Delivered-To: linuxppc-dev@ozlabs.org X-Greylist: delayed 1174 seconds by postgrey-1.32 at bilbo; Wed, 04 Nov 2009 06:54:19 EST Received: from zrtps0kp.nortel.com (zrtps0kp.nortel.com [47.140.192.56]) (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits)) (Client CN "", Issuer "NORTEL" (not verified)) by ozlabs.org (Postfix) with ESMTPS id 796EEB7BE2 for ; Wed, 4 Nov 2009 06:54:19 +1100 (EST) Received: from zcarhxs1.corp.nortel.com (casmtp.ca.nortel.com [47.129.230.89]) by zrtps0kp.nortel.com (Switch-2.2.6/Switch-2.2.0) with ESMTP id nA3JYbU13902; Tue, 3 Nov 2009 19:34:38 GMT Received: from localhost.localdomain ([47.130.80.153] RDNS failed) by zcarhxs1.corp.nortel.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 3 Nov 2009 14:33:47 -0500 Message-ID: <4AF084C6.3020602@nortel.com> Date: Tue, 03 Nov 2009 13:30:14 -0600 From: "Chris Friesen" User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.4pre) Gecko/20090922 Fedora/3.0-2.7.b4.fc11 Thunderbird/3.0b4 MIME-Version: 1.0 To: Linux kernel , linuxppc-dev list , Dirk Eibach Subject: Fwd: [PATCH] arch/powerpc: Improve _memcpy X-OriginalArrivalTime: 03 Nov 2009 19:33:47.0984 (UTC) FILETIME=[90684500:01CA5CBC] X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Forwarding to the ppc mailing list. Chris -------- Original Message -------- Subject: [PATCH] arch/powerpc: Improve _memcpy Date: Tue, 3 Nov 2009 15:20:56 +0100 From: Dirk Eibach To: linux-kernel@vger.kernel.org CC: Dirk Eibach The implementation of _memcpy_fromio and _memcpy_toio seems to be suboptimal for size 4. Signed-off-by: Dirk Eibach --- arch/powerpc/kernel/io.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) vsrc += 4; @@ -190,7 +190,7 @@ void _memcpy_toio(volatile void __iomem *dest, const void *src, unsigned long n) vdest++; n--; } - while(n > 4) { + while(n >= 4) { *((volatile u32 *)vdest) = *((volatile u32 *)src); src += 4; vdest += 4; diff --git a/arch/powerpc/kernel/io.c b/arch/powerpc/kernel/io.c index 1882bf4..8dc7547 100644 --- a/arch/powerpc/kernel/io.c +++ b/arch/powerpc/kernel/io.c @@ -161,7 +161,7 @@ void _memcpy_fromio(void *dest, const volatile void __iomem *src, dest++; n--; } - while(n > 4) { + while(n >= 4) { *((u32 *)dest) = *((volatile u32 *)vsrc); eieio();