Re: [PATCH v2 08/14] video: fbdev: make fbops member of struct fb_info a const pointer
by kbuild test robot
Hi Jani,
I love your patch! Yet something to improve:
[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on v5.4 next-20191129]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Jani-Nikula/video-drm-etc-consti...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=ia64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/video/fbdev/uvesafb.c: In function 'uvesafb_init_info':
>> drivers/video/fbdev/uvesafb.c:1443:25: error: assignment of member 'fb_blank' in read-only object
info->fbops->fb_blank = NULL;
^
drivers/video/fbdev/uvesafb.c:1513:31: error: assignment of member 'fb_pan_display' in read-only object
info->fbops->fb_pan_display = NULL;
^
--
drivers/video/fbdev/aty/atyfb_base.c: In function 'atyfb_set_par':
>> drivers/video/fbdev/aty/atyfb_base.c:1319:24: error: assignment of member 'fb_sync' in read-only object
info->fbops->fb_sync = atyfb_sync;
^
drivers/video/fbdev/aty/atyfb_base.c:1322:24: error: assignment of member 'fb_sync' in read-only object
info->fbops->fb_sync = NULL;
^
--
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c: In function 'mb862xxfb_init_accel':
>> drivers/video/fbdev/mb862xx/mb862xxfb_accel.c:311:28: error: assignment of member 'fb_fillrect' in read-only object
info->fbops->fb_fillrect = cfb_fillrect;
^
>> drivers/video/fbdev/mb862xx/mb862xxfb_accel.c:312:28: error: assignment of member 'fb_copyarea' in read-only object
info->fbops->fb_copyarea = cfb_copyarea;
^
>> drivers/video/fbdev/mb862xx/mb862xxfb_accel.c:313:29: error: assignment of member 'fb_imageblit' in read-only object
info->fbops->fb_imageblit = cfb_imageblit;
^
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c:316:28: error: assignment of member 'fb_fillrect' in read-only object
info->fbops->fb_fillrect = mb86290fb_fillrect;
^
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c:317:28: error: assignment of member 'fb_copyarea' in read-only object
info->fbops->fb_copyarea = mb86290fb_copyarea;
^
drivers/video/fbdev/mb862xx/mb862xxfb_accel.c:318:29: error: assignment of member 'fb_imageblit' in read-only object
info->fbops->fb_imageblit = mb86290fb_imageblit;
^
--
drivers/video/fbdev/nvidia/nvidia.c: In function 'nvidiafb_set_par':
>> drivers/video/fbdev/nvidia/nvidia.c:663:29: error: assignment of member 'fb_imageblit' in read-only object
info->fbops->fb_imageblit = nvidiafb_imageblit;
^
>> drivers/video/fbdev/nvidia/nvidia.c:664:28: error: assignment of member 'fb_fillrect' in read-only object
info->fbops->fb_fillrect = nvidiafb_fillrect;
^
drivers/video/fbdev/nvidia/nvidia.c:665:28: error: assignment of member 'fb_copyarea' in read-only object
info->fbops->fb_copyarea = nvidiafb_copyarea;
^
drivers/video/fbdev/nvidia/nvidia.c:666:24: error: assignment of member 'fb_sync' in read-only object
info->fbops->fb_sync = nvidiafb_sync;
^
drivers/video/fbdev/nvidia/nvidia.c:672:29: error: assignment of member 'fb_imageblit' in read-only object
info->fbops->fb_imageblit = cfb_imageblit;
^
drivers/video/fbdev/nvidia/nvidia.c:673:28: error: assignment of member 'fb_fillrect' in read-only object
info->fbops->fb_fillrect = cfb_fillrect;
^
drivers/video/fbdev/nvidia/nvidia.c:674:28: error: assignment of member 'fb_copyarea' in read-only object
info->fbops->fb_copyarea = cfb_copyarea;
^
drivers/video/fbdev/nvidia/nvidia.c:675:24: error: assignment of member 'fb_sync' in read-only object
info->fbops->fb_sync = NULL;
^
drivers/video/fbdev/nvidia/nvidia.c: In function 'nvidia_set_fbinfo':
drivers/video/fbdev/nvidia/nvidia.c:1168:29: error: assignment of member 'fb_cursor' in read-only object
info->fbops->fb_cursor = NULL;
^
vim +/fb_blank +1443 drivers/video/fbdev/uvesafb.c
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1427
48c68c4f1b5424 drivers/video/uvesafb.c Greg Kroah-Hartman 2012-12-21 1428 static void uvesafb_init_info(struct fb_info *info, struct vbe_mode_ib *mode)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1429 {
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1430 unsigned int size_vmode;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1431 unsigned int size_remap;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1432 unsigned int size_total;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1433 struct uvesafb_par *par = info->par;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1434 int i, h;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1435
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1436 info->pseudo_palette = ((u8 *)info->par + sizeof(struct uvesafb_par));
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1437 info->fix = uvesafb_fix;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1438 info->fix.ypanstep = par->ypan ? 1 : 0;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1439 info->fix.ywrapstep = (par->ypan > 1) ? 1 : 0;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1440
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1441 /* Disable blanking if the user requested so. */
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1442 if (!blank)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 @1443 info->fbops->fb_blank = NULL;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1444
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1445 /*
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1446 * Find out how much IO memory is required for the mode with
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1447 * the highest resolution.
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1448 */
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1449 size_remap = 0;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1450 for (i = 0; i < par->vbe_modes_cnt; i++) {
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1451 h = par->vbe_modes[i].bytes_per_scan_line *
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1452 par->vbe_modes[i].y_res;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1453 if (h > size_remap)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1454 size_remap = h;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1455 }
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1456 size_remap *= 2;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1457
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1458 /*
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1459 * size_vmode -- that is the amount of memory needed for the
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1460 * used video mode, i.e. the minimum amount of
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1461 * memory we need.
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1462 */
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1463 size_vmode = info->var.yres * mode->bytes_per_scan_line;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1464
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1465 /*
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1466 * size_total -- all video memory we have. Used for mtrr
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1467 * entries, resource allocation and bounds
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1468 * checking.
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1469 */
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1470 size_total = par->vbe_ib.total_memory * 65536;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1471 if (vram_total)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1472 size_total = vram_total * 1024 * 1024;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1473 if (size_total < size_vmode)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1474 size_total = size_vmode;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1475
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1476 /*
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1477 * size_remap -- the amount of video memory we are going to
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1478 * use for vesafb. With modern cards it is no
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1479 * option to simply use size_total as th
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1480 * wastes plenty of kernel address space.
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1481 */
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1482 if (vram_remap)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1483 size_remap = vram_remap * 1024 * 1024;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1484 if (size_remap < size_vmode)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1485 size_remap = size_vmode;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1486 if (size_remap > size_total)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1487 size_remap = size_total;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1488
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1489 info->fix.smem_len = size_remap;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1490 info->fix.smem_start = mode->phys_base_ptr;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1491
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1492 /*
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1493 * We have to set yres_virtual here because when setup_var() was
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1494 * called, smem_len wasn't defined yet.
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1495 */
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1496 info->var.yres_virtual = info->fix.smem_len /
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1497 mode->bytes_per_scan_line;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1498
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1499 if (par->ypan && info->var.yres_virtual > info->var.yres) {
a8feae09110675 drivers/video/fbdev/uvesafb.c Joe Perches 2017-06-14 1500 pr_info("scrolling: %s using protected mode interface, yres_virtual=%d\n",
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1501 (par->ypan > 1) ? "ywrap" : "ypan",
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1502 info->var.yres_virtual);
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1503 } else {
a8feae09110675 drivers/video/fbdev/uvesafb.c Joe Perches 2017-06-14 1504 pr_info("scrolling: redraw\n");
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1505 info->var.yres_virtual = info->var.yres;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1506 par->ypan = 0;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1507 }
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1508
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1509 info->flags = FBINFO_FLAG_DEFAULT |
1cc9fb6dbf915e drivers/video/uvesafb.c Roel Kluin 2009-03-31 1510 (par->ypan ? FBINFO_HWACCEL_YPAN : 0);
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1511
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1512 if (!par->ypan)
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1513 info->fbops->fb_pan_display = NULL;
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1514 }
8bdb3a2d7df48b drivers/video/uvesafb.c Michal Januszewski 2007-10-16 1515
:::::: The code at line 1443 was first introduced by commit
:::::: 8bdb3a2d7df48b861972c4bfb58490853a228f51 uvesafb: the driver core
:::::: TO: Michal Januszewski <spock(a)gentoo.org>
:::::: CC: Linus Torvalds <torvalds(a)woody.linux-foundation.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
fs/io_uring.c:1632:21: error: implicit declaration of function 'kmap'; did you mean 'vmap'?
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 81b6b96475ac7a4ebfceae9f16fb3758327adbfe
commit: 311ae9e159d81a1ec1cf645daf40b39ae5a0bd84 io_uring: fix dead-hung for non-iter fixed rw
date: 4 days ago
config: h8300-h8300h-sim_defconfig (attached as .config)
compiler: h8300-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 311ae9e159d81a1ec1cf645daf40b39ae5a0bd84
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=h8300
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
fs/io_uring.c: In function 'loop_rw_iter':
>> fs/io_uring.c:1632:21: error: implicit declaration of function 'kmap'; did you mean 'vmap'? [-Werror=implicit-function-declaration]
iovec.iov_base = kmap(iter->bvec->bv_page)
^~~~
vmap
fs/io_uring.c:1632:19: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
iovec.iov_base = kmap(iter->bvec->bv_page)
^
>> fs/io_uring.c:1647:4: error: implicit declaration of function 'kunmap'; did you mean 'vunmap'? [-Werror=implicit-function-declaration]
kunmap(iter->bvec->bv_page);
^~~~~~
vunmap
cc1: some warnings being treated as errors
vim +1632 fs/io_uring.c
1604
1605 /*
1606 * For files that don't have ->read_iter() and ->write_iter(), handle them
1607 * by looping over ->read() or ->write() manually.
1608 */
1609 static ssize_t loop_rw_iter(int rw, struct file *file, struct kiocb *kiocb,
1610 struct iov_iter *iter)
1611 {
1612 ssize_t ret = 0;
1613
1614 /*
1615 * Don't support polled IO through this interface, and we can't
1616 * support non-blocking either. For the latter, this just causes
1617 * the kiocb to be handled from an async context.
1618 */
1619 if (kiocb->ki_flags & IOCB_HIPRI)
1620 return -EOPNOTSUPP;
1621 if (kiocb->ki_flags & IOCB_NOWAIT)
1622 return -EAGAIN;
1623
1624 while (iov_iter_count(iter)) {
1625 struct iovec iovec;
1626 ssize_t nr;
1627
1628 if (!iov_iter_is_bvec(iter)) {
1629 iovec = iov_iter_iovec(iter);
1630 } else {
1631 /* fixed buffers import bvec */
> 1632 iovec.iov_base = kmap(iter->bvec->bv_page)
1633 + iter->iov_offset;
1634 iovec.iov_len = min(iter->count,
1635 iter->bvec->bv_len - iter->iov_offset);
1636 }
1637
1638 if (rw == READ) {
1639 nr = file->f_op->read(file, iovec.iov_base,
1640 iovec.iov_len, &kiocb->ki_pos);
1641 } else {
1642 nr = file->f_op->write(file, iovec.iov_base,
1643 iovec.iov_len, &kiocb->ki_pos);
1644 }
1645
1646 if (iov_iter_is_bvec(iter))
> 1647 kunmap(iter->bvec->bv_page);
1648
1649 if (nr < 0) {
1650 if (!ret)
1651 ret = nr;
1652 break;
1653 }
1654 ret += nr;
1655 if (nr != iovec.iov_len)
1656 break;
1657 iov_iter_advance(iter, nr);
1658 }
1659
1660 return ret;
1661 }
1662
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
[thierryreding:for-5.6/nouveau 89/138] drivers/gpio/gpiolib.c:2617:32: error: 'struct gpio_device' has no member named 'pin_ranges'
by kbuild test robot
tree: https://github.com/thierryreding/linux for-5.6/nouveau
head: 3a536588f14e8684b2d6b6257dfa1d8f6f88becd
commit: e16c10453d5198fbc8e1ac2a50246f8dfac5d6e8 [89/138] gpio: Support GPIO controllers without pin-ranges
config: x86_64-lkp (attached as .config)
compiler: gcc-7 (Debian 7.5.0-1) 7.5.0
reproduce:
git checkout e16c10453d5198fbc8e1ac2a50246f8dfac5d6e8
# save the attached .config to linux build tree
make ARCH=x86_64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/gpio/gpiolib.c: In function 'gpiochip_generic_request':
>> drivers/gpio/gpiolib.c:2617:32: error: 'struct gpio_device' has no member named 'pin_ranges'
if (!list_empty(&chip->gpiodev->pin_ranges))
^~
vim +2617 drivers/gpio/gpiolib.c
2609
2610 /**
2611 * gpiochip_generic_request() - request the gpio function for a pin
2612 * @chip: the gpiochip owning the GPIO
2613 * @offset: the offset of the GPIO to request for GPIO function
2614 */
2615 int gpiochip_generic_request(struct gpio_chip *chip, unsigned offset)
2616 {
> 2617 if (!list_empty(&chip->gpiodev->pin_ranges))
2618 return pinctrl_gpio_request(chip->gpiodev->base + offset);
2619
2620 return 0;
2621 }
2622 EXPORT_SYMBOL_GPL(gpiochip_generic_request);
2623
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
[linux-review:UPDATE-20191130-024900/James-Sewart/PCI-Add-DMA-alias-quirk-for-PLX-PEX-NTB/20191127-072545 1/1] drivers/pci/quirks.c:5387:2: error: too many arguments to function 'pci_add_dma_alias'
by kbuild test robot
tree: https://github.com/0day-ci/linux/commits/UPDATE-20191130-024900/James-Sew...
head: 201111542461c906303a4800f40dcc834cbbb019
commit: 201111542461c906303a4800f40dcc834cbbb019 [1/1] PCI: Add DMA alias quirk for PLX PEX NTB
config: sparc-randconfig-a001-20191129 (attached as .config)
compiler: sparc-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 201111542461c906303a4800f40dcc834cbbb019
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=sparc
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/pci/quirks.c: In function 'quirk_plx_ntb_dma_alias':
>> drivers/pci/quirks.c:5387:2: error: too many arguments to function 'pci_add_dma_alias'
pci_add_dma_alias(pdev, 0, 256);
^~~~~~~~~~~~~~~~~
In file included from drivers/pci/quirks.c:18:0:
include/linux/pci.h:2310:6: note: declared here
void pci_add_dma_alias(struct pci_dev *dev, u8 devfn);
^~~~~~~~~~~~~~~~~
vim +/pci_add_dma_alias +5387 drivers/pci/quirks.c
5376
5377 /*
5378 * PLX NTB uses devfn proxy IDs to move TLPs between NT endpoints. These IDs
5379 * are used to forward responses to the originator on the other side of the
5380 * NTB. Alias all possible IDs to the NTB to permit access when the IOMMU is
5381 * turned on.
5382 */
5383 static void quirk_plx_ntb_dma_alias(struct pci_dev *pdev)
5384 {
5385 pci_info(pdev, "Setting PLX NTB proxy ID aliases\n");
5386 /* PLX NTB may use all 256 devfns */
> 5387 pci_add_dma_alias(pdev, 0, 256);
5388 }
5389 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_PLX, 0x87b0, quirk_plx_ntb_dma_alias);
5390 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_PLX, 0x87b1, quirk_plx_ntb_dma_alias);
5391
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
[feng:master 7/9] mm/page_alloc.c:4761:6: error: 'watchdog_thresh' undeclared; did you mean 'proc_watchdog_thresh'?
by kbuild test robot
tree: feng/master
head: 06bff35130fa1539e775d6dcef3b9a430eb1a96e
commit: f3f0fe74c2b69c3355eee038ba1e97f72464e012 [7/9] zonelist: add dump
config: arm-at91_dt_defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout f3f0fe74c2b69c3355eee038ba1e97f72464e012
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
mm/page_alloc.c: In function '__alloc_pages_nodemask':
>> mm/page_alloc.c:4761:6: error: 'watchdog_thresh' undeclared (first use in this function); did you mean 'proc_watchdog_thresh'?
if (watchdog_thresh == 20) {
^~~~~~~~~~~~~~~
proc_watchdog_thresh
mm/page_alloc.c:4761:6: note: each undeclared identifier is reported only once for each function it appears in
In file included from include/asm-generic/bug.h:19:0,
from arch/arm/include/asm/bug.h:60,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/mm.h:9,
from mm/page_alloc.c:19:
mm/page_alloc.c:4768:34: error: 'struct zone' has no member named 'node'; did you mean 'name'?
ac.preferred_zoneref->zone->node,
^
include/linux/kernel.h:130:43: note: in definition of macro 'mtp'
trace_printk(KERN_ERR "" f "\n",##x)
^
mm/page_alloc.c:4803:20: error: 'struct zone' has no member named 'node'; did you mean 'name'?
zrefs->zone->node,
^~~~
name
vim +4761 mm/page_alloc.c
4725
4726 /*
4727 * This is the 'heart' of the zoned buddy allocator.
4728 */
4729 struct page *
4730 __alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order, int preferred_nid,
4731 nodemask_t *nodemask)
4732 {
4733 struct page *page;
4734 unsigned int alloc_flags = ALLOC_WMARK_LOW;
4735 gfp_t alloc_mask; /* The gfp_t that was actually used for allocation */
4736 struct alloc_context ac = { };
4737
4738
4739 /*
4740 * There are several places where we assume that the order value is sane
4741 * so bail out early if the request is out of bound.
4742 */
4743 if (unlikely(order >= MAX_ORDER)) {
4744 WARN_ON_ONCE(!(gfp_mask & __GFP_NOWARN));
4745 return NULL;
4746 }
4747
4748 gfp_mask &= gfp_allowed_mask;
4749 alloc_mask = gfp_mask;
4750 if (!prepare_alloc_pages(gfp_mask, order, preferred_nid, nodemask, &ac, &alloc_mask, &alloc_flags))
4751 return NULL;
4752
4753 finalise_ac(gfp_mask, &ac);
4754
4755 /*
4756 * Forbid the first pass from falling back to types that fragment
4757 * memory until all local zones are considered.
4758 */
4759 alloc_flags |= alloc_flags_nofragment(ac.preferred_zoneref->zone, gfp_mask);
4760
> 4761 if (watchdog_thresh == 20) {
4762
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
[frank-w-bpi-r2-4.14:5.4-r64-main 4/37] drivers/net/phy/rtk/rtl8367c/leaky.c:18:10: fatal error: rtk_switch.h: No such file or directory
by kbuild test robot
tree: https://github.com/frank-w/BPI-R2-4.14 5.4-r64-main
head: f15b233c894f1957f5e4f3d9b12fe2270f875403
commit: b2ad55ca4d6cbe4ef94d49975b4133674d8fafaf [4/37] net: phy: add rtl8367 switch phy
config: arm64-allmodconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout b2ad55ca4d6cbe4ef94d49975b4133674d8fafaf
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/net/phy/rtk/rtl8367c/leaky.c:18:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/oam.c:18:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/port.c:18:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/ptp.c:18:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/qos.c:18:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/rate.c:18:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/rldp.c:24:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/rtk_switch.c:17:10: fatal error: rtk_switch.h: No such file or directory
#include <rtk_switch.h>
^~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/rtl8367c_asicdrv_acl.c:17:10: fatal error: rtl8367c_asicdrv_acl.h: No such file or directory
#include <rtl8367c_asicdrv_acl.h>
^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/rtl8367c_asicdrv.c:18:10: fatal error: rtl8367c_asicdrv.h: No such file or directory
#include <rtl8367c_asicdrv.h>
^~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
>> drivers/net/phy/rtk/rtl8367c/rtl8367c_asicdrv_cputag.c:17:10: fatal error: rtl8367c_asicdrv_cputag.h: No such file or directory
#include <rtl8367c_asicdrv_cputag.h>
^~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
..
vim +18 drivers/net/phy/rtk/rtl8367c/leaky.c
> 18 #include <rtk_switch.h>
19 #include <rtk_error.h>
20 #include <leaky.h>
21 #include <string.h>
22
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
[frank-w-bpi-r2-4.14:5.4-r64-pcie 28/39] ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.c:40: undefined reference to `__mt76_poll'
by kbuild test robot
Hi Frank,
It's probably a bug fix that unveils the link errors.
tree: https://github.com/frank-w/BPI-R2-4.14 5.4-r64-pcie
head: a6455146086aa2beb86b4157190086dc5cf6ec80
commit: e2526fc6f53662aa74af3de3b5ea554ca8f94383 [28/39] mt76: some fixes
config: x86_64-randconfig-c003-20191129 (attached as .config)
compiler: gcc-7 (Debian 7.5.0-1) 7.5.0
reproduce:
git checkout e2526fc6f53662aa74af3de3b5ea554ca8f94383
# save the attached .config to linux build tree
make ARCH=x86_64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mcu.o: in function `mt76x02_mcu_msg_alloc':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mcu.h:91: undefined reference to `mt76_mcu_msg_alloc'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mcu.o: in function `mt76x02_mcu_msg_send':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mcu.c:47: undefined reference to `mt76_mcu_get_response'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mcu.o: in function `mt76x02_mcu_calibrate':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mcu.c:129: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_eeprom.o: in function `mt76x02_efuse_read':
drivers/net/wireless/mediatek/mt76_new/mt76x02_eeprom.c:26: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_pre_tbtt_tasklet':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:31: undefined reference to `mt76_csa_check'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_tx_tasklet':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:153: undefined reference to `mt76_txq_schedule_all'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_enable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_wait_for_wpdma':
drivers/net/wireless/mediatek/mt76_new/mt76x02_dma.h:56: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_enable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_dma_init':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:200: undefined reference to `mt76_dma_attach'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:206: undefined reference to `mt76_ac_to_hwq'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_enable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_disable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:225: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02.h:225: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02.h:225: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02.h:225: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_handler':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:286: undefined reference to `mt76_csa_finish'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_reset_state':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:428: undefined reference to `__mt76_sta_remove'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_disable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:225: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_enable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_watchdog_reset':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:516: undefined reference to `mt76_txq_schedule_all'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_enable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_disable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:225: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_dma_cleanup':
drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.c:327: undefined reference to `mt76_dma_cleanup'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_mmio.o: in function `mt76x02_irq_enable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_txrx.o: in function `mt76x02_tx_prepare_skb':
drivers/net/wireless/mediatek/mt76_new/mt76x02_txrx.c:156: undefined reference to `mt76_tx_status_skb_add'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_txrx.o: in function `mt76x02_tx':
drivers/net/wireless/mediatek/mt76_new/mt76x02_txrx.c:31: undefined reference to `mt76_tx'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_txrx.o: in function `mt76x02_queue_rx_skb':
drivers/net/wireless/mediatek/mt76_new/mt76x02_txrx.c:53: undefined reference to `mt76_rx'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_txrx.c:43: undefined reference to `mt76_mcu_rx_event'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_debugfs.o: in function `mt76x02_init_debugfs':
drivers/net/wireless/mediatek/mt76_new/mt76x02_debugfs.c:143: undefined reference to `mt76_register_debugfs'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_debugfs.c:147: undefined reference to `mt76_queues_read'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_debugfs.o: in function `read_txpower':
drivers/net/wireless/mediatek/mt76_new/mt76x02_debugfs.c:46: undefined reference to `mt76_seq_puts_array'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_dfs.o: in function `mt76x02_irq_disable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:225: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02_dfs.o: in function `mt76x02_irq_enable':
drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x02.h:220: undefined reference to `mt76_set_irq_mask'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/eeprom.o: in function `mt76x2_eeprom_load':
drivers/net/wireless/mediatek/mt76_new/mt76x2/eeprom.c:142: undefined reference to `mt76_eeprom_init'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/eeprom.o: in function `mt76x2_eeprom_init':
drivers/net/wireless/mediatek/mt76_new/mt76x2/eeprom.c:500: undefined reference to `mt76_eeprom_override'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/phy.o: in function `mt76x2_phy_update_channel_gain':
drivers/net/wireless/mediatek/mt76_new/mt76x2/phy.c:283: undefined reference to `mt76_get_min_avg_rssi'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.o: in function `mt76pci_remove':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.c:101: undefined reference to `mt76_unregister_device'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.o: in function `mt76pci_probe':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.c:54: undefined reference to `mt76_alloc_device'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.c:60: undefined reference to `mt76_mmio_init'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.c:86: undefined reference to `mt76_pci_disable_aspm'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.o: in function `mt76pci_remove':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci.c:103: undefined reference to `mt76_free_device'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o: in function `mt76x2_set_antenna':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.c:130: undefined reference to `mt76_set_stream_caps'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o: in function `mt76x2_set_channel':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.c:50: undefined reference to `mt76_set_channel'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.c:66: undefined reference to `mt76_txq_schedule_all'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o:(.rodata+0x80): undefined reference to `mt76_set_tim'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o:(.rodata+0xc8): undefined reference to `mt76_sw_scan'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o:(.rodata+0x120): undefined reference to `mt76_sta_state'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o:(.rodata+0x180): undefined reference to `mt76_get_survey'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o:(.rodata+0x208): undefined reference to `mt76_release_buffered_frames'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o:(.rodata+0x2b8): undefined reference to `mt76_get_txpower'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_main.o:(.rodata+0x2d8): undefined reference to `mt76_wake_tx_queue'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_init.o: in function `mt76x2_power_on':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_init.c:196: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_init.o: in function `mt76x2_register_device':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_init.c:286: undefined reference to `mt76_register_device'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_mcu.o: in function `mt76pci_load_firmware':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_mcu.c:138: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_mcu.o: in function `mt76pci_load_rom_patch':
drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_mcu.c:24: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x2/pci_mcu.c:67: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o: in function `mt76x0e_stop_hw':
drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.c:33: undefined reference to `__mt76_poll'
>> ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.c:40: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o: in function `mt76x0e_probe':
drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.c:166: undefined reference to `mt76_alloc_device'
>> ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.c:174: undefined reference to `mt76_mmio_init'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o: in function `mt76x0e_remove':
drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.c:211: undefined reference to `mt76_unregister_device'
>> ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.c:213: undefined reference to `mt76_free_device'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o:(.rodata+0x280): undefined reference to `mt76_set_tim'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o:(.rodata+0x2c8): undefined reference to `mt76_sw_scan'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o:(.rodata+0x320): undefined reference to `mt76_sta_state'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o:(.rodata+0x380): undefined reference to `mt76_get_survey'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o:(.rodata+0x408): undefined reference to `mt76_release_buffered_frames'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o:(.rodata+0x4b8): undefined reference to `mt76_get_txpower'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci.o:(.rodata+0x4d8): undefined reference to `mt76_wake_tx_queue'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci_mcu.o: in function `mt76x0e_load_firmware':
drivers/net/wireless/mediatek/mt76_new/mt76x0/pci_mcu.c:99: undefined reference to `__mt76_poll_msec'
>> ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci_mcu.c:60: undefined reference to `__mt76_poll'
>> ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/pci_mcu.c:99: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/init.o: in function `mt76x0_set_wlan_state':
drivers/net/wireless/mediatek/mt76_new/mt76x0/init.c:65: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/init.o: in function `mt76x0_mac_stop':
drivers/net/wireless/mediatek/mt76_new/mt76x0/init.c:173: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/init.c:191: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/init.o: in function `mt76x02_wait_for_wpdma':
drivers/net/wireless/mediatek/mt76_new/mt76x0/../mt76x02_dma.h:56: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/init.o: in function `mt76x02_wait_for_txrx_idle':
drivers/net/wireless/mediatek/mt76_new/mt76x0/../mt76x02.h:231: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/init.o: in function `mt76x0_register_device':
drivers/net/wireless/mediatek/mt76_new/mt76x0/init.c:268: undefined reference to `mt76_register_device'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/main.o: in function `mt76x0_set_channel':
drivers/net/wireless/mediatek/mt76_new/mt76x0/main.c:27: undefined reference to `mt76_set_channel'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/main.c:39: undefined reference to `mt76_txq_schedule_all'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/eeprom.o: in function `mt76x0_load_eeprom':
drivers/net/wireless/mediatek/mt76_new/mt76x0/eeprom.c:317: undefined reference to `mt76_eeprom_init'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/eeprom.o: in function `mt76x0_eeprom_init':
drivers/net/wireless/mediatek/mt76_new/mt76x0/eeprom.c:354: undefined reference to `mt76_eeprom_override'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.o: in function `mt76x0_rf_csr_rr':
drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.c:84: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.c:92: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.o: in function `mt76x0_rf_csr_wr':
drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.c:45: undefined reference to `__mt76_poll'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.o: in function `mt76x0_phy_tssi_dc_calibrate':
drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.c:534: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.o: in function `mt76x0_phy_update_channel_gain':
drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.c:1080: undefined reference to `mt76_get_min_avg_rssi'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.o: in function `mt76x0_phy_temp_sensor':
drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.c:1038: undefined reference to `__mt76_poll_msec'
ld: drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.o: in function `mt76x0_phy_tssi_adc_calibrate':
drivers/net/wireless/mediatek/mt76_new/mt76x0/phy.c:560: undefined reference to `__mt76_poll_msec'
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
[thierryreding:for-5.6/nouveau 138/138] htmldocs: include/linux/host1x.h:33: warning: Function parameter or member 'suspend' not described in 'host1x_client_ops'
by kbuild test robot
tree: https://github.com/thierryreding/linux for-5.6/nouveau
head: 3a536588f14e8684b2d6b6257dfa1d8f6f88becd
commit: 3a536588f14e8684b2d6b6257dfa1d8f6f88becd [138/138] WIP
reproduce: make htmldocs
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
include/linux/regulator/machine.h:196: warning: Function parameter or member 'max_uV_step' not described in 'regulation_constraints'
include/linux/regulator/driver.h:223: warning: Function parameter or member 'resume' not described in 'regulator_ops'
drivers/usb/typec/bus.c:1: warning: 'typec_altmode_register_driver' not found
drivers/usb/typec/bus.c:1: warning: 'typec_altmode_unregister_driver' not found
drivers/usb/typec/class.c:1: warning: 'typec_altmode_unregister_notifier' not found
drivers/usb/typec/class.c:1: warning: 'typec_altmode_register_notifier' not found
fs/posix_acl.c:647: warning: Function parameter or member 'inode' not described in 'posix_acl_update_mode'
fs/posix_acl.c:647: warning: Function parameter or member 'mode_p' not described in 'posix_acl_update_mode'
fs/posix_acl.c:647: warning: Function parameter or member 'acl' not described in 'posix_acl_update_mode'
sound/soc/soc-core.c:2509: warning: Function parameter or member 'legacy_dai_naming' not described in 'snd_soc_register_dai'
include/linux/i2c.h:337: warning: Function parameter or member 'init_irq' not described in 'i2c_client'
drivers/infiniband/core/umem_odp.c:167: warning: Function parameter or member 'ops' not described in 'ib_umem_odp_alloc_child'
drivers/infiniband/core/umem_odp.c:217: warning: Function parameter or member 'ops' not described in 'ib_umem_odp_get'
drivers/infiniband/ulp/iser/iscsi_iser.h:401: warning: Function parameter or member 'all_list' not described in 'iser_fr_desc'
drivers/infiniband/ulp/iser/iscsi_iser.h:415: warning: Function parameter or member 'all_list' not described in 'iser_fr_pool'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:148: warning: Function parameter or member 'rsvd0' not described in 'opa_vesw_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:148: warning: Function parameter or member 'rsvd1' not described in 'opa_vesw_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:148: warning: Function parameter or member 'rsvd2' not described in 'opa_vesw_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:148: warning: Function parameter or member 'rsvd3' not described in 'opa_vesw_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:148: warning: Function parameter or member 'rsvd4' not described in 'opa_vesw_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:205: warning: Function parameter or member 'rsvd0' not described in 'opa_per_veswport_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:205: warning: Function parameter or member 'rsvd1' not described in 'opa_per_veswport_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:205: warning: Function parameter or member 'rsvd2' not described in 'opa_per_veswport_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:205: warning: Function parameter or member 'rsvd3' not described in 'opa_per_veswport_info'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:263: warning: Function parameter or member 'tbl_entries' not described in 'opa_veswport_mactable'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:342: warning: Function parameter or member 'reserved' not described in 'opa_veswport_summary_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd0' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd1' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd2' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd3' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd4' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd5' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd6' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd7' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd8' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:394: warning: Function parameter or member 'rsvd9' not described in 'opa_veswport_error_counters'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:460: warning: Function parameter or member 'reserved' not described in 'opa_vnic_vema_mad'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:485: warning: Function parameter or member 'reserved' not described in 'opa_vnic_notice_attr'
drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h:500: warning: Function parameter or member 'reserved' not described in 'opa_vnic_vema_mad_trap'
include/linux/input/sparse-keymap.h:43: warning: Function parameter or member 'sw' not described in 'key_entry'
include/linux/skbuff.h:888: warning: Function parameter or member 'dev_scratch' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'list' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'ip_defrag_offset' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'skb_mstamp_ns' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member '__cloned_offset' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'head_frag' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member '__pkt_type_offset' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'encapsulation' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'encap_hdr_csum' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'csum_valid' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member '__pkt_vlan_present_offset' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'vlan_present' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'csum_complete_sw' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'csum_level' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'inner_protocol_type' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'remcsum_offload' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'sender_cpu' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'reserved_tailroom' not described in 'sk_buff'
include/linux/skbuff.h:888: warning: Function parameter or member 'inner_ipproto' not described in 'sk_buff'
include/net/sock.h:232: warning: Function parameter or member 'skc_addrpair' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_portpair' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_ipv6only' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_net_refcnt' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_v6_daddr' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_v6_rcv_saddr' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_cookie' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_listener' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_tw_dr' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_rcv_wnd' not described in 'sock_common'
include/net/sock.h:232: warning: Function parameter or member 'skc_tw_rcv_nxt' not described in 'sock_common'
include/net/sock.h:514: warning: Function parameter or member 'sk_rx_skb_cache' not described in 'sock'
include/net/sock.h:514: warning: Function parameter or member 'sk_wq_raw' not described in 'sock'
include/net/sock.h:514: warning: Function parameter or member 'tcp_rtx_queue' not described in 'sock'
include/net/sock.h:514: warning: Function parameter or member 'sk_tx_skb_cache' not described in 'sock'
include/net/sock.h:514: warning: Function parameter or member 'sk_route_forced_caps' not described in 'sock'
include/net/sock.h:514: warning: Function parameter or member 'sk_txtime_report_errors' not described in 'sock'
include/net/sock.h:514: warning: Function parameter or member 'sk_validate_xmit_skb' not described in 'sock'
include/net/sock.h:514: warning: Function parameter or member 'sk_bpf_storage' not described in 'sock'
include/net/sock.h:2454: warning: Function parameter or member 'tcp_rx_skb_cache_key' not described in 'DECLARE_STATIC_KEY_FALSE'
include/net/sock.h:2454: warning: Excess function parameter 'sk' description in 'DECLARE_STATIC_KEY_FALSE'
include/net/sock.h:2454: warning: Excess function parameter 'skb' description in 'DECLARE_STATIC_KEY_FALSE'
include/linux/netdevice.h:1779: warning: bad line: spinlock
include/linux/netdevice.h:2077: warning: Function parameter or member 'gso_partial_features' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'l3mdev_ops' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'xfrmdev_ops' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'tlsdev_ops' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'name_assign_type' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'ieee802154_ptr' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'mpls_ptr' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'xdp_prog' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'gro_flush_timeout' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'nf_hooks_ingress' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'qdisc_hash' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'xps_cpus_map' not described in 'net_device'
include/linux/netdevice.h:2077: warning: Function parameter or member 'xps_rxqs_map' not described in 'net_device'
include/linux/phylink.h:56: warning: Function parameter or member '__ETHTOOL_DECLARE_LINK_MODE_MASK(advertising' not described in 'phylink_link_state'
include/linux/phylink.h:56: warning: Function parameter or member '__ETHTOOL_DECLARE_LINK_MODE_MASK(lp_advertising' not described in 'phylink_link_state'
kernel/futex.c:1187: warning: Function parameter or member 'ret' not described in 'wait_for_owner_exiting'
include/drm/drm_modeset_helper_vtables.h:1052: warning: Function parameter or member 'prepare_writeback_job' not described in 'drm_connector_helper_funcs'
include/drm/drm_modeset_helper_vtables.h:1052: warning: Function parameter or member 'cleanup_writeback_job' not described in 'drm_connector_helper_funcs'
>> include/linux/host1x.h:33: warning: Function parameter or member 'suspend' not described in 'host1x_client_ops'
>> include/linux/host1x.h:33: warning: Function parameter or member 'resume' not described in 'host1x_client_ops'
>> include/linux/host1x.h:63: warning: Function parameter or member 'usecount' not described in 'host1x_client'
>> include/linux/host1x.h:63: warning: Function parameter or member 'lock' not described in 'host1x_client'
include/net/cfg80211.h:1189: warning: Function parameter or member 'txpwr' not described in 'station_parameters'
include/net/mac80211.h:4081: warning: Function parameter or member 'sta_set_txpwr' not described in 'ieee80211_ops'
include/net/mac80211.h:2036: warning: Function parameter or member 'txpwr' not described in 'ieee80211_sta'
include/linux/devfreq.h:181: warning: Function parameter or member 'last_status' not described in 'devfreq'
drivers/devfreq/devfreq.c:1703: warning: bad line: - Resource-managed devfreq_register_notifier()
drivers/devfreq/devfreq.c:1739: warning: bad line: - Resource-managed devfreq_unregister_notifier()
drivers/devfreq/devfreq-event.c:355: warning: Function parameter or member 'edev' not described in 'devfreq_event_remove_edev'
drivers/devfreq/devfreq-event.c:355: warning: Excess function parameter 'dev' description in 'devfreq_event_remove_edev'
Documentation/admin-guide/hw-vuln/tsx_async_abort.rst:142: WARNING: duplicate label virt_mechanism, other instance in Documentation/admin-guide/hw-vuln/mds.rst
Documentation/watch_queue.rst:166: WARNING: Inline literal start-string without end-string.
Documentation/watch_queue.rst:166: WARNING: Inline emphasis start-string without end-string.
Documentation/watch_queue.rst:166: WARNING: Inline emphasis start-string without end-string.
Documentation/watch_queue.rst:166: WARNING: Inline emphasis start-string without end-string.
Documentation/watch_queue.rst:243: WARNING: Inline literal start-string without end-string.
Documentation/watch_queue.rst:243: WARNING: Inline emphasis start-string without end-string.
Documentation/watch_queue.rst:242: WARNING: Inline emphasis start-string without end-string.
Documentation/admin-guide/xfs.rst:257: WARNING: Block quote ends without a blank line; unexpected unindent.
Documentation/x86/boot.rst:72: WARNING: Malformed table.
Text in column margin in table line 57.
vim +33 include/linux/host1x.h
53fa7f7204c97d Thierry Reding 2013-09-24 22
466749f13e33d8 Thierry Reding 2017-04-10 23 /**
466749f13e33d8 Thierry Reding 2017-04-10 24 * struct host1x_client_ops - host1x client operations
466749f13e33d8 Thierry Reding 2017-04-10 25 * @init: host1x client initialization code
466749f13e33d8 Thierry Reding 2017-04-10 26 * @exit: host1x client tear down code
466749f13e33d8 Thierry Reding 2017-04-10 27 */
53fa7f7204c97d Thierry Reding 2013-09-24 28 struct host1x_client_ops {
53fa7f7204c97d Thierry Reding 2013-09-24 29 int (*init)(struct host1x_client *client);
53fa7f7204c97d Thierry Reding 2013-09-24 30 int (*exit)(struct host1x_client *client);
3a536588f14e86 Thierry Reding 2019-11-29 31 int (*suspend)(struct host1x_client *client);
3a536588f14e86 Thierry Reding 2019-11-29 32 int (*resume)(struct host1x_client *client);
53fa7f7204c97d Thierry Reding 2013-09-24 @33 };
53fa7f7204c97d Thierry Reding 2013-09-24 34
466749f13e33d8 Thierry Reding 2017-04-10 35 /**
466749f13e33d8 Thierry Reding 2017-04-10 36 * struct host1x_client - host1x client structure
466749f13e33d8 Thierry Reding 2017-04-10 37 * @list: list node for the host1x client
466749f13e33d8 Thierry Reding 2017-04-10 38 * @parent: pointer to struct device representing the host1x controller
466749f13e33d8 Thierry Reding 2017-04-10 39 * @dev: pointer to struct device backing this host1x client
aacdf19849734d Thierry Reding 2019-02-08 40 * @group: IOMMU group that this client is a member of
466749f13e33d8 Thierry Reding 2017-04-10 41 * @ops: host1x client operations
466749f13e33d8 Thierry Reding 2017-04-10 42 * @class: host1x class represented by this client
466749f13e33d8 Thierry Reding 2017-04-10 43 * @channel: host1x channel associated with this client
466749f13e33d8 Thierry Reding 2017-04-10 44 * @syncpts: array of syncpoints requested for this client
466749f13e33d8 Thierry Reding 2017-04-10 45 * @num_syncpts: number of syncpoints requested for this client
466749f13e33d8 Thierry Reding 2017-04-10 46 */
53fa7f7204c97d Thierry Reding 2013-09-24 47 struct host1x_client {
53fa7f7204c97d Thierry Reding 2013-09-24 48 struct list_head list;
776dc38403676f Thierry Reding 2013-10-14 49 struct device *parent;
53fa7f7204c97d Thierry Reding 2013-09-24 50 struct device *dev;
aacdf19849734d Thierry Reding 2019-02-08 51 struct iommu_group *group;
53fa7f7204c97d Thierry Reding 2013-09-24 52
53fa7f7204c97d Thierry Reding 2013-09-24 53 const struct host1x_client_ops *ops;
53fa7f7204c97d Thierry Reding 2013-09-24 54
53fa7f7204c97d Thierry Reding 2013-09-24 55 enum host1x_class class;
53fa7f7204c97d Thierry Reding 2013-09-24 56 struct host1x_channel *channel;
53fa7f7204c97d Thierry Reding 2013-09-24 57
53fa7f7204c97d Thierry Reding 2013-09-24 58 struct host1x_syncpt **syncpts;
53fa7f7204c97d Thierry Reding 2013-09-24 59 unsigned int num_syncpts;
3a536588f14e86 Thierry Reding 2019-11-29 60
3a536588f14e86 Thierry Reding 2019-11-29 61 unsigned int usecount;
3a536588f14e86 Thierry Reding 2019-11-29 62 struct mutex lock;
53fa7f7204c97d Thierry Reding 2013-09-24 @63 };
53fa7f7204c97d Thierry Reding 2013-09-24 64
:::::: The code at line 33 was first introduced by commit
:::::: 53fa7f7204c97dc0c86b99ff8365ad6a7b2ebd78 drm/tegra: Introduce tegra_drm_client structure
:::::: TO: Thierry Reding <treding(a)nvidia.com>
:::::: CC: Thierry Reding <treding(a)nvidia.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months
Re: [EXTERNAL] Re: [PATCH v2] video: hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs.
by Wei Hu
> -----Original Message-----
> From: Wei Hu
> Sent: 2019年11月27日 19:26
> To: Rong Chen <rong.a.chen(a)intel.com>; kbuild test robot <lkp(a)intel.com>
> Cc: kbuild-all(a)lists.01.org
> Subject: RE: [kbuild-all] Re: [EXTERNAL] Re: [PATCH v2] video: hyperv: hyperv_fb:
> Use physical memory for fb on HyperV Gen 1 VMs.
>
>
>
> > -----Original Message-----
> > From: Rong Chen <rong.a.chen(a)intel.com>
> > Sent: 2019年11月27日 16:29
> > To: Wei Hu <weh(a)microsoft.com>; kbuild test robot <lkp(a)intel.com>
> > Cc: kbuild-all(a)lists.01.org
> > Subject: Re: [kbuild-all] Re: [EXTERNAL] Re: [PATCH v2] video: hyperv:
> hyperv_fb:
> > Use physical memory for fb on HyperV Gen 1 VMs.
> >
> >
> >
> > On 11/27/19 3:57 PM, Wei Hu wrote:
> > >
> > >> -----Original Message-----
> > >> From: Rong Chen <rong.a.chen(a)intel.com>
> > >> Sent: 2019年11月27日 15:40
> > >> To: Wei Hu <weh(a)microsoft.com>; kbuild test robot <lkp(a)intel.com>
> > >> Cc: kbuild-all(a)lists.01.org
> > >> Subject: Re: [kbuild-all] Re: [EXTERNAL] Re: [PATCH v2] video: hyperv:
> > hyperv_fb:
> > >> Use physical memory for fb on HyperV Gen 1 VMs.
> > >>
> > >>
> > >>
> > >> On 11/26/19 1:10 PM, Wei Hu wrote:
> > >>> Hello
> > >>>
> > >>>> Hi Wei,
> > >>>>
> > >>>> I love your patch! Yet something to improve:
> > >>>>
> > >>>> [auto build test ERROR on next-20191122] [cannot apply to linus/master
> > >> v5.4-
> > >>>> rc8 v5.4-rc7 v5.4-rc6 v5.4] [if your patch is applied to the wrong git tree,
> > >> please
> > >>>> drop us a note to help improve the system. BTW, we also suggest to use
> '--
> > >> base'
> > >>>> option to specify the base tree in git format-patch, please see
> > >>>>
> > >>
> >
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fstackov
> > >>
> > erflow.com%2Fa%2F37406982&data=02%7C01%7Cweh%40microsoft.co
> > >>
> > m%7C0a066e2f4f2540c2a06808d771a89108%7C72f988bf86f141af91ab2d7cd
> > >>
> > 011db47%7C1%7C0%7C637102843751160438&sdata=CdmaSvX3I3TaGks
> > >>>> ve9R7N0Z3Sx1ln5Z3CYHuL5thLrI%3D&reserved=0]
> > >>>>
> > >>>> url:
> > >>>>
> > >>
> > https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.
> > >>>> com%2F0day-ci%2Flinux%2Fcommits%2FWei-Hu%2Fvideo-hyperv-
> > >> hyperv_fb-
> > >>>> Use-physical-memory-for-fb-on-HyperV-Gen-1-VMs%2F20191124-
> > >>>>
> > >>
> > 163533&data=02%7C01%7Cweh%40microsoft.com%7C0a066e2f4f2540c
> > >>>>
> > 2a06808d771a89108%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7
> > >>>>
> > >>
> > C637102843751160438&sdata=eDTZuM3ZJmVw6FXgcl9adf9qH9wMboNr
> > >>>> aFC1KTjb6YE%3D&reserved=0
> > >>>> base: b9d3d01405061bb42358fe53f824e894a1922ced
> > >>>> config: i386-randconfig-b003-20191125 (attached as .config)
> > >>>> compiler: gcc-7 (Debian 7.4.0-14) 7.4.0
> > >>>> reproduce:
> > >>>> # save the attached .config to linux build tree
> > >>>> make ARCH=i386
> > >>>>
> > >>>> If you fix the issue, kindly add following tag
> > >>>> Reported-by: kbuild test robot <lkp(a)intel.com>
> > >>>>
> > ...
> >
> > >> Hi Wei,
> > >>
> > >> We can reproduce the issue with attached config file, CONFIG_CMA is not
> > >> set in the config,
> > >> I think it maybe the root cause and it's a kconfig dependency problem.
> > >>
> > >> Best Regards,
> > >> Rong Chen
> > > Thanks Rong. Would you let me know if you hit this only when building 32 bit
> > > kernel, or when building both 32 and 64 bit?
> > >
> > > The .config file you sent doesn't have CONFIG_CMA set. However, when I
> was
> > > building, the build process asked me about the CMA configurations. Hence,
> in
> > > my .config file have following lines:
> > >
> > > CONFIG_CMA=y
> > > CONFIG_DMA_CMA=y
> > > CONFIG_HAVE_DMA_CONTIGUOUS=y
> > >
> > > Why first two setting are no in your .config file?
> >
> > Hi Wei,
> >
> > The config was generated by randconfig, it means the current config
> > dependency allows to not enable CONFIG_CMA.
> >
> Ok. I will add "select CMA if HAVE_DMA_CONTIGUOUS" in the patch.
>
Hello,
I was not able to reproduce this error with the .config file sent to me. Even with
CONFIG_CMA not set, I can still successfully build the do 'make ARCH=i386' with
out any error. Please provide the instructions to reproduce.
Thanks,
Wei
1 year, 2 months
[rgushchin:kmemcache_release 102/337] mm/kasan/common.c:797:2: error: implicit declaration of function 'flush_cache_vmap'; did you mean 'flush_rcu_work'?
by kbuild test robot
tree: https://github.com/rgushchin/linux.git kmemcache_release
head: 352b2f4a08dea38bad70fa12e7f02a7a4c1f7027
commit: 3996997442851d3b64a7c0702468830c66ea762b [102/337] x86/kasan: support KASAN_VMALLOC
config: x86_64-randconfig-f002-20191129 (attached as .config)
compiler: gcc-7 (Debian 7.5.0-1) 7.5.0
reproduce:
git checkout 3996997442851d3b64a7c0702468830c66ea762b
# save the attached .config to linux build tree
make ARCH=x86_64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
mm/kasan/common.c: In function 'kasan_populate_vmalloc':
>> mm/kasan/common.c:797:2: error: implicit declaration of function 'flush_cache_vmap'; did you mean 'flush_rcu_work'? [-Werror=implicit-function-declaration]
flush_cache_vmap(shadow_start, shadow_end);
^~~~~~~~~~~~~~~~
flush_rcu_work
cc1: some warnings being treated as errors
vim +797 mm/kasan/common.c
556e5823af0edd Daniel Axtens 2019-11-26 779
556e5823af0edd Daniel Axtens 2019-11-26 780 int kasan_populate_vmalloc(unsigned long requested_size, struct vm_struct *area)
556e5823af0edd Daniel Axtens 2019-11-26 781 {
556e5823af0edd Daniel Axtens 2019-11-26 782 unsigned long shadow_start, shadow_end;
556e5823af0edd Daniel Axtens 2019-11-26 783 int ret;
556e5823af0edd Daniel Axtens 2019-11-26 784
556e5823af0edd Daniel Axtens 2019-11-26 785 shadow_start = (unsigned long)kasan_mem_to_shadow(area->addr);
556e5823af0edd Daniel Axtens 2019-11-26 786 shadow_start = ALIGN_DOWN(shadow_start, PAGE_SIZE);
556e5823af0edd Daniel Axtens 2019-11-26 787 shadow_end = (unsigned long)kasan_mem_to_shadow(area->addr +
556e5823af0edd Daniel Axtens 2019-11-26 788 area->size);
556e5823af0edd Daniel Axtens 2019-11-26 789 shadow_end = ALIGN(shadow_end, PAGE_SIZE);
556e5823af0edd Daniel Axtens 2019-11-26 790
556e5823af0edd Daniel Axtens 2019-11-26 791 ret = apply_to_page_range(&init_mm, shadow_start,
556e5823af0edd Daniel Axtens 2019-11-26 792 shadow_end - shadow_start,
556e5823af0edd Daniel Axtens 2019-11-26 793 kasan_populate_vmalloc_pte, NULL);
556e5823af0edd Daniel Axtens 2019-11-26 794 if (ret)
556e5823af0edd Daniel Axtens 2019-11-26 795 return ret;
556e5823af0edd Daniel Axtens 2019-11-26 796
00367a9369ea8a Daniel Axtens 2019-11-26 @797 flush_cache_vmap(shadow_start, shadow_end);
00367a9369ea8a Daniel Axtens 2019-11-26 798
556e5823af0edd Daniel Axtens 2019-11-26 799 kasan_unpoison_shadow(area->addr, requested_size);
556e5823af0edd Daniel Axtens 2019-11-26 800
556e5823af0edd Daniel Axtens 2019-11-26 801 area->flags |= VM_KASAN;
556e5823af0edd Daniel Axtens 2019-11-26 802
556e5823af0edd Daniel Axtens 2019-11-26 803 /*
556e5823af0edd Daniel Axtens 2019-11-26 804 * We need to be careful about inter-cpu effects here. Consider:
556e5823af0edd Daniel Axtens 2019-11-26 805 *
556e5823af0edd Daniel Axtens 2019-11-26 806 * CPU#0 CPU#1
556e5823af0edd Daniel Axtens 2019-11-26 807 * WRITE_ONCE(p, vmalloc(100)); while (x = READ_ONCE(p)) ;
556e5823af0edd Daniel Axtens 2019-11-26 808 * p[99] = 1;
556e5823af0edd Daniel Axtens 2019-11-26 809 *
556e5823af0edd Daniel Axtens 2019-11-26 810 * With compiler instrumentation, that ends up looking like this:
556e5823af0edd Daniel Axtens 2019-11-26 811 *
556e5823af0edd Daniel Axtens 2019-11-26 812 * CPU#0 CPU#1
556e5823af0edd Daniel Axtens 2019-11-26 813 * // vmalloc() allocates memory
556e5823af0edd Daniel Axtens 2019-11-26 814 * // let a = area->addr
556e5823af0edd Daniel Axtens 2019-11-26 815 * // we reach kasan_populate_vmalloc
556e5823af0edd Daniel Axtens 2019-11-26 816 * // and call kasan_unpoison_shadow:
556e5823af0edd Daniel Axtens 2019-11-26 817 * STORE shadow(a), unpoison_val
556e5823af0edd Daniel Axtens 2019-11-26 818 * ...
556e5823af0edd Daniel Axtens 2019-11-26 819 * STORE shadow(a+99), unpoison_val x = LOAD p
556e5823af0edd Daniel Axtens 2019-11-26 820 * // rest of vmalloc process <data dependency>
556e5823af0edd Daniel Axtens 2019-11-26 821 * STORE p, a LOAD shadow(x+99)
556e5823af0edd Daniel Axtens 2019-11-26 822 *
556e5823af0edd Daniel Axtens 2019-11-26 823 * If there is no barrier between the end of unpoisioning the shadow
556e5823af0edd Daniel Axtens 2019-11-26 824 * and the store of the result to p, the stores could be committed
556e5823af0edd Daniel Axtens 2019-11-26 825 * in a different order by CPU#0, and CPU#1 could erroneously observe
556e5823af0edd Daniel Axtens 2019-11-26 826 * poison in the shadow.
556e5823af0edd Daniel Axtens 2019-11-26 827 *
556e5823af0edd Daniel Axtens 2019-11-26 828 * We need some sort of barrier between the stores.
556e5823af0edd Daniel Axtens 2019-11-26 829 *
556e5823af0edd Daniel Axtens 2019-11-26 830 * In the vmalloc() case, this is provided by a smp_wmb() in
556e5823af0edd Daniel Axtens 2019-11-26 831 * clear_vm_uninitialized_flag(). In the per-cpu allocator and in
556e5823af0edd Daniel Axtens 2019-11-26 832 * get_vm_area() and friends, the caller gets shadow allocated but
556e5823af0edd Daniel Axtens 2019-11-26 833 * doesn't have any pages mapped into the virtual address space that
556e5823af0edd Daniel Axtens 2019-11-26 834 * has been reserved. Mapping those pages in will involve taking and
556e5823af0edd Daniel Axtens 2019-11-26 835 * releasing a page-table lock, which will provide the barrier.
556e5823af0edd Daniel Axtens 2019-11-26 836 */
556e5823af0edd Daniel Axtens 2019-11-26 837
556e5823af0edd Daniel Axtens 2019-11-26 838 return 0;
556e5823af0edd Daniel Axtens 2019-11-26 839 }
556e5823af0edd Daniel Axtens 2019-11-26 840
:::::: The code at line 797 was first introduced by commit
:::::: 00367a9369ea8a6812de76f67fd125e9252dfe9c update to "kasan: support backing vmalloc space with real shadow memory"
:::::: TO: Daniel Axtens <dja(a)axtens.net>
:::::: CC: Johannes Weiner <hannes(a)cmpxchg.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation
1 year, 2 months