linux-next: build failures after merge of the keys tree

From: Stephen Rothwell
Date: Wed Dec 11 2019 - 19:59:07 EST


Hi all,

After merging the keys tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/linux/keyctl.h:11,
from include/linux/key.h:35,
from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
fs/crypto/keyring.c: In function 'allocate_filesystem_keyring':
include/uapi/linux/keyctl.h:52:24: warning: passing argument 5 of 'keyring_alloc' makes pointer from integer without a cast [-Wint-conversion]
52 | #define KEY_POS_SEARCH 0x08000000 /* possessor can find a key in search / search a keyring */
| ^
| |
| int
fs/crypto/keyring.c:208:21: note: in expansion of macro 'KEY_POS_SEARCH'
208 | current_cred(), KEY_POS_SEARCH |
| ^~~~~~~~~~~~~~
In file included from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
include/linux/key.h:390:20: note: expected 'struct key_acl *' but argument is of type 'int'
390 | extern struct key *keyring_alloc(const char *description, kuid_t uid, kgid_t gid,
| ^~~~~~~~~~~~~
In file included from include/linux/keyctl.h:11,
from include/linux/key.h:35,
from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
fs/crypto/keyring.c: In function 'allocate_master_key_users_keyring':
include/uapi/linux/keyctl.h:52:24: warning: passing argument 5 of 'keyring_alloc' makes pointer from integer without a cast [-Wint-conversion]
52 | #define KEY_POS_SEARCH 0x08000000 /* possessor can find a key in search / search a keyring */
| ^
| |
| int
fs/crypto/keyring.c:252:21: note: in expansion of macro 'KEY_POS_SEARCH'
252 | current_cred(), KEY_POS_SEARCH |
| ^~~~~~~~~~~~~~
In file included from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
include/linux/key.h:390:20: note: expected 'struct key_acl *' but argument is of type 'int'
390 | extern struct key *keyring_alloc(const char *description, kuid_t uid, kgid_t gid,
| ^~~~~~~~~~~~~
In file included from include/linux/keyctl.h:11,
from include/linux/key.h:35,
from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
fs/crypto/keyring.c: In function 'add_master_key_user':
include/uapi/linux/keyctl.h:52:24: warning: passing argument 6 of 'key_alloc' makes pointer from integer without a cast [-Wint-conversion]
52 | #define KEY_POS_SEARCH 0x08000000 /* possessor can find a key in search / search a keyring */
| ^
| |
| int
fs/crypto/keyring.c:290:8: note: in expansion of macro 'KEY_POS_SEARCH'
290 | KEY_POS_SEARCH | KEY_USR_VIEW, 0, NULL);
| ^~~~~~~~~~~~~~
In file included from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
include/linux/key.h:256:20: note: expected 'struct key_acl *' but argument is of type 'int'
256 | extern struct key *key_alloc(struct key_type *type,
| ^~~~~~~~~
In file included from include/linux/keyctl.h:11,
from include/linux/key.h:35,
from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
fs/crypto/keyring.c: In function 'add_new_master_key':
include/uapi/linux/keyctl.h:52:24: warning: passing argument 6 of 'key_alloc' makes pointer from integer without a cast [-Wint-conversion]
52 | #define KEY_POS_SEARCH 0x08000000 /* possessor can find a key in search / search a keyring */
| ^
| |
| int
fs/crypto/keyring.c:362:4: note: in expansion of macro 'KEY_POS_SEARCH'
362 | KEY_POS_SEARCH | KEY_USR_SEARCH | KEY_USR_VIEW,
| ^~~~~~~~~~~~~~
In file included from include/linux/key-type.h:11,
from fs/crypto/keyring.c:22:
include/linux/key.h:256:20: note: expected 'struct key_acl *' but argument is of type 'int'
256 | extern struct key *key_alloc(struct key_type *type,
| ^~~~~~~~~
fs/crypto/keysetup_v1.c: In function 'find_and_lock_process_key':
fs/crypto/keysetup_v1.c:107:8: error: too few arguments to function 'request_key'
107 | key = request_key(&key_type_logon, description, NULL);
| ^~~~~~~~~~~
In file included from include/keys/user-type.h:11,
from fs/crypto/keysetup_v1.c:25:
include/linux/key.h:321:27: note: declared here
321 | static inline struct key *request_key(struct key_type *type,
| ^~~~~~~~~~~
drivers/md/dm-verity-verify-sig.c: In function 'verity_verify_get_sig_from_key':
drivers/md/dm-verity-verify-sig.c:38:8: error: too few arguments to function 'request_key'
38 | key = request_key(&key_type_user,
| ^~~~~~~~~~~
In file included from include/keys/user-type.h:11,
from drivers/md/dm-verity-verify-sig.c:10:
include/linux/key.h:321:27: note: declared here
321 | static inline struct key *request_key(struct key_type *type,
| ^~~~~~~~~~~


Caused by commit

068df091816a ("keys: Replace uid/gid/perm permissions checking with an ACL")

I have used the keys tree from next-20191211 for today.
--
Cheers,
Stephen Rothwell

Attachment: pgpAErbYEBg4A.pgp
Description: OpenPGP digital signature