diff mbox

ubifs: add CONFIG_BLOCK dependency for encryption

Message ID 20161216084231.1637761-1-arnd@arndb.de
State Accepted
Headers show

Commit Message

Arnd Bergmann Dec. 16, 2016, 8:42 a.m. UTC
This came up during the v4.10 merge window:

warning: (UBIFS_FS_ENCRYPTION) selects FS_ENCRYPTION which has unmet direct dependencies (BLOCK)
fs/crypto/crypto.c: In function 'fscrypt_zeroout_range':
fs/crypto/crypto.c:355:9: error: implicit declaration of function 'bio_alloc';did you mean 'd_alloc'? [-Werror=implicit-function-declaration]
   bio = bio_alloc(GFP_NOWAIT, 1);

The easiest way out is to limit UBIFS_FS_ENCRYPTION to configurations
that also enable BLOCK.

Fixes: d475a507457b ("ubifs: Add skeleton for fscrypto")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 fs/ubifs/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Richard Weinberger Dec. 16, 2016, 9:26 a.m. UTC | #1
Arnd,

On 16.12.2016 09:42, Arnd Bergmann wrote:
> This came up during the v4.10 merge window:
> 
> warning: (UBIFS_FS_ENCRYPTION) selects FS_ENCRYPTION which has unmet direct dependencies (BLOCK)
> fs/crypto/crypto.c: In function 'fscrypt_zeroout_range':
> fs/crypto/crypto.c:355:9: error: implicit declaration of function 'bio_alloc';did you mean 'd_alloc'? [-Werror=implicit-function-declaration]
>    bio = bio_alloc(GFP_NOWAIT, 1);
> 
> The easiest way out is to limit UBIFS_FS_ENCRYPTION to configurations
> that also enable BLOCK.

Thanks for the fix!
I'll queue this for -rc2.

In the long-run I'd like to remove the CONFIG_BLOCK dependency from fs/crypto/crypto.c
since UBIFS does not use the block related functions at all.

Thanks,
//richard
Christoph Hellwig Dec. 16, 2016, 9:35 a.m. UTC | #2
On Fri, Dec 16, 2016 at 10:26:35AM +0100, Richard Weinberger wrote:
> > The easiest way out is to limit UBIFS_FS_ENCRYPTION to configurations
> > that also enable BLOCK.
> 
> Thanks for the fix!
> I'll queue this for -rc2.
> 
> In the long-run I'd like to remove the CONFIG_BLOCK dependency from fs/crypto/crypto.c
> since UBIFS does not use the block related functions at all.

I would much prefer if you did that fixup now.  Either by moving
all the block code into a new fs/crypto/bio.c or if that's too hard
by just sprinkling ifdefs.
diff mbox

Patch

diff --git a/fs/ubifs/Kconfig b/fs/ubifs/Kconfig
index 0a908ae7af13..b0d0623c83ed 100644
--- a/fs/ubifs/Kconfig
+++ b/fs/ubifs/Kconfig
@@ -53,7 +53,7 @@  config UBIFS_ATIME_SUPPORT
 
 config UBIFS_FS_ENCRYPTION
 	bool "UBIFS Encryption"
-	depends on UBIFS_FS
+	depends on UBIFS_FS && BLOCK
 	select FS_ENCRYPTION
 	default n
 	help