Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-17 Thread Linus Torvalds
On Sun, Dec 17, 2017 at 7:25 AM, Al Viro  wrote:
>
> Linus, would you take that directly or should I include it into vfs.git
> pull request?

I just took it directly, since you had in the meantime already
generated the pull request for the other issues, and I had a lazy late
Saturday morning..

  Linus


Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-17 Thread Linus Torvalds
On Sun, Dec 17, 2017 at 7:25 AM, Al Viro  wrote:
>
> Linus, would you take that directly or should I include it into vfs.git
> pull request?

I just took it directly, since you had in the meantime already
generated the pull request for the other issues, and I had a lazy late
Saturday morning..

  Linus


Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-17 Thread Al Viro
On Sat, Dec 16, 2017 at 10:46:05PM -0500, Nicolas Pitre wrote:
> Date: Fri, 10 Nov 2017 15:57:21 +0100
> From: Arnd Bergmann 
> Subject: [PATCH] cramfs: fix MTD dependency
> 
> With CONFIG_MTD=m and CONFIG_CRAMFS=y, we now get a link failure:
> 
> fs/cramfs/inode.o: In function `cramfs_mount':
> inode.c:(.text+0x220): undefined reference to `mount_mtd'
> fs/cramfs/inode.o: In function `cramfs_mtd_fill_super':
> inode.c:(.text+0x6d8): undefined reference to `mtd_point'
> inode.c:(.text+0xae4): undefined reference to `mtd_unpoint'
> 
> This adds a more specific Kconfig dependency to avoid the
> broken configuration. Alternatively we could make CRAMFS
> itself depend on "MTD || !MTD" with a similar result.
> 
> Fixes: 99c18ce580c6 ("cramfs: direct memory access support")
> Signed-off-by: Arnd Bergmann 
> Signed-off-by: Nicolas Pitre 
> ---
>  fs/cramfs/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/fs/cramfs/Kconfig b/fs/cramfs/Kconfig
> index f937082f3244..58e2fe40b2a0 100644
> --- a/fs/cramfs/Kconfig
> +++ b/fs/cramfs/Kconfig
> @@ -34,6 +34,7 @@ config CRAMFS_BLOCKDEV
>  config CRAMFS_MTD
>   bool "Support CramFs image directly mapped in physical memory"
>   depends on CRAMFS && MTD
> + depends on CRAMFS=m || MTD=y

*Ugh*

So basically the trouble case is CRAMFS=y, MTD=m; in that situation
mount_mtd() et.al. are not stubbed out at compiler level (as they
would with CRAMFS=y, MTD=n) and we end up with linker catching that.
Not pretty solution, but...

Linus, would you take that directly or should I include it into vfs.git
pull request?


Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-17 Thread Al Viro
On Sat, Dec 16, 2017 at 10:46:05PM -0500, Nicolas Pitre wrote:
> Date: Fri, 10 Nov 2017 15:57:21 +0100
> From: Arnd Bergmann 
> Subject: [PATCH] cramfs: fix MTD dependency
> 
> With CONFIG_MTD=m and CONFIG_CRAMFS=y, we now get a link failure:
> 
> fs/cramfs/inode.o: In function `cramfs_mount':
> inode.c:(.text+0x220): undefined reference to `mount_mtd'
> fs/cramfs/inode.o: In function `cramfs_mtd_fill_super':
> inode.c:(.text+0x6d8): undefined reference to `mtd_point'
> inode.c:(.text+0xae4): undefined reference to `mtd_unpoint'
> 
> This adds a more specific Kconfig dependency to avoid the
> broken configuration. Alternatively we could make CRAMFS
> itself depend on "MTD || !MTD" with a similar result.
> 
> Fixes: 99c18ce580c6 ("cramfs: direct memory access support")
> Signed-off-by: Arnd Bergmann 
> Signed-off-by: Nicolas Pitre 
> ---
>  fs/cramfs/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/fs/cramfs/Kconfig b/fs/cramfs/Kconfig
> index f937082f3244..58e2fe40b2a0 100644
> --- a/fs/cramfs/Kconfig
> +++ b/fs/cramfs/Kconfig
> @@ -34,6 +34,7 @@ config CRAMFS_BLOCKDEV
>  config CRAMFS_MTD
>   bool "Support CramFs image directly mapped in physical memory"
>   depends on CRAMFS && MTD
> + depends on CRAMFS=m || MTD=y

*Ugh*

So basically the trouble case is CRAMFS=y, MTD=m; in that situation
mount_mtd() et.al. are not stubbed out at compiler level (as they
would with CRAMFS=y, MTD=n) and we end up with linker catching that.
Not pretty solution, but...

Linus, would you take that directly or should I include it into vfs.git
pull request?


Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-16 Thread Nicolas Pitre
On Sat, 16 Dec 2017, Linus Torvalds wrote:

> Nico,
> 
> On Sat, Dec 16, 2017 at 7:00 PM, kbuild test robot
>  wrote:
> >
> > fs/cramfs/inode.c:641: undefined reference to `mtd_point'
> > fs/cramfs/inode.c:658: undefined reference to `mtd_unpoint'
> > fs/cramfs/inode.c:959: undefined reference to `mount_mtd'
> 
> This does seem to be real.
> 
> As of 99c18ce580c6 ("cramfs: direct memory access support") cramfs
> seems to require MTD, but that's not expressed in the Kconfig.

That was reported a while ago. The fix didn't make it up to you somehow. 
Please apply the following:

- >8
Date: Fri, 10 Nov 2017 15:57:21 +0100
From: Arnd Bergmann 
Subject: [PATCH] cramfs: fix MTD dependency

With CONFIG_MTD=m and CONFIG_CRAMFS=y, we now get a link failure:

fs/cramfs/inode.o: In function `cramfs_mount':
inode.c:(.text+0x220): undefined reference to `mount_mtd'
fs/cramfs/inode.o: In function `cramfs_mtd_fill_super':
inode.c:(.text+0x6d8): undefined reference to `mtd_point'
inode.c:(.text+0xae4): undefined reference to `mtd_unpoint'

