Hi Sebastian, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on media-tree/master] [also build test WARNING on sailus-media-tree/streams linus/master pza/reset/next v6.1-rc1 next-20221021] [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/Sebastian-Fricke/Wave5-codec-driver/20221022-081029 base: git://linuxtv.org/media_tree.git master patch link: https://lore.kernel.org/r/20221022000506.221933-5-sebastian.fricke%40collabora.com patch subject: [PATCH v10 4/7] media: chips-media: wave5: Add the v4l2 layer config: s390-allyesconfig compiler: s390-linux-gcc (GCC) 12.1.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/intel-lab-lkp/linux/commit/7a420dd4b39333ac2d5f80326e3dd401a3f09ffb git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Sebastian-Fricke/Wave5-codec-driver/20221022-081029 git checkout 7a420dd4b39333ac2d5f80326e3dd401a3f09ffb # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=s390 SHELL=/bin/bash drivers/media/platform/chips-media/coda/ drivers/media/platform/chips-media/wave5/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All warnings (new ones prefixed by >>): drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c: In function 'wave5_vpu_dec_stop_streaming': >> drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c:1151:21: warning: variable 'ret' set but not used [-Wunused-but-set-variable] 1151 | int ret; | ^~~ -- drivers/media/platform/chips-media/wave5/wave5-vpu-enc.c: In function 'wave5_vpu_enc_stop_streaming': >> drivers/media/platform/chips-media/wave5/wave5-vpu-enc.c:1205:21: warning: variable 'ret' set but not used [-Wunused-but-set-variable] 1205 | int ret; | ^~~ vim +/ret +1151 drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c 1139 1140 static void wave5_vpu_dec_stop_streaming(struct vb2_queue *q) 1141 { 1142 struct vpu_instance *inst = vb2_get_drv_priv(q); 1143 struct vb2_v4l2_buffer *buf; 1144 bool check_cmd = TRUE; 1145 1146 dev_dbg(inst->dev->dev, "%s: type: %d\n", __func__, q->type); 1147 1148 while (check_cmd) { 1149 struct queue_status_info q_status; 1150 struct dec_output_info dec_output_info; > 1151 int ret; 1152 1153 wave5_vpu_dec_give_command(inst, DEC_GET_QUEUE_STATUS, &q_status); 1154 1155 if (q_status.instance_queue_count + q_status.report_queue_count == 0) 1156 break; 1157 1158 if (wave5_vpu_wait_interrupt(inst, VPU_DEC_TIMEOUT) < 0) 1159 break; 1160 1161 ret = wave5_vpu_dec_get_output_info(inst, &dec_output_info); 1162 } 1163 1164 if (q->type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) { 1165 while ((buf = v4l2_m2m_src_buf_remove(inst->v4l2_fh.m2m_ctx))) { 1166 dev_dbg(inst->dev->dev, "%s: (Multiplanar) buf type %4d | index %4d\n", 1167 __func__, buf->vb2_buf.type, buf->vb2_buf.index); 1168 v4l2_m2m_buf_done(buf, VB2_BUF_STATE_ERROR); 1169 } 1170 inst->queued_src_buf_num = 0; 1171 } else { 1172 int i, ret; 1173 dma_addr_t rd_ptr, wr_ptr; 1174 1175 while ((buf = v4l2_m2m_dst_buf_remove(inst->v4l2_fh.m2m_ctx))) { 1176 u32 plane; 1177 1178 dev_dbg(inst->dev->dev, "%s: buf type %4d | index %4d\n", 1179 __func__, buf->vb2_buf.type, buf->vb2_buf.index); 1180 1181 for (plane = 0; plane < inst->dst_fmt.num_planes; plane++) 1182 vb2_set_plane_payload(&buf->vb2_buf, plane, 0); 1183 1184 v4l2_m2m_buf_done(buf, VB2_BUF_STATE_ERROR); 1185 } 1186 1187 for (i = 0; i < inst->dst_buf_count; i++) { 1188 ret = wave5_vpu_dec_set_disp_flag(inst, i); 1189 if (ret) { 1190 dev_dbg(inst->dev->dev, 1191 "%s: Setting display flag of buf index: %d, fail: %d\n", 1192 __func__, i, ret); 1193 } 1194 } 1195 1196 ret = wave5_vpu_dec_get_bitstream_buffer(inst, &rd_ptr, &wr_ptr, NULL); 1197 if (ret) { 1198 dev_err(inst->dev->dev, 1199 "Getting bitstream buf, fail: %d\n", ret); 1200 return; 1201 } 1202 ret = wave5_vpu_dec_set_rd_ptr(inst, wr_ptr, TRUE); 1203 if (ret) { 1204 dev_err(inst->dev->dev, 1205 "Setting read pointer for the decoder, fail: %d\n", ret); 1206 return; 1207 } 1208 if (inst->eos) { 1209 inst->eos = FALSE; 1210 inst->state = VPU_INST_STATE_INIT_SEQ; 1211 } 1212 inst->queued_dst_buf_num = 0; 1213 } 1214 } 1215 -- 0-DAY CI Kernel Test Service https://01.org/lkp