All of lore.kernel.org
 help / color / mirror / Atom feed
* [drm-misc:drm-misc-next 1/2] drivers/video/fbdev/core/fbmem.c:1610:0-1: preceding lock on line 1598
@ 2022-05-17  0:29 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2022-05-17  0:29 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 8850 bytes --]

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Javier Martinez Canillas <javierm@redhat.com>
CC: Daniel Vetter <daniel.vetter@ffwll.ch>

tree:   git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
head:   a9ad5822366c5065e6a65fe5ff5090295ba98986
commit: 3367aa7d74d240261de2543ddb35531ccad9d884 [1/2] fbdev: Restart conflicting fb removal loop when unregistering devices
:::::: branch date: 10 hours ago
:::::: commit date: 4 days ago
config: openrisc-randconfig-c004-20220516 (https://download.01.org/0day-ci/archive/20220517/202205170855.Q26EPT2e-lkp(a)intel.com/config)
compiler: or1k-linux-gcc (GCC) 11.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Julia Lawall <julia.lawall@lip6.fr>


cocci warnings: (new ones prefixed by >>)
>> drivers/video/fbdev/core/fbmem.c:1610:0-1: preceding lock on line 1598

vim +1610 drivers/video/fbdev/core/fbmem.c

712f3147aee0fb drivers/video/fbmem.c            Linus Torvalds           2011-05-13  1551  
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1552  #define VGA_FB_PHYS 0xA0000
deb00d2785bedd drivers/video/fbdev/core/fbmem.c Daniel Vetter            2019-05-28  1553  static void do_remove_conflicting_framebuffers(struct apertures_struct *a,
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1554  					       const char *name, bool primary)
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1555  {
deb00d2785bedd drivers/video/fbdev/core/fbmem.c Daniel Vetter            2019-05-28  1556  	int i;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1557  
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1558  restart_removal:
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1559  	/* check all firmware fbs and kick off if the base addr overlaps */
10ac86884b4d76 drivers/video/fbdev/core/fbmem.c Yisheng Xie              2018-07-24  1560  	for_each_registered_fb(i) {
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1561  		struct apertures_struct *gen_aper;
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1562  		struct device *device;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1563  
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1564  		if (!(registered_fb[i]->flags & FBINFO_MISC_FIRMWARE))
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1565  			continue;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1566  
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1567  		gen_aper = registered_fb[i]->apertures;
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1568  		device = registered_fb[i]->device;
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1569  		if (fb_do_apertures_overlap(gen_aper, a) ||
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1570  			(primary && gen_aper && gen_aper->count &&
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1571  			 gen_aper->ranges[0].base == VGA_FB_PHYS)) {
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1572  
fbc42d455a2982 drivers/video/fbdev/core/fbmem.c Michał Mirosław          2018-09-01  1573  			printk(KERN_INFO "fb%d: switching to %s from %s\n",
fbc42d455a2982 drivers/video/fbdev/core/fbmem.c Michał Mirosław          2018-09-01  1574  			       i, name, registered_fb[i]->fix.id);
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1575  
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1576  			/*
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1577  			 * If we kick-out a firmware driver, we also want to remove
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1578  			 * the underlying platform device, such as simple-framebuffer,
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1579  			 * VESA, EFI, etc. A native driver will then be able to
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1580  			 * allocate the memory range.
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1581  			 *
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1582  			 * If it's not a platform device, at least print a warning. A
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1583  			 * fix would add code to remove the device from the system. For
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1584  			 * framebuffers without any Linux device, print a warning as
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1585  			 * well.
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1586  			 */
0f525289ff0dde drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-04  1587  			if (!device) {
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1588  				pr_warn("fb%d: no device set\n", i);
0f525289ff0dde drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-04  1589  				do_unregister_framebuffer(registered_fb[i]);
0f525289ff0dde drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-04  1590  			} else if (dev_is_platform(device)) {
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1591  				/*
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1592  				 * Drop the lock because if the device is unregistered, its
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1593  				 * driver will call to unregister_framebuffer(), that takes
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1594  				 * this lock.
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1595  				 */
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1596  				mutex_unlock(&registration_lock);
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1597  				platform_device_unregister(to_platform_device(device));
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11 @1598  				mutex_lock(&registration_lock);
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1599  			} else {
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1600  				pr_warn("fb%d: cannot remove device\n", i);
deb00d2785bedd drivers/video/fbdev/core/fbmem.c Daniel Vetter            2019-05-28  1601  				do_unregister_framebuffer(registered_fb[i]);
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1602  			}
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1603  			/*
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1604  			 * Restart the removal loop now that the device has been
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1605  			 * unregistered and its associated framebuffer gone.
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1606  			 */
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1607  			goto restart_removal;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1608  		}
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1609  	}
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25 @1610  }
^1da177e4c3f41 drivers/video/fbmem.c            Linus Torvalds           2005-04-16  1611  

:::::: The code at line 1610 was first introduced by commit
:::::: 27599aacbaefcbf2af7b06b0029459bbf682000d fbdev: Hot-unplug firmware fb devices on forced removal

:::::: TO: Thomas Zimmermann <tzimmermann@suse.de>
:::::: CC: Thomas Zimmermann <tzimmermann@suse.de>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [drm-misc:drm-misc-next 1/2] drivers/video/fbdev/core/fbmem.c:1610:0-1: preceding lock on line 1598
@ 2022-06-09  5:14 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2022-06-09  5:14 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 8848 bytes --]

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Javier Martinez Canillas <javierm@redhat.com>
CC: Daniel Vetter <daniel.vetter@ffwll.ch>

