Hi Ming, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on e783362eb54cd99b2cac8b3a9aeac942e6f6ac07] url: https://github.com/0day-ci/linux/commits/Ming-Qian/amphion-video-decoder-encoder-driver/20220125-152112 base: e783362eb54cd99b2cac8b3a9aeac942e6f6ac07 config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20220125/202201251843.dnXV2QBt-lkp@xxxxxxxxx/config) compiler: alpha-linux-gcc (GCC) 11.2.0 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/0day-ci/linux/commit/0c5b974ccd2c9ad228d908facc5c73e93c750600 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Ming-Qian/amphion-video-decoder-encoder-driver/20220125-152112 git checkout 0c5b974ccd2c9ad228d908facc5c73e93c750600 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=alpha SHELL=/bin/bash drivers/media/platform/amphion/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): drivers/media/platform/amphion/vpu_core.c: In function 'vpu_core_register': drivers/media/platform/amphion/vpu_core.c:246:28: error: implicit declaration of function 'vzalloc'; did you mean 'kvzalloc'? [-Werror=implicit-function-declaration] 246 | core->msg_buffer = vzalloc(core->msg_buffer_size); | ^~~~~~~ | kvzalloc >> drivers/media/platform/amphion/vpu_core.c:246:26: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion] 246 | core->msg_buffer = vzalloc(core->msg_buffer_size); | ^ drivers/media/platform/amphion/vpu_core.c:270:17: error: implicit declaration of function 'vfree'; did you mean 'kvfree'? [-Werror=implicit-function-declaration] 270 | vfree(core->msg_buffer); | ^~~~~ | kvfree cc1: some warnings being treated as errors vim +246 drivers/media/platform/amphion/vpu_core.c 78cda8a2c04ed7f Ming Qian 2022-01-25 228 78cda8a2c04ed7f Ming Qian 2022-01-25 229 static int vpu_core_register(struct device *dev, struct vpu_core *core) 78cda8a2c04ed7f Ming Qian 2022-01-25 230 { 78cda8a2c04ed7f Ming Qian 2022-01-25 231 struct vpu_dev *vpu = dev_get_drvdata(dev); 78cda8a2c04ed7f Ming Qian 2022-01-25 232 int ret = 0; 78cda8a2c04ed7f Ming Qian 2022-01-25 233 78cda8a2c04ed7f Ming Qian 2022-01-25 234 dev_dbg(core->dev, "register core %s\n", vpu_core_type_desc(core->type)); 78cda8a2c04ed7f Ming Qian 2022-01-25 235 if (vpu_core_is_exist(vpu, core)) 78cda8a2c04ed7f Ming Qian 2022-01-25 236 return 0; 78cda8a2c04ed7f Ming Qian 2022-01-25 237 78cda8a2c04ed7f Ming Qian 2022-01-25 238 core->workqueue = alloc_workqueue("vpu", WQ_UNBOUND | WQ_MEM_RECLAIM, 1); 78cda8a2c04ed7f Ming Qian 2022-01-25 239 if (!core->workqueue) { 78cda8a2c04ed7f Ming Qian 2022-01-25 240 dev_err(core->dev, "fail to alloc workqueue\n"); 78cda8a2c04ed7f Ming Qian 2022-01-25 241 return -ENOMEM; 78cda8a2c04ed7f Ming Qian 2022-01-25 242 } 78cda8a2c04ed7f Ming Qian 2022-01-25 243 INIT_WORK(&core->msg_work, vpu_msg_run_work); 78cda8a2c04ed7f Ming Qian 2022-01-25 244 INIT_DELAYED_WORK(&core->msg_delayed_work, vpu_msg_delayed_work); 78cda8a2c04ed7f Ming Qian 2022-01-25 245 core->msg_buffer_size = roundup_pow_of_two(VPU_MSG_BUFFER_SIZE); 78cda8a2c04ed7f Ming Qian 2022-01-25 @246 core->msg_buffer = vzalloc(core->msg_buffer_size); 78cda8a2c04ed7f Ming Qian 2022-01-25 247 if (!core->msg_buffer) { 78cda8a2c04ed7f Ming Qian 2022-01-25 248 dev_err(core->dev, "failed allocate buffer for fifo\n"); 78cda8a2c04ed7f Ming Qian 2022-01-25 249 ret = -ENOMEM; 78cda8a2c04ed7f Ming Qian 2022-01-25 250 goto error; 78cda8a2c04ed7f Ming Qian 2022-01-25 251 } 78cda8a2c04ed7f Ming Qian 2022-01-25 252 ret = kfifo_init(&core->msg_fifo, core->msg_buffer, core->msg_buffer_size); 78cda8a2c04ed7f Ming Qian 2022-01-25 253 if (ret) { 78cda8a2c04ed7f Ming Qian 2022-01-25 254 dev_err(core->dev, "failed init kfifo\n"); 78cda8a2c04ed7f Ming Qian 2022-01-25 255 goto error; 78cda8a2c04ed7f Ming Qian 2022-01-25 256 } 78cda8a2c04ed7f Ming Qian 2022-01-25 257 78cda8a2c04ed7f Ming Qian 2022-01-25 258 list_add_tail(&core->list, &vpu->cores); 78cda8a2c04ed7f Ming Qian 2022-01-25 259 78cda8a2c04ed7f Ming Qian 2022-01-25 260 vpu_core_get_vpu(core); 78cda8a2c04ed7f Ming Qian 2022-01-25 261 78cda8a2c04ed7f Ming Qian 2022-01-25 262 if (vpu_iface_get_power_state(core)) 78cda8a2c04ed7f Ming Qian 2022-01-25 263 ret = vpu_core_restore(core); 78cda8a2c04ed7f Ming Qian 2022-01-25 264 if (ret) 78cda8a2c04ed7f Ming Qian 2022-01-25 265 goto error; 78cda8a2c04ed7f Ming Qian 2022-01-25 266 78cda8a2c04ed7f Ming Qian 2022-01-25 267 return 0; 78cda8a2c04ed7f Ming Qian 2022-01-25 268 error: 78cda8a2c04ed7f Ming Qian 2022-01-25 269 if (core->msg_buffer) { 78cda8a2c04ed7f Ming Qian 2022-01-25 270 vfree(core->msg_buffer); 78cda8a2c04ed7f Ming Qian 2022-01-25 271 core->msg_buffer = NULL; 78cda8a2c04ed7f Ming Qian 2022-01-25 272 } 78cda8a2c04ed7f Ming Qian 2022-01-25 273 if (core->workqueue) { 78cda8a2c04ed7f Ming Qian 2022-01-25 274 destroy_workqueue(core->workqueue); 78cda8a2c04ed7f Ming Qian 2022-01-25 275 core->workqueue = NULL; 78cda8a2c04ed7f Ming Qian 2022-01-25 276 } 78cda8a2c04ed7f Ming Qian 2022-01-25 277 return ret; 78cda8a2c04ed7f Ming Qian 2022-01-25 278 } 78cda8a2c04ed7f Ming Qian 2022-01-25 279 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx