[PATCH] drm: Add deprecation warnings to the old midlayer callbacks

kbuild test robot lkp at intel.com
Thu Jun 1 23:06:13 UTC 2017


Hi Chris,

[auto build test WARNING on drm/drm-next]
[also build test WARNING on v4.12-rc3 next-20170601]
[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/Chris-Wilson/drm-Add-deprecation-warnings-to-the-old-midlayer-callbacks/20170602-003053
base:   git://people.freedesktop.org/~airlied/linux.git drm-next
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 6.2.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=ia64 

All warnings (new ones prefixed by >>):

   drivers/gpu/drm/drm_gem.c: In function 'drm_gem_object_free':
>> drivers/gpu/drm/drm_gem.c:803:2: warning: 'gem_free_object' is deprecated [-Wdeprecated-declarations]
     } else if (DRM_DEPRECATED_WARN(dev->driver->gem_free_object)) {
     ^
   In file included from include/drm/drmP.h:76:0,
                    from drivers/gpu/drm/drm_gem.c:39:
   include/drm/drm_drv.h:377:9: note: declared here
     void (*gem_free_object) (struct drm_gem_object *obj);
            ^~~~~~~~~~~~~~~
   drivers/gpu/drm/drm_gem.c:806:3: warning: 'gem_free_object' is deprecated [-Wdeprecated-declarations]
      dev->driver->gem_free_object(obj);
      ^~~
   In file included from include/drm/drmP.h:76:0,
                    from drivers/gpu/drm/drm_gem.c:39:
   include/drm/drm_drv.h:377:9: note: declared here
     void (*gem_free_object) (struct drm_gem_object *obj);
            ^~~~~~~~~~~~~~~
--
   drivers/gpu/drm/drm_drv.c: In function 'drm_dev_register':
>> drivers/gpu/drm/drm_drv.c:781:2: warning: 'load' is deprecated [-Wdeprecated-declarations]
     if (DRM_DEPRECATED_WARN(dev->driver->load)) {
     ^~
   In file included from drivers/gpu/drm/drm_drv.c:36:0:
   include/drm/drm_drv.h:86:8: note: declared here
     int (*load) (struct drm_device *, unsigned long flags);
           ^~~~
   drivers/gpu/drm/drm_drv.c:782:3: warning: 'load' is deprecated [-Wdeprecated-declarations]
      ret = dev->driver->load(dev, flags);
      ^~~
   In file included from drivers/gpu/drm/drm_drv.c:36:0:
   include/drm/drm_drv.h:86:8: note: declared here
     int (*load) (struct drm_device *, unsigned long flags);
           ^~~~
   drivers/gpu/drm/drm_drv.c: In function 'drm_dev_unregister':
>> drivers/gpu/drm/drm_drv.c:833:2: warning: 'unload' is deprecated [-Wdeprecated-declarations]
     if (DRM_DEPRECATED_WARN(dev->driver->unload))
     ^~
   In file included from drivers/gpu/drm/drm_drv.c:36:0:
   include/drm/drm_drv.h:166:9: note: declared here
     void (*unload) (struct drm_device *);
            ^~~~~~
   drivers/gpu/drm/drm_drv.c:834:3: warning: 'unload' is deprecated [-Wdeprecated-declarations]
      dev->driver->unload(dev);
      ^~~
   In file included from drivers/gpu/drm/drm_drv.c:36:0:
   include/drm/drm_drv.h:166:9: note: declared here
     void (*unload) (struct drm_device *);
            ^~~~~~

vim +/gem_free_object +803 drivers/gpu/drm/drm_gem.c

   787	 * @kref: kref of the object to free
   788	 *
   789	 * Called after the last reference to the object has been lost.
   790	 * Must be called holding &drm_device.struct_mutex.
   791	 *
   792	 * Frees the object
   793	 */
   794	void
   795	drm_gem_object_free(struct kref *kref)
   796	{
   797		struct drm_gem_object *obj =
   798			container_of(kref, struct drm_gem_object, refcount);
   799		struct drm_device *dev = obj->dev;
   800	
   801		if (dev->driver->gem_free_object_unlocked) {
   802			dev->driver->gem_free_object_unlocked(obj);
 > 803		} else if (DRM_DEPRECATED_WARN(dev->driver->gem_free_object)) {
   804			WARN_ON(!mutex_is_locked(&dev->struct_mutex));
   805	
   806			dev->driver->gem_free_object(obj);
   807		}
   808	}
   809	EXPORT_SYMBOL(drm_gem_object_free);
   810	
   811	/**

---
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: 47733 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20170602/317f8e18/attachment-0001.gz>


More information about the dri-devel mailing list