tree:   git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
head:   6aed665f9d8368ae1e962f44339150884bb47f5b
commit: 3367aa7d74d240261de2543ddb35531ccad9d884 [1/2] fbdev: Restart conflicting fb removal loop when unregistering devices
:::::: branch date: 8 hours ago
:::::: commit date: 4 weeks ago
config: m68k-randconfig-c003-20220608 (https://download.01.org/0day-ci/archive/20220609/202206091207.VzTUlukg-lkp(a)intel.com/config)
compiler: m68k-linux-gcc (GCC) 11.3.0

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Julia Lawall <julia.lawall@lip6.fr>


cocci warnings: (new ones prefixed by >>)
>> drivers/video/fbdev/core/fbmem.c:1610:0-1: preceding lock on line 1598

vim +1610 drivers/video/fbdev/core/fbmem.c

712f3147aee0fb drivers/video/fbmem.c            Linus Torvalds           2011-05-13  1551  
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1552  #define VGA_FB_PHYS 0xA0000
deb00d2785bedd drivers/video/fbdev/core/fbmem.c Daniel Vetter            2019-05-28  1553  static void do_remove_conflicting_framebuffers(struct apertures_struct *a,
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1554  					       const char *name, bool primary)
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1555  {
deb00d2785bedd drivers/video/fbdev/core/fbmem.c Daniel Vetter            2019-05-28  1556  	int i;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1557  
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1558  restart_removal:
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1559  	/* check all firmware fbs and kick off if the base addr overlaps */
10ac86884b4d76 drivers/video/fbdev/core/fbmem.c Yisheng Xie              2018-07-24  1560  	for_each_registered_fb(i) {
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1561  		struct apertures_struct *gen_aper;
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1562  		struct device *device;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1563  
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1564  		if (!(registered_fb[i]->flags & FBINFO_MISC_FIRMWARE))
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1565  			continue;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1566  
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1567  		gen_aper = registered_fb[i]->apertures;
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1568  		device = registered_fb[i]->device;
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1569  		if (fb_do_apertures_overlap(gen_aper, a) ||
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1570  			(primary && gen_aper && gen_aper->count &&
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1571  			 gen_aper->ranges[0].base == VGA_FB_PHYS)) {
3b9676e7ac6eff drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1572  
fbc42d455a2982 drivers/video/fbdev/core/fbmem.c Michał Mirosław          2018-09-01  1573  			printk(KERN_INFO "fb%d: switching to %s from %s\n",
fbc42d455a2982 drivers/video/fbdev/core/fbmem.c Michał Mirosław          2018-09-01  1574  			       i, name, registered_fb[i]->fix.id);
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1575  
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1576  			/*
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1577  			 * If we kick-out a firmware driver, we also want to remove
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1578  			 * the underlying platform device, such as simple-framebuffer,
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1579  			 * VESA, EFI, etc. A native driver will then be able to
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1580  			 * allocate the memory range.
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1581  			 *
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1582  			 * If it's not a platform device, at least print a warning. A
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1583  			 * fix would add code to remove the device from the system. For
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1584  			 * framebuffers without any Linux device, print a warning as
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1585  			 * well.
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1586  			 */
0f525289ff0dde drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-04  1587  			if (!device) {
b76ecff8317eed drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-19  1588  				pr_warn("fb%d: no device set\n", i);
0f525289ff0dde drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-04  1589  				do_unregister_framebuffer(registered_fb[i]);
0f525289ff0dde drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-04-04  1590  			} else if (dev_is_platform(device)) {
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1591  				/*
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1592  				 * Drop the lock because if the device is unregistered, its
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1593  				 * driver will call to unregister_framebuffer(), that takes
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1594  				 * this lock.
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1595  				 */
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1596  				mutex_unlock(&registration_lock);
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1597  				platform_device_unregister(to_platform_device(device));
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11 @1598  				mutex_lock(&registration_lock);
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1599  			} else {
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25  1600  				pr_warn("fb%d: cannot remove device\n", i);
deb00d2785bedd drivers/video/fbdev/core/fbmem.c Daniel Vetter            2019-05-28  1601  				do_unregister_framebuffer(registered_fb[i]);
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1602  			}
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1603  			/*
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1604  			 * Restart the removal loop now that the device has been
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1605  			 * unregistered and its associated framebuffer gone.
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1606  			 */
3367aa7d74d240 drivers/video/fbdev/core/fbmem.c Javier Martinez Canillas 2022-05-11  1607  			goto restart_removal;
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1608  		}
06415c564fb985 drivers/video/fbmem.c            Marcin Slusarz           2010-05-16  1609  	}
27599aacbaefcb drivers/video/fbdev/core/fbmem.c Thomas Zimmermann        2022-01-25 @1610  }
^1da177e4c3f41 drivers/video/fbmem.c            Linus Torvalds           2005-04-16  1611  

:::::: The code at line 1610 was first introduced by commit
:::::: 27599aacbaefcbf2af7b06b0029459bbf682000d fbdev: Hot-unplug firmware fb devices on forced removal

:::::: TO: Thomas Zimmermann <tzimmermann@suse.de>
:::::: CC: Thomas Zimmermann <tzimmermann@suse.de>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-06-09  5:14 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-17  0:29 [drm-misc:drm-misc-next 1/2] drivers/video/fbdev/core/fbmem.c:1610:0-1: preceding lock on line 1598 kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2022-06-09  5:14 kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.