From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752592AbaCIPTL (ORCPT ); Sun, 9 Mar 2014 11:19:11 -0400 Received: from mail-pb0-f44.google.com ([209.85.160.44]:57694 "EHLO mail-pb0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752371AbaCIPTK (ORCPT ); Sun, 9 Mar 2014 11:19:10 -0400 Message-ID: <531C8683.2010908@gmail.com> Date: Sun, 09 Mar 2014 23:19:31 +0800 From: Chen Gang User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 MIME-Version: 1.0 To: Hans-Christian Egtvedt CC: =?ISO-8859-1?Q?H=E5vard_Skinnemoen?= , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH] arch/avr32/mm/cache.c: export symbol flush_icache_range() for module using References: <531B8D32.6000000@gmail.com> <531B8FD8.6040704@gmail.com> <20140308221721.GA30934@samfundet.no> In-Reply-To: <20140308221721.GA30934@samfundet.no> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 03/09/2014 06:17 AM, Hans-Christian Egtvedt wrote: > Around Sun 09 Mar 2014 05:47:04 +0800 or thereabout, Chen Gang wrote: >> >> After this patch, our linux kernel can pass "avr32-linux-" allmodconfig >> (it contents quite a few of warnings, but after check, I guess they are >> not kernel's issue). > > That sounds great, I am a bit surprised however that the lkdtm module need > flush_icache_range. Would have been interesting to look into what causes this > dependency. > "driver/misc/lkdtm.c" will use this flush_icache_range(). And some architectures export it to modules. [root@gchen arch]# grep -rn flush_icache_range * | grep EXPORT arm64/mm/flush.c:105:EXPORT_SYMBOL(flush_icache_range); avr32/mm/cache.c:114:EXPORT_SYMBOL(flush_icache_range); m68k/mm/cache.c:106:EXPORT_SYMBOL(flush_icache_range); mn10300/mm/cache-inv-icache.c:129:EXPORT_SYMBOL(flush_icache_range); mn10300/mm/cache-flush-icache.c:155:EXPORT_SYMBOL(flush_icache_range); sparc/mm/init_64.c:435:EXPORT_SYMBOL(flush_icache_range); Welcome any more details information by any other members, thanks. > I will pull this into my for-linus branch, and push during the next merge > window. > OK, thanks >> On 03/09/2014 05:35 AM, Chen Gang wrote: >>> Need export symbol flush_icache_range() to modules, just like another >>> platforms have done, or can not pass compiling. >>> >>> The related error (with allmodconfig under avr32): >>> >>> ERROR: "flush_icache_range" [drivers/misc/lkdtm.ko] undefined! >>> make[1]: *** [__modpost] Error 1 >>> make: *** [modules] Error 2 >>> >>> >>> Signed-off-by: Chen Gang > > Acked-by: Hans-Christian Egtvedt > OK, thanks. >>> --- >>> arch/avr32/mm/cache.c | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> diff --git a/arch/avr32/mm/cache.c b/arch/avr32/mm/cache.c >>> index 6a46ecd..85d635c 100644 >>> --- a/arch/avr32/mm/cache.c >>> +++ b/arch/avr32/mm/cache.c >>> @@ -111,6 +111,7 @@ void flush_icache_range(unsigned long start, unsigned long end) >>> __flush_icache_range(start & ~(linesz - 1), >>> (end + linesz - 1) & ~(linesz - 1)); >>> } >>> +EXPORT_SYMBOL(flush_icache_range); >>> >>> /* >>> * This one is called from __do_fault() and do_swap_page(). -- Chen Gang Open, share and attitude like air, water and life which God blessed