Hi Thomas, I love your patch! Perhaps something to improve: [auto build test WARNING on linuxtv-media/master] [also build test WARNING on linus/master linux/master v5.9 next-20201013] [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] url: https://github.com/0day-ci/linux/commits/Thomas-Gleixner/media-Cleanup-in_interrupt-usage/20201013-224011 base: git://linuxtv.org/media_tree.git master config: microblaze-randconfig-r004-20201014 (attached as .config) compiler: microblaze-linux-gcc (GCC) 9.3.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/703daca167ddea5ab71b9547b549c1c1499f2bf4 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Thomas-Gleixner/media-Cleanup-in_interrupt-usage/20201013-224011 git checkout 703daca167ddea5ab71b9547b549c1c1499f2bf4 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=microblaze If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): In file included from include/linux/device.h:15, from include/linux/acpi.h:15, from include/linux/i2c.h:13, from drivers/media/usb/cx231xx/cx231xx.h:16, from drivers/media/usb/cx231xx/cx231xx-vbi.c:10: drivers/media/usb/cx231xx/cx231xx-vbi.c: In function 'cx231xx_init_vbi_isoc': >> drivers/media/usb/cx231xx/cx231xx-vbi.c:411:5: warning: format '%s' expects a matching 'char *' argument [-Wformat=] 411 | "unable to allocate %i bytes for transfer buffer %i%s\n", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/dev_printk.h:19:22: note: in definition of macro 'dev_fmt' 19 | #define dev_fmt(fmt) fmt | ^~~ drivers/media/usb/cx231xx/cx231xx-vbi.c:410:4: note: in expansion of macro 'dev_err' 410 | dev_err(dev->dev, | ^~~~~~~ drivers/media/usb/cx231xx/cx231xx-vbi.c:411:57: note: format string is defined here 411 | "unable to allocate %i bytes for transfer buffer %i%s\n", | ~^ | | | char * vim +411 drivers/media/usb/cx231xx/cx231xx-vbi.c e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 336 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 337 /* e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 338 * Allocate URBs and start IRQ e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 339 */ e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 340 int cx231xx_init_vbi_isoc(struct cx231xx *dev, int max_packets, e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 341 int num_bufs, int max_pkt_size, 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 342 int (*bulk_copy) (struct cx231xx *dev, 84b5dbf39ed2f51 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 343 struct urb *urb)) e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 344 { e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 345 struct cx231xx_dmaqueue *dma_q = &dev->vbi_mode.vidq; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 346 int i; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 347 int sb_size, pipe; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 348 struct urb *urb; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 349 int rc; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 350 336fea922936c11 drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-03 351 dev_dbg(dev->dev, "called cx231xx_vbi_isoc\n"); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 352 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 353 /* De-allocates all pending stuff */ e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 354 cx231xx_uninit_vbi_isoc(dev); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 355 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 356 /* clear if any halt */ 84b5dbf39ed2f51 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 357 usb_clear_halt(dev->udev, 84b5dbf39ed2f51 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 358 usb_rcvbulkpipe(dev->udev, 84b5dbf39ed2f51 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 359 dev->vbi_mode.end_point_addr)); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 360 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 361 dev->vbi_mode.bulk_ctl.bulk_copy = bulk_copy; 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 362 dev->vbi_mode.bulk_ctl.num_bufs = num_bufs; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 363 dma_q->pos = 0; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 364 dma_q->is_partial_line = 0; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 365 dma_q->last_sav = 0; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 366 dma_q->current_field = -1; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 367 dma_q->bytes_left_in_line = dev->width << 1; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 368 dma_q->lines_per_field = ((dev->norm & V4L2_STD_625_50) ? e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 369 PAL_VBI_LINES : NTSC_VBI_LINES); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 370 dma_q->lines_completed = 0; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 371 for (i = 0; i < 8; i++) e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 372 dma_q->partial_buf[i] = 0; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 373 6396bb221514d28 drivers/media/usb/cx231xx/cx231xx-vbi.c Kees Cook 2018-06-12 374 dev->vbi_mode.bulk_ctl.urb = kcalloc(num_bufs, sizeof(void *), cde4362f0244a70 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 375 GFP_KERNEL); 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 376 if (!dev->vbi_mode.bulk_ctl.urb) { 336fea922936c11 drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-03 377 dev_err(dev->dev, b7085c08647598a drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-02 378 "cannot alloc memory for usb buffers\n"); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 379 return -ENOMEM; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 380 } e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 381 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 382 dev->vbi_mode.bulk_ctl.transfer_buffer = 6396bb221514d28 drivers/media/usb/cx231xx/cx231xx-vbi.c Kees Cook 2018-06-12 383 kcalloc(num_bufs, sizeof(void *), GFP_KERNEL); 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 384 if (!dev->vbi_mode.bulk_ctl.transfer_buffer) { 336fea922936c11 drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-03 385 dev_err(dev->dev, b7085c08647598a drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-02 386 "cannot allocate memory for usbtransfer\n"); 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 387 kfree(dev->vbi_mode.bulk_ctl.urb); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 388 return -ENOMEM; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 389 } e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 390 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 391 dev->vbi_mode.bulk_ctl.max_pkt_size = max_pkt_size; 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 392 dev->vbi_mode.bulk_ctl.buf = NULL; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 393 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 394 sb_size = max_packets * dev->vbi_mode.bulk_ctl.max_pkt_size; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 395 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 396 /* allocate urbs and transfer buffers */ 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 397 for (i = 0; i < dev->vbi_mode.bulk_ctl.num_bufs; i++) { e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 398 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 399 urb = usb_alloc_urb(0, GFP_KERNEL); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 400 if (!urb) { e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 401 cx231xx_uninit_vbi_isoc(dev); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 402 return -ENOMEM; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 403 } 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 404 dev->vbi_mode.bulk_ctl.urb[i] = urb; cd5534be6bc681d drivers/media/video/cx231xx/cx231xx-vbi.c David Dillow 2012-06-18 405 urb->transfer_flags = 0; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 406 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 407 dev->vbi_mode.bulk_ctl.transfer_buffer[i] = 84b5dbf39ed2f51 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 408 kzalloc(sb_size, GFP_KERNEL); 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 409 if (!dev->vbi_mode.bulk_ctl.transfer_buffer[i]) { 336fea922936c11 drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-03 410 dev_err(dev->dev, b7085c08647598a drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-02 @411 "unable to allocate %i bytes for transfer buffer %i%s\n", 703daca167ddea5 drivers/media/usb/cx231xx/cx231xx-vbi.c Thomas Gleixner 2020-10-13 412 sb_size, i); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 413 cx231xx_uninit_vbi_isoc(dev); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 414 return -ENOMEM; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 415 } e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 416 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 417 pipe = usb_rcvbulkpipe(dev->udev, dev->vbi_mode.end_point_addr); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 418 usb_fill_bulk_urb(urb, dev->udev, pipe, 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 419 dev->vbi_mode.bulk_ctl.transfer_buffer[i], 84b5dbf39ed2f51 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 420 sb_size, cx231xx_irq_vbi_callback, dma_q); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 421 } e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 422 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 423 init_waitqueue_head(&dma_q->wq); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 424 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 425 /* submit urbs and enables IRQ */ 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 426 for (i = 0; i < dev->vbi_mode.bulk_ctl.num_bufs; i++) { 64fbf4445526068 drivers/media/video/cx231xx/cx231xx-vbi.c Palash Bandyopadhyay 2010-07-06 427 rc = usb_submit_urb(dev->vbi_mode.bulk_ctl.urb[i], GFP_ATOMIC); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 428 if (rc) { 336fea922936c11 drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-03 429 dev_err(dev->dev, b7085c08647598a drivers/media/usb/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2014-11-02 430 "submit of urb %i failed (error=%i)\n", i, rc); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 431 cx231xx_uninit_vbi_isoc(dev); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 432 return rc; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 433 } e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 434 } e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 435 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 436 cx231xx_capture_start(dev, 1, Vbi); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 437 e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 438 return 0; e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 439 } 84b5dbf39ed2f51 drivers/media/video/cx231xx/cx231xx-vbi.c Mauro Carvalho Chehab 2009-03-03 440 EXPORT_SYMBOL_GPL(cx231xx_init_vbi_isoc); e0d3bafd02586cf drivers/media/video/cx231xx/cx231xx-vbi.c Sri Deevi 2009-03-03 441 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip