All of lore.kernel.org
 help / color / mirror / Atom feed
* [jimc:dd-drm-next 19/20] drivers/gpu/drm/drm_drv.c:886:15: error: implicit declaration of function 'dynamic_debug_register_tracer'
@ 2021-10-14  4:51 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-10-14  4:51 UTC (permalink / raw)
  To: kbuild-all

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

tree:   https://github.com/jimc/linux.git dd-drm-next
head:   2eec9300d730ad634b967a853579f0b5dffecc01
commit: 25a6802d94cd0a8eb61882bcbf6acdec479a965b [19/20] reg-in-drmdrv
config: openrisc-buildonly-randconfig-r003-20211013 (attached as .config)
compiler: or1k-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/jimc/linux/commit/25a6802d94cd0a8eb61882bcbf6acdec479a965b
        git remote add jimc https://github.com/jimc/linux.git
        git fetch --no-tags jimc dd-drm-next
        git checkout 25a6802d94cd0a8eb61882bcbf6acdec479a965b
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=openrisc 

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

All errors (new ones prefixed by >>):

   drivers/gpu/drm/drm_drv.c: In function 'drm_dev_register':
>> drivers/gpu/drm/drm_drv.c:886:15: error: implicit declaration of function 'dynamic_debug_register_tracer' [-Werror=implicit-function-declaration]
     886 |         ret = dynamic_debug_register_tracer(THIS_MODULE, drm_trace_printvaf);
         |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/drm_drv.c: In function 'drm_dev_unregister':
>> drivers/gpu/drm/drm_drv.c:957:9: error: implicit declaration of function 'dynamic_debug_unregister_tracer' [-Werror=implicit-function-declaration]
     957 |         dynamic_debug_unregister_tracer(THIS_MODULE, drm_trace_printvaf);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/dynamic_debug_register_tracer +886 drivers/gpu/drm/drm_drv.c

   840	
   841	/**
   842	 * drm_dev_register - Register DRM device
   843	 * @dev: Device to register
   844	 * @flags: Flags passed to the driver's .load() function
   845	 *
   846	 * Register the DRM device @dev with the system, advertise device to user-space
   847	 * and start normal device operation. @dev must be initialized via drm_dev_init()
   848	 * previously.
   849	 *
   850	 * Never call this twice on any device!
   851	 *
   852	 * NOTE: To ensure backward compatibility with existing drivers method this
   853	 * function calls the &drm_driver.load method after registering the device
   854	 * nodes, creating race conditions. Usage of the &drm_driver.load methods is
   855	 * therefore deprecated, drivers must perform all initialization before calling
   856	 * drm_dev_register().
   857	 *
   858	 * RETURNS:
   859	 * 0 on success, negative error code on failure.
   860	 */
   861	int drm_dev_register(struct drm_device *dev, unsigned long flags)
   862	{
   863		const struct drm_driver *driver = dev->driver;
   864		int ret;
   865	
   866		if (!driver->load)
   867			drm_mode_config_validate(dev);
   868	
   869		WARN_ON(!dev->managed.final_kfree);
   870	
   871		if (drm_dev_needs_global_mutex(dev))
   872			mutex_lock(&drm_global_mutex);
   873	
   874		ret = drm_minor_register(dev, DRM_MINOR_RENDER);
   875		if (ret)
   876			goto err_minors;
   877	
   878		ret = drm_minor_register(dev, DRM_MINOR_PRIMARY);
   879		if (ret)
   880			goto err_minors;
   881	
   882		ret = create_compat_control_link(dev);
   883		if (ret)
   884			goto err_minors;
   885	
 > 886		ret = dynamic_debug_register_tracer(THIS_MODULE, drm_trace_printvaf);
   887		if (ret)
   888			goto err_dyndbg;
   889	
   890		dev->registered = true;
   891	
   892		if (dev->driver->load) {
   893			ret = dev->driver->load(dev, flags);
   894			if (ret)
   895				goto err_minors;
   896		}
   897	
   898		if (drm_core_check_feature(dev, DRIVER_MODESET))
   899			drm_modeset_register_all(dev);
   900	
   901		DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
   902			 driver->name, driver->major, driver->minor,
   903			 driver->patchlevel, driver->date,
   904			 dev->dev ? dev_name(dev->dev) : "virtual device",
   905			 dev->primary->index);
   906	
   907		goto out_unlock;
   908	
   909	err_dyndbg:
   910		dynamic_debug_register_tracer(THIS_MODULE, drm_trace_printvaf);
   911	err_minors:
   912		remove_compat_control_link(dev);
   913		drm_minor_unregister(dev, DRM_MINOR_PRIMARY);
   914		drm_minor_unregister(dev, DRM_MINOR_RENDER);
   915	out_unlock:
   916		if (drm_dev_needs_global_mutex(dev))
   917			mutex_unlock(&drm_global_mutex);
   918		return ret;
   919	}
   920	EXPORT_SYMBOL(drm_dev_register);
   921	
   922	/**
   923	 * drm_dev_unregister - Unregister DRM device
   924	 * @dev: Device to unregister
   925	 *
   926	 * Unregister the DRM device from the system. This does the reverse of
   927	 * drm_dev_register() but does not deallocate the device. The caller must call
   928	 * drm_dev_put() to drop their final reference.
   929	 *
   930	 * A special form of unregistering for hotpluggable devices is drm_dev_unplug(),
   931	 * which can be called while there are still open users of @dev.
   932	 *
   933	 * This should be called first in the device teardown code to make sure
   934	 * userspace can't access the device instance any more.
   935	 */
   936	void drm_dev_unregister(struct drm_device *dev)
   937	{
   938		if (drm_core_check_feature(dev, DRIVER_LEGACY))
   939			drm_lastclose(dev);
   940	
   941		dev->registered = false;
   942	
   943		drm_client_dev_unregister(dev);
   944	
   945		if (drm_core_check_feature(dev, DRIVER_MODESET))
   946			drm_modeset_unregister_all(dev);
   947	
   948		if (dev->driver->unload)
   949			dev->driver->unload(dev);
   950	
   951		drm_legacy_pci_agp_destroy(dev);
   952		drm_legacy_rmmaps(dev);
   953	
   954		remove_compat_control_link(dev);
   955		drm_minor_unregister(dev, DRM_MINOR_PRIMARY);
   956		drm_minor_unregister(dev, DRM_MINOR_RENDER);
 > 957		dynamic_debug_unregister_tracer(THIS_MODULE, drm_trace_printvaf);
   958	}
   959	EXPORT_SYMBOL(drm_dev_unregister);
   960	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 40208 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-10-14  4:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-14  4:51 [jimc:dd-drm-next 19/20] drivers/gpu/drm/drm_drv.c:886:15: error: implicit declaration of function 'dynamic_debug_register_tracer' 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.