This adds a more specific Kconfig dependency to avoid the
broken configuration. Alternatively we could make CRAMFS
itself depend on "MTD || !MTD" with a similar result.

Fixes: 99c18ce580c6 ("cramfs: direct memory access support")
Signed-off-by: Arnd Bergmann 
Signed-off-by: Nicolas Pitre 
---
 fs/cramfs/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/cramfs/Kconfig b/fs/cramfs/Kconfig
index f937082f3244..58e2fe40b2a0 100644
--- a/fs/cramfs/Kconfig
+++ b/fs/cramfs/Kconfig
@@ -34,6 +34,7 @@ config CRAMFS_BLOCKDEV
 config CRAMFS_MTD
bool "Support CramFs image directly mapped in physical memory"
depends on CRAMFS && MTD
+   depends on CRAMFS=m || MTD=y
default y if !CRAMFS_BLOCKDEV
help
  This option allows the CramFs driver to load data directly from


Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-16 Thread Nicolas Pitre
On Sat, 16 Dec 2017, Linus Torvalds wrote:

> Nico,
> 
> On Sat, Dec 16, 2017 at 7:00 PM, kbuild test robot
>  wrote:
> >
> > fs/cramfs/inode.c:641: undefined reference to `mtd_point'
> > fs/cramfs/inode.c:658: undefined reference to `mtd_unpoint'
> > fs/cramfs/inode.c:959: undefined reference to `mount_mtd'
> 
> This does seem to be real.
> 
> As of 99c18ce580c6 ("cramfs: direct memory access support") cramfs
> seems to require MTD, but that's not expressed in the Kconfig.

That was reported a while ago. The fix didn't make it up to you somehow. 
Please apply the following:

- >8
Date: Fri, 10 Nov 2017 15:57:21 +0100
From: Arnd Bergmann 
Subject: [PATCH] cramfs: fix MTD dependency

With CONFIG_MTD=m and CONFIG_CRAMFS=y, we now get a link failure:

fs/cramfs/inode.o: In function `cramfs_mount':
inode.c:(.text+0x220): undefined reference to `mount_mtd'
fs/cramfs/inode.o: In function `cramfs_mtd_fill_super':
inode.c:(.text+0x6d8): undefined reference to `mtd_point'
inode.c:(.text+0xae4): undefined reference to `mtd_unpoint'

This adds a more specific Kconfig dependency to avoid the
broken configuration. Alternatively we could make CRAMFS
itself depend on "MTD || !MTD" with a similar result.

Fixes: 99c18ce580c6 ("cramfs: direct memory access support")
Signed-off-by: Arnd Bergmann 
Signed-off-by: Nicolas Pitre 
---
 fs/cramfs/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/cramfs/Kconfig b/fs/cramfs/Kconfig
index f937082f3244..58e2fe40b2a0 100644
--- a/fs/cramfs/Kconfig
+++ b/fs/cramfs/Kconfig
@@ -34,6 +34,7 @@ config CRAMFS_BLOCKDEV
 config CRAMFS_MTD
bool "Support CramFs image directly mapped in physical memory"
depends on CRAMFS && MTD
+   depends on CRAMFS=m || MTD=y
default y if !CRAMFS_BLOCKDEV
help
  This option allows the CramFs driver to load data directly from


Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-16 Thread Linus Torvalds
Nico,

On Sat, Dec 16, 2017 at 7:00 PM, kbuild test robot
 wrote:
>
> fs/cramfs/inode.c:641: undefined reference to `mtd_point'
> fs/cramfs/inode.c:658: undefined reference to `mtd_unpoint'
> fs/cramfs/inode.c:959: undefined reference to `mount_mtd'

This does seem to be real.

As of 99c18ce580c6 ("cramfs: direct memory access support") cramfs
seems to require MTD, but that's not expressed in the Kconfig.

Oddly, _some_ of the mtd functions are protected with

if (IS_ENABLED(CCONFIG_CRAMFS_MTD) ..)

but cramfs_mtd_fill_super() is not.

It is only *used* if CONFIG_CRAMFS_MTD is enabled (the call to
mount_mtd(.., cramfs_mtd_fill_super) is conditional, but..

   Linus


Re: [linus:master] BUILD REGRESSION f3b5ad89de16f5d42e8ad36fbdf85f705c1ae051

2017-12-16 Thread Linus Torvalds
Nico,

On Sat, Dec 16, 2017 at 7:00 PM, kbuild test robot
 wrote:
>
> fs/cramfs/inode.c:641: undefined reference to `mtd_point'
> fs/cramfs/inode.c:658: undefined reference to `mtd_unpoint'
> fs/cramfs/inode.c:959: undefined reference to `mount_mtd'

This does seem to be real.

As of 99c18ce580c6 ("cramfs: direct memory access support") cramfs
seems to require MTD, but that's not expressed in the Kconfig.

Oddly, _some_ of the mtd functions are protected with

if (IS_ENABLED(CCONFIG_CRAMFS_MTD) ..)

but cramfs_mtd_fill_super() is not.

It is only *used* if CONFIG_CRAMFS_MTD is enabled (the call to
mount_mtd(.., cramfs_mtd_fill_super) is conditional, but..

   Linus