[Intel-gfx] [PATCH 6/9] drm/connector: Add a drm_connector privacy-screen helper functions

kernel test robot lkp at intel.com
Wed Jul 8 20:57:13 UTC 2020


Hi Hans,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.8-rc4]
[cannot apply to drm-intel/for-linux-next drm-tip/drm-tip next-20200708]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Hans-de-Goede/drm-Add-privacy-screen-class-and-connector-properties/20200709-004703
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git dcde237b9b0eb1d19306e6f48c0a4e058907619f
config: riscv-randconfig-s031-20200708 (attached as .config)
compiler: riscv64-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.2-37-gc9676a3b-dirty
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=riscv 

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

All errors (new ones prefixed by >>):

   riscv64-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_register':
>> drivers/gpu/drm/drm_connector.c:533: undefined reference to `drm_privacy_screen_register_notifier'
   riscv64-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_unregister':
>> drivers/gpu/drm/drm_connector.c:567: undefined reference to `drm_privacy_screen_unregister_notifier'
   riscv64-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_set_link_status_property':
>> drivers/gpu/drm/drm_connector.c:2076: undefined reference to `drm_privacy_screen_get_state'
   riscv64-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_connector_privacy_screen_notifier':
>> drivers/gpu/drm/drm_connector.c:2299: undefined reference to `drm_privacy_screen_set_sw_state'
   riscv64-linux-ld: drivers/gpu/drm/drm_connector.o: in function `drm_tile_group_free':
>> drivers/gpu/drm/drm_connector.c:2586: undefined reference to `drm_privacy_screen_put'

vim +533 drivers/gpu/drm/drm_connector.c

