From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 790AC209859BD for ; Wed, 30 May 2018 06:42:42 -0700 (PDT) From: Jeff Moyer Subject: Re: [dm-devel] [patch 4/4] dm-writecache: use new API for flushing References: <20180519052503.325953342@debian.vm> <20180519052635.567438191@debian.vm> <20180522063946.GB8054@infradead.org> <20180522184103.GA25826@redhat.com> <20180522191942.GB25904@redhat.com> Date: Wed, 30 May 2018 09:42:40 -0400 In-Reply-To: (Dan Williams's message of "Mon, 28 May 2018 10:41:51 -0700") Message-ID: MIME-Version: 1.0 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: linux-nvdimm-bounces@lists.01.org Sender: "Linux-nvdimm" To: Dan Williams Cc: Christoph Hellwig , device-mapper development , Mikulas Patocka , Mike Snitzer , linux-nvdimm List-ID: Dan Williams writes: > When I read your patch I came away with the impression that ARM had > not added memcpy_flushcache() yet and you were working around that > fact. Now that I look, ARM *does* define memcpy_flushcache() and > you're avoiding it. You use memcpy+arch_wb_pmem where arch_wb_pmem on > ARM64 is defined as __clean_dcache_area_pop(dst, cnt). The ARM > memcpy_flushcache() implementation is: > > memcpy(dst, src, cnt); > __clean_dcache_area_pop(dst, cnt); > > So, I do not see how what you're doing is any less work unless you are > flushing less than you copy? > > If memcpy_flushcache() is slower than memcpy + arch_wb_pmem then the > ARM implementation is broken and that needs to be addressed not worked > around in a driver. I think Mikulas wanted to batch up multiple copies and flush at the end. According to his commit message, that batching gained him 2% performance. -Jeff _______________________________________________ Linux-nvdimm mailing list Linux-nvdimm@lists.01.org https://lists.01.org/mailman/listinfo/linux-nvdimm