From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1036394AbdDUH7l (ORCPT ); Fri, 21 Apr 2017 03:59:41 -0400 Received: from smtp2-g21.free.fr ([212.27.42.2]:18178 "EHLO smtp2-g21.free.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1036240AbdDUH7h (ORCPT ); Fri, 21 Apr 2017 03:59:37 -0400 Subject: Re: linux-next: build failure after merge of the arm tree To: Stephen Rothwell , Russell King Cc: linux-next , LKML , Linux ARM , arm-soc , Emilio Lopez , dmaengine@vger.kernel.org, Vinod Koul , Dan Williams , Maxime Ripard , Chen-Yu Tsai References: <20170421084033.5c987e13@canb.auug.org.au> From: Mason Message-ID: <9858a4ed-bdd9-bd6c-d8a4-e9e6bd539904@free.fr> Date: Fri, 21 Apr 2017 09:58:58 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49 MIME-Version: 1.0 In-Reply-To: <20170421084033.5c987e13@canb.auug.org.au> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 21/04/2017 00:40, Stephen Rothwell wrote: > After merging the arm tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > In file included from include/linux/bitops.h:36:0, > from include/linux/bitmap.h:7, > from drivers/dma/sun4i-dma.c:11: > drivers/dma/sun4i-dma.c: In function 'find_and_use_pchan': > include/linux/bitops.h:56:34: error: > passing argument 1 of '_find_next_zero_bit_le' from incompatible pointer type [-Werror=incompatible-pointer-types] > for ((bit) = find_next_zero_bit((addr), (size), (bit)); \ > ^ > arch/arm/include/asm/bitops.h:200:61: note: in definition of macro 'find_next_zero_bit' > #define find_next_zero_bit(p,sz,off) _find_next_zero_bit_le(p,sz,off) > ^ > drivers/dma/sun4i-dma.c:241:2: note: in expansion of macro 'for_each_clear_bit_from' > for_each_clear_bit_from(i, &priv->pchans_used, max) { > ^ > arch/arm/include/asm/bitops.h:163:12: note: > expected 'const long unsigned int *' but argument is of type 'long unsigned int (*)[1]' > extern int _find_next_zero_bit_le(const unsigned long *p, int size, int offset); > ^ > [...] > > Caused (or exposed) by commit > > c4f8ff16b46b ("ARM: 8669/1: bitops: Align prototypes to generic API") > > I have used the arm tree from next-20170420 for today. Weird that I didn't catch this when I ran make allyesconfig. https://www.spinics.net/lists/arm-kernel/msg573736.html Anyway, the fix is trivial. The "pchans_used" field is an unsigned long array. for_each_clear_bit_from() expects an unsigned long pointer, not an array address. I'll send a patch to the drivers/dma maintainers. $ make C=2 drivers/dma/sun4i-dma.o CHECK drivers/dma/sun4i-dma.c CC drivers/dma/sun4i-dma.o Regards.