52217195176115 Daniel Vetter      2016-08-12  495  
52217195176115 Daniel Vetter      2016-08-12  496  /**
52217195176115 Daniel Vetter      2016-08-12  497   * drm_connector_register - register a connector
52217195176115 Daniel Vetter      2016-08-12  498   * @connector: the connector to register
52217195176115 Daniel Vetter      2016-08-12  499   *
69b22f51e6644b Daniel Vetter      2019-09-17  500   * Register userspace interfaces for a connector. Only call this for connectors
69b22f51e6644b Daniel Vetter      2019-09-17  501   * which can be hotplugged after drm_dev_register() has been called already,
69b22f51e6644b Daniel Vetter      2019-09-17  502   * e.g. DP MST connectors. All other connectors will be registered automatically
69b22f51e6644b Daniel Vetter      2019-09-17  503   * when calling drm_dev_register().
52217195176115 Daniel Vetter      2016-08-12  504   *
52217195176115 Daniel Vetter      2016-08-12  505   * Returns:
52217195176115 Daniel Vetter      2016-08-12  506   * Zero on success, error code on failure.
52217195176115 Daniel Vetter      2016-08-12  507   */
52217195176115 Daniel Vetter      2016-08-12  508  int drm_connector_register(struct drm_connector *connector)
52217195176115 Daniel Vetter      2016-08-12  509  {
e73ab00e9a0f17 Daniel Vetter      2016-12-18  510  	int ret = 0;
52217195176115 Daniel Vetter      2016-08-12  511  
e6e7b48b295afa Daniel Vetter      2017-01-12  512  	if (!connector->dev->registered)
e6e7b48b295afa Daniel Vetter      2017-01-12  513  		return 0;
e6e7b48b295afa Daniel Vetter      2017-01-12  514  
e73ab00e9a0f17 Daniel Vetter      2016-12-18  515  	mutex_lock(&connector->mutex);
39b50c603878f4 Lyude Paul         2018-10-16  516  	if (connector->registration_state != DRM_CONNECTOR_INITIALIZING)
e73ab00e9a0f17 Daniel Vetter      2016-12-18  517  		goto unlock;
52217195176115 Daniel Vetter      2016-08-12  518  
52217195176115 Daniel Vetter      2016-08-12  519  	ret = drm_sysfs_connector_add(connector);
52217195176115 Daniel Vetter      2016-08-12  520  	if (ret)
e73ab00e9a0f17 Daniel Vetter      2016-12-18  521  		goto unlock;
52217195176115 Daniel Vetter      2016-08-12  522  
b792e64021ecde Greg Kroah-Hartman 2019-06-13  523  	drm_debugfs_connector_add(connector);
52217195176115 Daniel Vetter      2016-08-12  524  
52217195176115 Daniel Vetter      2016-08-12  525  	if (connector->funcs->late_register) {
52217195176115 Daniel Vetter      2016-08-12  526  		ret = connector->funcs->late_register(connector);
52217195176115 Daniel Vetter      2016-08-12  527  		if (ret)
52217195176115 Daniel Vetter      2016-08-12  528  			goto err_debugfs;
52217195176115 Daniel Vetter      2016-08-12  529  	}
52217195176115 Daniel Vetter      2016-08-12  530  
52217195176115 Daniel Vetter      2016-08-12  531  	drm_mode_object_register(connector->dev, &connector->base);
52217195176115 Daniel Vetter      2016-08-12  532  
39b50c603878f4 Lyude Paul         2018-10-16 @533  	connector->registration_state = DRM_CONNECTOR_REGISTERED;
968d81a64a883a Jeykumar Sankaran  2020-06-02  534  
968d81a64a883a Jeykumar Sankaran  2020-06-02  535  	/* Let userspace know we have a new connector */
968d81a64a883a Jeykumar Sankaran  2020-06-02  536  	drm_sysfs_hotplug_event(connector->dev);
968d81a64a883a Jeykumar Sankaran  2020-06-02  537  
3823adf8dc676e Hans de Goede      2020-07-08  538  	if (connector->privacy_screen)
3823adf8dc676e Hans de Goede      2020-07-08  539  		drm_privacy_screen_register_notifier(connector->privacy_screen,
3823adf8dc676e Hans de Goede      2020-07-08  540  					   &connector->privacy_screen_notifier);
3823adf8dc676e Hans de Goede      2020-07-08  541  
e73ab00e9a0f17 Daniel Vetter      2016-12-18  542  	goto unlock;
52217195176115 Daniel Vetter      2016-08-12  543  
52217195176115 Daniel Vetter      2016-08-12  544  err_debugfs:
52217195176115 Daniel Vetter      2016-08-12  545  	drm_debugfs_connector_remove(connector);
52217195176115 Daniel Vetter      2016-08-12  546  	drm_sysfs_connector_remove(connector);
e73ab00e9a0f17 Daniel Vetter      2016-12-18  547  unlock:
e73ab00e9a0f17 Daniel Vetter      2016-12-18  548  	mutex_unlock(&connector->mutex);
52217195176115 Daniel Vetter      2016-08-12  549  	return ret;
52217195176115 Daniel Vetter      2016-08-12  550  }
52217195176115 Daniel Vetter      2016-08-12  551  EXPORT_SYMBOL(drm_connector_register);
52217195176115 Daniel Vetter      2016-08-12  552  
52217195176115 Daniel Vetter      2016-08-12  553  /**
52217195176115 Daniel Vetter      2016-08-12  554   * drm_connector_unregister - unregister a connector
52217195176115 Daniel Vetter      2016-08-12  555   * @connector: the connector to unregister
52217195176115 Daniel Vetter      2016-08-12  556   *
69b22f51e6644b Daniel Vetter      2019-09-17  557   * Unregister userspace interfaces for a connector. Only call this for
69b22f51e6644b Daniel Vetter      2019-09-17  558   * connectors which have registered explicitly by calling drm_dev_register(),
69b22f51e6644b Daniel Vetter      2019-09-17  559   * since connectors are unregistered automatically when drm_dev_unregister() is
69b22f51e6644b Daniel Vetter      2019-09-17  560   * called.
52217195176115 Daniel Vetter      2016-08-12  561   */
52217195176115 Daniel Vetter      2016-08-12  562  void drm_connector_unregister(struct drm_connector *connector)
52217195176115 Daniel Vetter      2016-08-12  563  {
e73ab00e9a0f17 Daniel Vetter      2016-12-18  564  	mutex_lock(&connector->mutex);
39b50c603878f4 Lyude Paul         2018-10-16  565  	if (connector->registration_state != DRM_CONNECTOR_REGISTERED) {
e73ab00e9a0f17 Daniel Vetter      2016-12-18  566  		mutex_unlock(&connector->mutex);
52217195176115 Daniel Vetter      2016-08-12 @567  		return;
e73ab00e9a0f17 Daniel Vetter      2016-12-18  568  	}
52217195176115 Daniel Vetter      2016-08-12  569  
3823adf8dc676e Hans de Goede      2020-07-08  570  	if (connector->privacy_screen)
3823adf8dc676e Hans de Goede      2020-07-08  571  		drm_privacy_screen_unregister_notifier(
3823adf8dc676e Hans de Goede      2020-07-08  572  					connector->privacy_screen,
3823adf8dc676e Hans de Goede      2020-07-08  573  					&connector->privacy_screen_notifier);
3823adf8dc676e Hans de Goede      2020-07-08  574  
52217195176115 Daniel Vetter      2016-08-12  575  	if (connector->funcs->early_unregister)
52217195176115 Daniel Vetter      2016-08-12  576  		connector->funcs->early_unregister(connector);
52217195176115 Daniel Vetter      2016-08-12  577  
52217195176115 Daniel Vetter      2016-08-12  578  	drm_sysfs_connector_remove(connector);
52217195176115 Daniel Vetter      2016-08-12  579  	drm_debugfs_connector_remove(connector);
52217195176115 Daniel Vetter      2016-08-12  580  
39b50c603878f4 Lyude Paul         2018-10-16  581  	connector->registration_state = DRM_CONNECTOR_UNREGISTERED;
e73ab00e9a0f17 Daniel Vetter      2016-12-18  582  	mutex_unlock(&connector->mutex);
52217195176115 Daniel Vetter      2016-08-12  583  }
52217195176115 Daniel Vetter      2016-08-12  584  EXPORT_SYMBOL(drm_connector_unregister);
52217195176115 Daniel Vetter      2016-08-12  585  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 29953 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20200709/fd20ffdc/attachment-0001.gz>


More information about the dri-devel mailing list