From patchwork Mon Sep 13 05:49:22 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan Wu X-Patchwork-Id: 64573 X-Patchwork-Delegate: leann.ogasawara@canonical.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from chlorine.canonical.com (chlorine.canonical.com [91.189.94.204]) by ozlabs.org (Postfix) with ESMTP id 0F5ABB6F10 for ; Mon, 13 Sep 2010 15:50:31 +1000 (EST) Received: from localhost ([127.0.0.1] helo=chlorine.canonical.com) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1Ov1vp-0005XV-Jz; Mon, 13 Sep 2010 06:50:21 +0100 Received: from adelie.canonical.com ([91.189.90.139]) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1Ov1vn-0005XP-QB for kernel-team@lists.ubuntu.com; Mon, 13 Sep 2010 06:50:19 +0100 Received: from hutte.canonical.com ([91.189.90.181]) by adelie.canonical.com with esmtp (Exim 4.69 #1 (Debian)) id 1Ov1vl-0002Mp-O3; Mon, 13 Sep 2010 06:50:18 +0100 Received: from [58.41.15.248] (helo=canonical.com) by hutte.canonical.com with esmtpsa (TLS-1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.69) (envelope-from ) id 1Ov1vJ-0008Ai-VD; Mon, 13 Sep 2010 06:50:17 +0100 From: Bryan Wu To: tim.gardner@canonical.com, leann.ogasawara@canonical.com, kernel-team@lists.ubuntu.com Subject: [PATCH] bounce: call flush_dcache_page after bounce_copy_vec Date: Mon, 13 Sep 2010 13:49:22 +0800 Message-Id: <1284356962-32627-1-git-send-email-bryan.wu@canonical.com> X-Mailer: git-send-email 1.7.0.4 Cc: ogra@canonical.com, ricardo.salveti@canonical.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.9 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: kernel-team-bounces@lists.ubuntu.com Errors-To: kernel-team-bounces@lists.ubuntu.com From: Gary King the bounced page needs to be flushed after data is copied into it, to ensure that architecture implementations can synchronize instruction and data caches if necessary. This patch was posted at armlinux mail list and was asked by Andrew Morton and Jens Axboe. We tried this patch and found is fixed memtester issue. (http://lists.infradead.org/pipermail/linux-arm-kernel/2010-September/025373.html) BugLink: http://bugs.launchpad.net/bugs/633227 Signed-off-by: Gary King Tested-by: Ricardo Salveti de Araujo Tested-by: Sebastien Jan Signed-off-by: Bryan Wu --- mm/bounce.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/mm/bounce.c b/mm/bounce.c index 13b6dad..1481de6 100644 --- a/mm/bounce.c +++ b/mm/bounce.c @@ -116,8 +116,8 @@ static void copy_to_high_bio_irq(struct bio *to, struct bio *from) */ vfrom = page_address(fromvec->bv_page) + tovec->bv_offset; - flush_dcache_page(tovec->bv_page); bounce_copy_vec(tovec, vfrom); + flush_dcache_page(tovec->bv_page); } }