From patchwork Thu Aug 10 14:52:31 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 109811 Delivered-To: patch@linaro.org Received: by 10.140.95.78 with SMTP id h72csp2471561qge; Thu, 10 Aug 2017 07:53:29 -0700 (PDT) X-Received: by 10.98.220.214 with SMTP id c83mr12762268pfl.334.1502376809306; Thu, 10 Aug 2017 07:53:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1502376809; cv=none; d=google.com; s=arc-20160816; b=LGoJwSNG/cAhSWrPLEs8nCQ5J0XXLzPwodJ2LRZ+RUlSNOBvQgouuxorp8NHK0heRf MY9lxSDVv3lPJPi0hxFUWdD72vEWrRcHkeOjXWYh6cHhQ/MlkW0fubr+NB45wVVDS+0x F2M/torNeXg//+qtYul4VJBAHuqX1VrXsKVdMlVik5o+Pw6NUMRJoZN7w0Ea0VPSeqpA 5NQtO8fjpEHEVlWopjGk8LG52QRG6KtEFi35PoM3LO3wHzGM9LmaiW5JQ88L9C5hJ2xj ctyL/JMP+KFazwxedWuiWaH5hRlBy0c9OBAXeuwag0bxtDs9+l3yuSUnxrFmj+CUJjcD MT4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=lDFiwwBWI0XGBgHo9O6ZlfZbzTM9VyQGULGrM26jPZg=; b=hsH05BPP5BXQSkIgXhgMwsc9bRvSTaG6otHG8jarUmhtdQ/hlTajuWDIOrsMC4FPzu IknnhRpay67aeVLmt0v3Uk1KmUcbPYP49mNwLRuhhlNAN6uCFNlPuhqNJBnSjgDT/Cnk Cnz7HWNhh5KfKdhqmJN9dhKu/+XXEhj8Qcwj+2eky2rJjc5SpkKFXRASVuw8UQSlwHBV gRf3D+AXkCorcZ/GgLVhVp4AiB3fDSFHhGDssc3iqOX7tpUo3QOU5idYymaMx7hViyJ5 AZhgmk5mINagJwP9eGOOjH8FxWB0qEcqUiacfPjH8/8wCTBRJNZlHOeTNBBxpqdu8kmQ kNRQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c2si4582939plk.410.2017.08.10.07.53.28; Thu, 10 Aug 2017 07:53:29 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752812AbdHJOx0 (ORCPT + 25 others); Thu, 10 Aug 2017 10:53:26 -0400 Received: from mout.kundenserver.de ([212.227.126.134]:50759 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752728AbdHJOxZ (ORCPT ); Thu, 10 Aug 2017 10:53:25 -0400 Received: from wuerfel.lan ([95.208.155.18]) by mrelayeu.kundenserver.de (mreue001 [212.227.15.129]) with ESMTPA (Nemesis) id 0MWKkb-1e8ZyB3DI1-00XL0z; Thu, 10 Aug 2017 16:52:54 +0200 From: Arnd Bergmann To: Catalin Marinas , Will Deacon Cc: Arnd Bergmann , Robin Murphy , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] arm64: fix pmem interface definition Date: Thu, 10 Aug 2017 16:52:31 +0200 Message-Id: <20170810145253.2124019-1-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 X-Provags-ID: V03:K0:15DpRCDQxcGKO/WobJ/shEFZHTJHPEfa2ne1GzzJ/sxiV4elA2l 1neFoF7PlQtiQPasGTeqQ9ejgR0rt+yYz0a9wlOodQiZK363Sxk+IIB2p7gCUU6pmrc+A76 bG9X0S2/aj2gBxn5a29Rctjvp0zNwDq/4RaXCe2Vd+yUUMncDwoungKBPOBKC6rzjJ9Fm+/ +CHTjPkx+4IjMyiI1ZBng== X-UI-Out-Filterresults: notjunk:1; V01:K0:ViC4KQt2HZ4=:w7T7TJaYs4pgGU0MhxO/yw nV+m9SEns+lZL/898X+95d4Ec+K6RmfQcOyo3oTUhmKiXVWYS5wU5BUQMUPfBJCo/0BoRekld 3i80UUnRetUGzvmdDzFPg2hyJqOlQYOm0yz7zJ7m0F9Y7GCO5557LsiriM+gWkcvdmkTEmDJH /ztGKUtpIXpTl8Xq/wtKcAbTHeCalvPdwAdjM0LeAD+aJ7o4ZAqkNVqEGQWgMIPA84RkcUVfW 5UIroc74b+cXbo1hG9E6XadkFhIhWdGCZTu+Ggm9BOH35J5rsSym6rtYn0zRaPbPbZnji+R5V xHu+iyeptl0F/ysF8CkOkV0d3baB/2v7/HPLb5zJjyybHklB792YwkAHUPKJoX7CTqz6Jq91Y 4Mz1L++zEYSRRaenIX6K9mmPRQjBzbDOlbOxpAdDfPYBeXIP4DUU/XhQrxvq8eUIVI6DS3vxu hmuHikyxb7FD0cAy5rJef+lp5xkfybojJnQbfiKEXSQfutEeiR1pQjog0yEHtXBgqSbQ2YNX+ ME3+2WHJ/HkHyZ/dm3y5q0loUSJufg1+e+GvXb4/TlbjNbszUkf5VjxfIqiTKkCIaUOC4B+FH ZhNr1uJDIn60fQxSv0ly8lgEF4iv63jUUlcCqn/dLICI5t2xc+YccoHHp7ECYAhnO4kjkm080 2u9cysCwZ4GAYXc2Q/kn1sQVYXaejE1zGpn8L0uDk6skH2yao2a7YZBY6Bnde4UOiO8xuiw0t nPhSHJ7kpewdwHGfST1vvXGjBYZfy2vR4qTC1g== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Defining the two functions as 'static inline' and exporting them leads to the interesting case where we can use the interface from loadable modules, but not from built-in drivers, as shown in this link failure: vers/nvdimm/claim.o: In function `nsio_rw_bytes': claim.c:(.text+0x1b8): undefined reference to `arch_invalidate_pmem' drivers/nvdimm/pmem.o: In function `pmem_dax_flush': pmem.c:(.text+0x11c): undefined reference to `arch_wb_cache_pmem' drivers/nvdimm/pmem.o: In function `pmem_make_request': pmem.c:(.text+0x5a4): undefined reference to `arch_invalidate_pmem' pmem.c:(.text+0x650): undefined reference to `arch_invalidate_pmem' pmem.c:(.text+0x6d4): undefined reference to `arch_invalidate_pmem' This removes the bogus 'static inline'. Fixes: d50e071fdaa3 ("arm64: Implement pmem API support") Signed-off-by: Arnd Bergmann --- arch/arm64/mm/flush.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.9.0 Acked-by: Robin Murphy diff --git a/arch/arm64/mm/flush.c b/arch/arm64/mm/flush.c index 280f90ff33a2..e36ed5087b5c 100644 --- a/arch/arm64/mm/flush.c +++ b/arch/arm64/mm/flush.c @@ -85,7 +85,7 @@ EXPORT_SYMBOL(flush_dcache_page); EXPORT_SYMBOL(flush_icache_range); #ifdef CONFIG_ARCH_HAS_PMEM_API -static inline void arch_wb_cache_pmem(void *addr, size_t size) +void arch_wb_cache_pmem(void *addr, size_t size) { /* Ensure order against any prior non-cacheable writes */ dmb(osh); @@ -93,7 +93,7 @@ static inline void arch_wb_cache_pmem(void *addr, size_t size) } EXPORT_SYMBOL_GPL(arch_wb_cache_pmem); -static inline void arch_invalidate_pmem(void *addr, size_t size) +void arch_invalidate_pmem(void *addr, size_t size) { __inval_dcache_area(addr, size); }