Hi Benjamin, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on jmorris-security/next-testing] [also build test WARNING on dhowells-fs/fscache-next] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Benjamin-Coddington/Keyagents-another-call_usermodehelper-approach-for-namespaces/20220712-203658 base: https://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security.git next-testing config: hexagon-randconfig-r005-20220714 (https://download.01.org/0day-ci/archive/20220715/202207150537.QnoEUasf-lkp@xxxxxxxxx/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 5e61b9c556267086ef9b743a0b57df302eef831b) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/intel-lab-lkp/linux/commit/4d4f4ae463335d3e611bdb71330ab37af115cde9 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Benjamin-Coddington/Keyagents-another-call_usermodehelper-approach-for-namespaces/20220712-203658 git checkout 4d4f4ae463335d3e611bdb71330ab37af115cde9 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash security/keys/ If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): >> security/keys/request_key.c:254:1: warning: unused label 'done' [-Wunused-label] done: ^~~~~ 1 warning generated. vim +/done +254 security/keys/request_key.c 217 218 /* 219 * Call out to userspace for key construction. 220 * 221 * Program failure is ignored in favour of key status. 222 */ 223 static int construct_key(struct key *key, const void *callout_info, 224 size_t callout_len, void *aux, 225 struct key *dest_keyring) 226 { 227 request_key_actor_t actor; 228 struct key *authkey; 229 int ret; 230 231 kenter("%d,%p,%zu,%p", key->serial, callout_info, callout_len, aux); 232 233 /* allocate an authorisation key */ 234 authkey = request_key_auth_new(key, "create", callout_info, callout_len, 235 dest_keyring); 236 if (IS_ERR(authkey)) 237 return PTR_ERR(authkey); 238 239 /* Make the call */ 240 actor = call_sbin_request_key; 241 if (key->type->request_key) 242 actor = key->type->request_key; 243 #ifdef CONFIG_KEYAGENT 244 else { 245 ret = keyagent_request_key(authkey, aux); 246 247 /* ENOKEY: no keyagents match on calling process' keyrings */ 248 if (ret != -ENOKEY) 249 goto done; 250 } 251 #endif 252 ret = actor(authkey, aux); 253 > 254 done: 255 /* check that the actor called complete_request_key() prior to 256 * returning an error */ 257 WARN_ON(ret < 0 && 258 !test_bit(KEY_FLAG_INVALIDATED, &authkey->flags)); 259 260 key_put(authkey); 261 kleave(" = %d", ret); 262 return ret; 263 } 264 -- 0-DAY CI Kernel Test Service https://01.org/lkp