Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
On Tue, Aug 23, 2016 at 10:03 PM, Chris Wilsonwrote: > 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 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 (pulling in ) > 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
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
On Tue, Aug 23, 2016 at 10:03 PM, Chris Wilson 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 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 (pulling in ) > 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
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
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 >wrote: > > > FYI, the error/warning still remains. > > > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include > > 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 Date: Wed Jun 8 10:58:20 2016 +0200 gpio: include 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 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 (pulling in ) 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
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
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 > wrote: > > > FYI, the error/warning still remains. > > > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include > > 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 Date: Wed Jun 8 10:58:20 2016 +0200 gpio: include 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 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 (pulling in ) 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
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
On Mon, Aug 15, 2016 at 5:08 PM, kbuild test robotwrote: > FYI, the error/warning still remains. > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include > 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
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
On Mon, Aug 15, 2016 at 5:08 PM, kbuild test robot wrote: > FYI, the error/warning still remains. > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include > 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
include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
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 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 @130return (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 @136iounmap((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 <curroje...@riseup.net> :: CC: Ingo Molnar <mi...@elte.hu> --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: Binary data
include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
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 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 @130return (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 @136iounmap((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 :: CC: Ingo Molnar --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: Binary data
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
On Sun, Aug 7, 2016 at 8:51 AM, kbuild test robot <fengguang...@intel.com> wrote: > FYI, the error/warning still remains. > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > master > head: 0cbbc422d56668528f6efd1234fe908010284082 > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include > in gpiolib-of > date: 9 weeks ago > config: um-allyesconfig (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 I have tried to fix this but don't know what the problem really is, as all archs seem to work fine except UM. I need help with this :/ Involving the linux-gpio list... Yours, Linus Walleij
Re: include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
On Sun, Aug 7, 2016 at 8:51 AM, kbuild test robot wrote: > FYI, the error/warning still remains. > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > master > head: 0cbbc422d56668528f6efd1234fe908010284082 > commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include > in gpiolib-of > date: 9 weeks ago > config: um-allyesconfig (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 I have tried to fix this but don't know what the problem really is, as all archs seem to work fine except UM. I need help with this :/ Involving the linux-gpio list... Yours, Linus Walleij
include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
Hi Linus, FYI, the error/warning still remains. tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 0cbbc422d56668528f6efd1234fe908010284082 commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include in gpiolib-of date: 9 weeks ago config: um-allyesconfig (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 @130return (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 @136iounmap((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 <curroje...@riseup.net> :: CC: Ingo Molnar <mi...@elte.hu> --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: Binary data
include/linux/io-mapping.h:130:39: error: implicit declaration of function 'ioremap_wc'
Hi Linus, FYI, the error/warning still remains. tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 0cbbc422d56668528f6efd1234fe908010284082 commit: 7d4defe21c682c934a19fce1ba8b54b7bde61b08 gpio: include in gpiolib-of date: 9 weeks ago config: um-allyesconfig (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 @130return (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 @136iounmap((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 :: CC: Ingo Molnar --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: Binary data