[PATCH v2 1/1] fbdev/core: Disable console-lock warnings when fb.lockless_register_fb is set

kbuild test robot lkp at intel.com
Wed Jul 18 19:53:46 UTC 2018


Hi Thomas,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on sof-driver-fuweitax/master]
[also build test ERROR on v4.18-rc5 next-20180718]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Thomas-Zimmermann/fbdev-core-Disable-console-lock-warnings-when-fb-lockless_register_fb-is-set/20180719-023522
base:   https://github.com/fuweitax/linux master
config: i386-randconfig-s1-07181402 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   drivers/video/fbdev/core/fbmem.c: In function 'do_register_framebuffer':
>> drivers/video/fbdev/core/fbmem.c:1642:43: error: 'ignore_console_lock_warning' undeclared (first use in this function)
     bool saved_ignore_console_lock_warning = ignore_console_lock_warning;
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/video/fbdev/core/fbmem.c:1642:43: note: each undeclared identifier is reported only once for each function it appears in

vim +/ignore_console_lock_warning +1642 drivers/video/fbdev/core/fbmem.c

  1631	
  1632	static bool lockless_register_fb;
  1633	module_param_named_unsafe(lockless_register_fb, lockless_register_fb, bool, 0400);
  1634	MODULE_PARM_DESC(lockless_register_fb,
  1635		"Lockless framebuffer registration for debugging [default=off]");
  1636	
  1637	static int do_register_framebuffer(struct fb_info *fb_info)
  1638	{
  1639		int i, ret;
  1640		struct fb_event event;
  1641		struct fb_videomode mode;
> 1642		bool saved_ignore_console_lock_warning = ignore_console_lock_warning;
  1643	
  1644		if (fb_check_foreignness(fb_info))
  1645			return -ENOSYS;
  1646	
  1647		ret = do_remove_conflicting_framebuffers(fb_info->apertures,
  1648							 fb_info->fix.id,
  1649							 fb_is_primary_device(fb_info));
  1650		if (ret)
  1651			return ret;
  1652	
  1653		if (num_registered_fb == FB_MAX)
  1654			return -ENXIO;
  1655	
  1656		num_registered_fb++;
  1657		for (i = 0 ; i < FB_MAX; i++)
  1658			if (!registered_fb[i])
  1659				break;
  1660		fb_info->node = i;
  1661		atomic_set(&fb_info->count, 1);
  1662		mutex_init(&fb_info->lock);
  1663		mutex_init(&fb_info->mm_lock);
  1664	
  1665		fb_info->dev = device_create(fb_class, fb_info->device,
  1666					     MKDEV(FB_MAJOR, i), NULL, "fb%d", i);
  1667		if (IS_ERR(fb_info->dev)) {
  1668			/* Not fatal */
  1669			printk(KERN_WARNING "Unable to create device for framebuffer %d; errno = %ld\n", i, PTR_ERR(fb_info->dev));
  1670			fb_info->dev = NULL;
  1671		} else
  1672			fb_init_device(fb_info);
  1673	
  1674		if (fb_info->pixmap.addr == NULL) {
  1675			fb_info->pixmap.addr = kmalloc(FBPIXMAPSIZE, GFP_KERNEL);
  1676			if (fb_info->pixmap.addr) {
  1677				fb_info->pixmap.size = FBPIXMAPSIZE;
  1678				fb_info->pixmap.buf_align = 1;
  1679				fb_info->pixmap.scan_align = 1;
  1680				fb_info->pixmap.access_align = 32;
  1681				fb_info->pixmap.flags = FB_PIXMAP_DEFAULT;
  1682			}
  1683		}	
  1684		fb_info->pixmap.offset = 0;
  1685	
  1686		if (!fb_info->pixmap.blit_x)
  1687			fb_info->pixmap.blit_x = ~(u32)0;
  1688	
  1689		if (!fb_info->pixmap.blit_y)
  1690			fb_info->pixmap.blit_y = ~(u32)0;
  1691	
  1692		if (!fb_info->modelist.prev || !fb_info->modelist.next)
  1693			INIT_LIST_HEAD(&fb_info->modelist);
  1694	
  1695		if (fb_info->skip_vt_switch)
  1696			pm_vt_switch_required(fb_info->dev, false);
  1697		else
  1698			pm_vt_switch_required(fb_info->dev, true);
  1699	
  1700		fb_var_to_videomode(&mode, &fb_info->var);
  1701		fb_add_videomode(&mode, &fb_info->modelist);
  1702		registered_fb[i] = fb_info;
  1703	
  1704		event.info = fb_info;
  1705		if (!lockless_register_fb)
  1706			console_lock();
  1707		else
  1708			ignore_console_lock_warning = true;
  1709		if (!lock_fb_info(fb_info)) {
  1710			ret = -ENODEV;
  1711			goto unlock_console;
  1712		}
  1713		ret = 0;
  1714	
  1715		fb_notifier_call_chain(FB_EVENT_FB_REGISTERED, &event);
  1716		unlock_fb_info(fb_info);
  1717	unlock_console:
  1718		if (!lockless_register_fb)
  1719			console_unlock();
  1720		else
  1721			ignore_console_lock_warning =
  1722				saved_ignore_console_lock_warning;
  1723		return ret;
  1724	}
  1725	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 24373 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20180719/ef4fcf82/attachment-0001.gz>


More information about the dri-devel mailing list