From mboxrd@z Thu Jan 1 00:00:00 1970 From: rkuo Subject: Re: [PATCH] hexagon: Fix build failures in linux-next Date: Tue, 9 Dec 2014 18:25:23 -0600 Message-ID: <20141210002523.GA17946@codeaurora.org> References: <1418163705-1816-1-git-send-email-linux@roeck-us.net> Mime-Version: 1.0 Return-path: Content-Disposition: inline In-Reply-To: <1418163705-1816-1-git-send-email-linux@roeck-us.net> Sender: linux-hexagon-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Guenter Roeck Cc: linux-hexagon@vger.kernel.org, linux-kernel@vger.kernel.org, Kevin Cernekee , Jason Cooper On Tue, Dec 09, 2014 at 02:21:45PM -0800, Guenter Roeck wrote: > hexagon:defconfig fails to build in linux-next since commit 332fd7c4fef5 > ("genirq: Generic chip: Change irq_reg_{readl,writel} arguments"). > > The primary build failure is > > arch/hexagon/include/asm/cacheflush.h: In function 'copy_to_user_page': > arch/hexagon/include/asm/cacheflush.h:89:22: error: 'VM_EXEC' undeclared > > This is the result of including of from , > which is now necessary due to the use of readl and writel from irq.h. > This causes recursive inclusions in hexagon code; cacheflush.h is included > from mm.h prior to the definition of VM_EXEC. > > Fix the problem by moving copy_to_user_page from the hexagon include file to > arch/hexagon/mm/cache.c, similar to other architectures. After this change, > several redefinitions of readl and writel are reported. Those are caused > by recursive inclusions of io.h and asm/cacheflush.h. Fix those problems by > reducing the number of files included from those files. Also, it was necessary > to stop including asm-generic/cacheflush.h from asm/cacheflush.h. Instead, > functionality originally provided by asm-generic/cacheflush.h is now coded > in asm/cacheflush.h directly. > > Cc: Kevin Cernekee > Cc: Jason Cooper > Signed-off-by: Guenter Roeck > --- > Compile tested only. Applies to linux-next as well as mainline. > > arch/hexagon/include/asm/cacheflush.h | 36 ++++++++++++++++++----------------- > arch/hexagon/include/asm/io.h | 5 ----- > arch/hexagon/kernel/setup.c | 1 + > arch/hexagon/mm/cache.c | 10 ++++++++++ > arch/hexagon/mm/ioremap.c | 1 + > 5 files changed, 31 insertions(+), 22 deletions(-) > Thanks for the cleanup; tested working on hardware. I'm fine taking this into my tree, or it can go via another tree if more expedient. Acked-by: Richard Kuo -- Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project