Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1462888 > unrolled thread
| Started by | kbuild test robot <fengguang.wu@intel.com> |
|---|---|
| First post | 2016-08-15 17:20 +0200 |
| Last post | 2016-08-24 14:00 +0200 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc' kbuild test robot <fengguang.wu@intel.com> - 2016-08-15 17:20 +0200
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc' Linus Walleij <linus.walleij@linaro.org> - 2016-08-16 10:20 +0200
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc' Chris Wilson <chris@chris-wilson.co.uk> - 2016-08-23 22:10 +0200
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc' Linus Walleij <linus.walleij@linaro.org> - 2016-08-24 14:00 +0200
| From | kbuild test robot <fengguang.wu@intel.com> |
|---|---|
| Date | 2016-08-15 17:20 +0200 |
| Subject | include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc' |
| Message-ID | <s6rQe-7ef-19@gated-at.bofh.it> |
[Multipart message — attachments visible in raw view] — view raw
Hi Linus,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 694d0d0bb2030d2e36df73e2d23d5770511dbc8d
commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include <linux/io-mapping.h> in gpiolib-of
date: 10 weeks ago
config: um-allmodconfig (attached as .config)
compiler: gcc-6 (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
git checkout 7d4defe21c682c934a19fce1ba8b54b7bde61b08
# save the attached .config to linux build tree
make ARCH=um
All errors (new ones prefixed by >>):
In file included from drivers/gpio/gpiolib-of.c:19:0:
include/linux/io-mapping.h: In function 'io_mapping_create_wc':
>> include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc' [-Werror=implicit-function-declaration]
return (struct io_mapping __force *) ioremap_wc(base, size);
^~~~~~~~~~
include/linux/io-mapping.h:130:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
return (struct io_mapping __force *) ioremap_wc(base, size);
^
include/linux/io-mapping.h: In function 'io_mapping_free':
>> include/linux/io-mapping.h:136:2: error: implicit declaration of function 'iounmap' [-Werror=implicit-function-declaration]
iounmap((void __force __iomem *) mapping);
^~~~~~~
cc1: some warnings being treated as errors
vim +/ioremap_wc +130 include/linux/io-mapping.h
4ab0d47d Venkatesh Pallipadi 2009-02-24 124 struct io_mapping;
4ab0d47d Venkatesh Pallipadi 2009-02-24 125
e5beae16 Keith Packard 2008-11-03 126 /* Create the io_mapping object*/
9663f2e6 Keith Packard 2008-10-30 127 static inline struct io_mapping *
4ab0d47d Venkatesh Pallipadi 2009-02-24 128 io_mapping_create_wc(resource_size_t base, unsigned long size)
9663f2e6 Keith Packard 2008-10-30 129 {
29bc17ec Francisco Jerez 2010-09-04 @130 return (struct io_mapping __force *) ioremap_wc(base, size);
9663f2e6 Keith Packard 2008-10-30 131 }
9663f2e6 Keith Packard 2008-10-30 132
9663f2e6 Keith Packard 2008-10-30 133 static inline void
9663f2e6 Keith Packard 2008-10-30 134 io_mapping_free(struct io_mapping *mapping)
9663f2e6 Keith Packard 2008-10-30 135 {
29bc17ec Francisco Jerez 2010-09-04 @136 iounmap((void __force __iomem *) mapping);
9663f2e6 Keith Packard 2008-10-30 137 }
9663f2e6 Keith Packard 2008-10-30 138
9663f2e6 Keith Packard 2008-10-30 139 /* Atomic map/unmap */
:::::: The code at line 130 was first introduced by commit
:::::: 29bc17ecb856ffb2b47c7009a71971c6f9334205 io-mapping: Fix the address space annotations
:::::: TO: Francisco Jerez <currojerez@riseup.net>
:::::: CC: Ingo Molnar <mingo@elte.hu>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[toc] | [next] | [standalone]
| From | Linus Walleij <linus.walleij@linaro.org> |
|---|---|
| Date | 2016-08-16 10:20 +0200 |
| Message-ID | <s6HLk-BJ-21@gated-at.bofh.it> |
| In reply to | #1462888 |
On Mon, Aug 15, 2016 at 5:08 PM, kbuild test robot <fengguang.wu@intel.com> wrote: > FYI, the error/warning still remains. > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include <linux/io-mapping.h> in gpiolib-of > config: um-allmodconfig (attached as .config) I think I've finally fixed this now by making OF_GPIO depend on !NO_IOMEM. Yours, Linus Walleij
[toc] | [prev] | [next] | [standalone]
| From | Chris Wilson <chris@chris-wilson.co.uk> |
|---|---|
| Date | 2016-08-23 22:10 +0200 |
| Subject | Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc' |
| Message-ID | <s9qbg-ls-27@gated-at.bofh.it> |
| In reply to | #1463528 |
On Tue, Aug 16, 2016 at 10:14:57AM +0200, Linus Walleij wrote:
> On Mon, Aug 15, 2016 at 5:08 PM, kbuild test robot
> <fengguang.wu@intel.com> wrote:
>
> > FYI, the error/warning still remains.
>
> > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include <linux/io-mapping.h> in gpiolib-of
> > config: um-allmodconfig (attached as .config)
>
> I think I've finally fixed this now by making OF_GPIO depend on !NO_IOMEM.
I've stumbled over this patch
commit 7d4defe21c682c934a19fce1ba8b54b7bde61b08
Author: Linus Walleij <linus.walleij@linaro.org>
Date: Wed Jun 8 10:58:20 2016 +0200
gpio: include <linux/io-mapping.h> in gpiolib-of
When enabling the gpiolib for all archs a build robot came
up with this:
All errors (new ones prefixed by >>):
drivers/gpio/gpiolib-of.c: In function 'of_mm_gpiochip_add_data':
>> drivers/gpio/gpiolib-of.c:317:2: error: implicit declaration of
function 'iounmap' [-Werror=implicit-function-declaration]
iounmap(mm_gc->regs);
^~~~~~~
cc1: some warnings being treated as errors
Fix this by including <linux/io-mapping.h> explicitly.
having touched io-mapping.h
The original patch is incorrect as io-mapping.h is not the right header
for iounmap() - that is #include <linux/io.h> (pulling in <asm/io.h>)
which is (and was) already present.
So the root cause here is arch/um not supplying enough stubs? But in the
meantime, do you mind removing the incorrect include now that you have a
w/a to keep 0day quiet? :)
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
[toc] | [prev] | [next] | [standalone]
| From | Linus Walleij <linus.walleij@linaro.org> |
|---|---|
| Date | 2016-08-24 14:00 +0200 |
| Message-ID | <s9F0B-1JN-33@gated-at.bofh.it> |
| In reply to | #1468813 |
On Tue, Aug 23, 2016 at 10:03 PM, Chris Wilson <chris@chris-wilson.co.uk> wrote: > On Tue, Aug 16, 2016 at 10:14:57AM +0200, Linus Walleij wrote: >> On Mon, Aug 15, 2016 at 5:08 PM, kbuild test robot >> I think I've finally fixed this now by making OF_GPIO depend on !NO_IOMEM. > > I've stumbled over this patch (...) > Fix this by including <linux/io-mapping.h> explicitly. > > having touched io-mapping.h > > The original patch is incorrect as io-mapping.h is not the right header > for iounmap() - that is #include <linux/io.h> (pulling in <asm/io.h>) > which is (and was) already present. You're right, I'll revert this patch. > So the root cause here is arch/um not supplying enough stubs? arch/um is explicitly not supporting IOMEM so anyone code using iomap()/iounmap() have to make sure they do not get compiled on UM. > But in the > meantime, do you mind removing the incorrect include now that you have a > w/a to keep 0day quiet? :) OK Yours, Linus Walleij
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web