All of lore.kernel.org
 help / color / mirror / Atom feed
* [ext4:dev 21/26] file.c:undefined reference to `dax_iomap_fault'
@ 2016-11-21 20:17 kbuild test robot
  2016-11-22 12:08 ` Jan Kara
  0 siblings, 1 reply; 5+ messages in thread
From: kbuild test robot @ 2016-11-21 20:17 UTC (permalink / raw)
  To: Jan Kara; +Cc: kbuild-all, linux-ext4, Theodore Ts'o

[-- Attachment #1: Type: text/plain, Size: 1174 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git dev
head:   19b29dca7eef735531a2448e692bb1658c351887
commit: 8b72e1435cd73926cba767fba3e957807a97069c [21/26] ext4: convert DAX faults to iomap infrastructure
config: i386-randconfig-sb0-11212318 (attached as .config)
compiler: gcc-5 (Debian 5.4.1-2) 5.4.1 20160904
reproduce:
        git checkout 8b72e1435cd73926cba767fba3e957807a97069c
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   fs/built-in.o: In function `ext4_dax_fault':
>> file.c:(.text+0x529f3): undefined reference to `dax_iomap_fault'
   fs/built-in.o: In function `ext4_file_read_iter':
   file.c:(.text+0x52bab): undefined reference to `dax_iomap_rw'
   fs/built-in.o: In function `ext4_file_write_iter':
   file.c:(.text+0x52dff): undefined reference to `dax_iomap_rw'
   fs/built-in.o: In function `ext4_block_zero_page_range':
   inode.c:(.text+0x57c8e): undefined reference to `iomap_zero_range'

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 24511 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [ext4:dev 21/26] file.c:undefined reference to `dax_iomap_fault'
  2016-11-21 20:17 [ext4:dev 21/26] file.c:undefined reference to `dax_iomap_fault' kbuild test robot
@ 2016-11-22 12:08 ` Jan Kara
  2016-11-22 21:33   ` Dave Chinner
  2016-11-23  4:27   ` Theodore Ts'o
  0 siblings, 2 replies; 5+ messages in thread
From: Jan Kara @ 2016-11-22 12:08 UTC (permalink / raw)
  To: Theodore Ts'o; +Cc: Jan Kara, linux-ext4

[-- Attachment #1: Type: text/plain, Size: 1372 bytes --]

On Tue 22-11-16 04:17:11, Wu Fengguang wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git dev
> head:   19b29dca7eef735531a2448e692bb1658c351887
> commit: 8b72e1435cd73926cba767fba3e957807a97069c [21/26] ext4: convert DAX faults to iomap infrastructure
> config: i386-randconfig-sb0-11212318 (attached as .config)
> compiler: gcc-5 (Debian 5.4.1-2) 5.4.1 20160904
> reproduce:
>         git checkout 8b72e1435cd73926cba767fba3e957807a97069c
>         # save the attached .config to linux build tree
>         make ARCH=i386 
> 
> All errors (new ones prefixed by >>):
> 
>    fs/built-in.o: In function `ext4_dax_fault':
> >> file.c:(.text+0x529f3): undefined reference to `dax_iomap_fault'
>    fs/built-in.o: In function `ext4_file_read_iter':
>    file.c:(.text+0x52bab): undefined reference to `dax_iomap_rw'
>    fs/built-in.o: In function `ext4_file_write_iter':
>    file.c:(.text+0x52dff): undefined reference to `dax_iomap_rw'
>    fs/built-in.o: In function `ext4_block_zero_page_range':
>    inode.c:(.text+0x57c8e): undefined reference to `iomap_zero_range'

Ah, I forgot to select FS_IOMAP when DAX was enabled and having ext2
enabled in my test builds has hidden this problem. Attached patch fixes the
build failure for me. Ted, please add this fix to your tree. Thanks!

								Honza
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR

[-- Attachment #2: 0001-ext4-Add-select-for-CONFIG_FS_IOMAP.patch --]
[-- Type: text/x-patch, Size: 721 bytes --]

>From 5954709eacfc3fd14b7109b01f5ee6e0a3f3874e Mon Sep 17 00:00:00 2001
From: Jan Kara <jack@suse.cz>
Date: Tue, 22 Nov 2016 12:51:36 +0100
Subject: [PATCH] ext4: Add select for CONFIG_FS_IOMAP

When ext4 is compiled with DAX support, it now needs the iomap code. Add
appropriate select to Kconfig.

Signed-off-by: Jan Kara <jack@suse.cz>
---
 fs/ext4/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/ext4/Kconfig b/fs/ext4/Kconfig
index e38039fd96ff..7b90691e98c4 100644
--- a/fs/ext4/Kconfig
+++ b/fs/ext4/Kconfig
@@ -37,6 +37,7 @@ config EXT4_FS
 	select CRC16
 	select CRYPTO
 	select CRYPTO_CRC32C
+	select FS_IOMAP if FS_DAX
 	help
 	  This is the next generation of the ext3 filesystem.
 
-- 
2.6.6


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [ext4:dev 21/26] file.c:undefined reference to `dax_iomap_fault'
  2016-11-22 12:08 ` Jan Kara
@ 2016-11-22 21:33   ` Dave Chinner
  2016-11-23  8:14     ` Jan Kara
  2016-11-23  4:27   ` Theodore Ts'o
  1 sibling, 1 reply; 5+ messages in thread
From: Dave Chinner @ 2016-11-22 21:33 UTC (permalink / raw)
  To: Jan Kara; +Cc: Theodore Ts'o, linux-ext4

On Tue, Nov 22, 2016 at 01:08:05PM +0100, Jan Kara wrote:
> On Tue 22-11-16 04:17:11, Wu Fengguang wrote:
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git dev
> > head:   19b29dca7eef735531a2448e692bb1658c351887
> > commit: 8b72e1435cd73926cba767fba3e957807a97069c [21/26] ext4: convert DAX faults to iomap infrastructure
> > config: i386-randconfig-sb0-11212318 (attached as .config)
> > compiler: gcc-5 (Debian 5.4.1-2) 5.4.1 20160904
> > reproduce:
> >         git checkout 8b72e1435cd73926cba767fba3e957807a97069c
> >         # save the attached .config to linux build tree
> >         make ARCH=i386 
> > 
> > All errors (new ones prefixed by >>):
> > 
> >    fs/built-in.o: In function `ext4_dax_fault':
> > >> file.c:(.text+0x529f3): undefined reference to `dax_iomap_fault'
> >    fs/built-in.o: In function `ext4_file_read_iter':
> >    file.c:(.text+0x52bab): undefined reference to `dax_iomap_rw'
> >    fs/built-in.o: In function `ext4_file_write_iter':
> >    file.c:(.text+0x52dff): undefined reference to `dax_iomap_rw'
> >    fs/built-in.o: In function `ext4_block_zero_page_range':
> >    inode.c:(.text+0x57c8e): undefined reference to `iomap_zero_range'
> 
> Ah, I forgot to select FS_IOMAP when DAX was enabled and having ext2
> enabled in my test builds has hidden this problem. Attached patch fixes the
> build failure for me. Ted, please add this fix to your tree. Thanks!
> 
> 								Honza
> -- 
> Jan Kara <jack@suse.com>
> SUSE Labs, CR

> From 5954709eacfc3fd14b7109b01f5ee6e0a3f3874e Mon Sep 17 00:00:00 2001
> From: Jan Kara <jack@suse.cz>
> Date: Tue, 22 Nov 2016 12:51:36 +0100
> Subject: [PATCH] ext4: Add select for CONFIG_FS_IOMAP
> 
> When ext4 is compiled with DAX support, it now needs the iomap code. Add
> appropriate select to Kconfig.
> 
> Signed-off-by: Jan Kara <jack@suse.cz>
> ---
>  fs/ext4/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/fs/ext4/Kconfig b/fs/ext4/Kconfig
> index e38039fd96ff..7b90691e98c4 100644
> --- a/fs/ext4/Kconfig
> +++ b/fs/ext4/Kconfig
> @@ -37,6 +37,7 @@ config EXT4_FS
>  	select CRC16
>  	select CRYPTO
>  	select CRYPTO_CRC32C
> +	select FS_IOMAP if FS_DAX

Shouldn't the FS_DAX config select FS_IOMAP unconditionally because
it is now a hard config dependency in the DAX subsystem?

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [ext4:dev 21/26] file.c:undefined reference to `dax_iomap_fault'
  2016-11-22 12:08 ` Jan Kara
  2016-11-22 21:33   ` Dave Chinner
@ 2016-11-23  4:27   ` Theodore Ts'o
  1 sibling, 0 replies; 5+ messages in thread
From: Theodore Ts'o @ 2016-11-23  4:27 UTC (permalink / raw)
  To: Jan Kara; +Cc: linux-ext4

On Tue, Nov 22, 2016 at 01:08:05PM +0100, Jan Kara wrote:
> Ah, I forgot to select FS_IOMAP when DAX was enabled and having ext2
> enabled in my test builds has hidden this problem. Attached patch fixes the
> build failure for me. Ted, please add this fix to your tree. Thanks!

Thanks, applied.

						- Ted

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [ext4:dev 21/26] file.c:undefined reference to `dax_iomap_fault'
  2016-11-22 21:33   ` Dave Chinner
@ 2016-11-23  8:14     ` Jan Kara
  0 siblings, 0 replies; 5+ messages in thread
From: Jan Kara @ 2016-11-23  8:14 UTC (permalink / raw)
  To: Dave Chinner; +Cc: Jan Kara, Theodore Ts'o, linux-ext4

[-- Attachment #1: Type: text/plain, Size: 721 bytes --]

On Wed 23-11-16 08:33:16, Dave Chinner wrote:
> > diff --git a/fs/ext4/Kconfig b/fs/ext4/Kconfig
> > index e38039fd96ff..7b90691e98c4 100644
> > --- a/fs/ext4/Kconfig
> > +++ b/fs/ext4/Kconfig
> > @@ -37,6 +37,7 @@ config EXT4_FS
> >  	select CRC16
> >  	select CRYPTO
> >  	select CRYPTO_CRC32C
> > +	select FS_IOMAP if FS_DAX
> 
> Shouldn't the FS_DAX config select FS_IOMAP unconditionally because
> it is now a hard config dependency in the DAX subsystem?

Yeah, that would be even better. Ted, can you add this cleanup patch as
well (attached)? Possibly also just ditch my previous ext4-specific patch
and remove relevant hunk from the attached one. Thanks!

								Honza
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR

[-- Attachment #2: 0001-dax-Select-CONFIG_FS_IOMAP.patch --]
[-- Type: text/x-patch, Size: 1513 bytes --]

>From 829feb225913597bac6cbbe5c80bd1eaa99cd74d Mon Sep 17 00:00:00 2001
From: Jan Kara <jack@suse.cz>
Date: Wed, 23 Nov 2016 09:09:14 +0100
Subject: [PATCH] dax: Select CONFIG_FS_IOMAP

After ditching get_block based functions, every filesystem implementing
DAX needs to use iomap variants. Make CONFIG_FS_DAX select
CONFIG_FS_IOMAP.

Signed-off-by: Jan Kara <jack@suse.cz>
---
 fs/Kconfig      | 1 +
 fs/ext2/Kconfig | 1 -
 fs/ext4/Kconfig | 1 -
 3 files changed, 1 insertion(+), 2 deletions(-)

diff --git a/fs/Kconfig b/fs/Kconfig
index 8e9e5f4104f4..18024bfc6e2c 100644
--- a/fs/Kconfig
+++ b/fs/Kconfig
@@ -38,6 +38,7 @@ config FS_DAX
 	bool "Direct Access (DAX) support"
 	depends on MMU
 	depends on !(ARM || MIPS || SPARC)
+	select FS_IOMAP
 	help
 	  Direct Access (DAX) can be used on memory-backed block devices.
 	  If the block device supports DAX and the filesystem supports DAX,
diff --git a/fs/ext2/Kconfig b/fs/ext2/Kconfig
index 36bea5adcaba..c634874e12d9 100644
--- a/fs/ext2/Kconfig
+++ b/fs/ext2/Kconfig
@@ -1,6 +1,5 @@
 config EXT2_FS
 	tristate "Second extended fs support"
-	select FS_IOMAP if FS_DAX
 	help
 	  Ext2 is a standard Linux file system for hard disks.
 
diff --git a/fs/ext4/Kconfig b/fs/ext4/Kconfig
index 7b90691e98c4..e38039fd96ff 100644
--- a/fs/ext4/Kconfig
+++ b/fs/ext4/Kconfig
@@ -37,7 +37,6 @@ config EXT4_FS
 	select CRC16
 	select CRYPTO
 	select CRYPTO_CRC32C
-	select FS_IOMAP if FS_DAX
 	help
 	  This is the next generation of the ext3 filesystem.
 
-- 
2.6.6


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-11-23  8:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-21 20:17 [ext4:dev 21/26] file.c:undefined reference to `dax_iomap_fault' kbuild test robot
2016-11-22 12:08 ` Jan Kara
2016-11-22 21:33   ` Dave Chinner
2016-11-23  8:14     ` Jan Kara
2016-11-23  4:27   ` Theodore Ts'o

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.