Re: [PATCH 2/3] drm: Convert drm_legacy_ctxbitmap_init to void return type

Antoine, Peter
2015-06-23T13:15:07Z

> It can't fail really.
>
> Also remove the redundant kms check Peter added.
>
> Cc: Peter Antoine <peter.antoine@intel.com>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> ---
> drivers/gpu/drm/drm_context.c | 5 ++---
> drivers/gpu/drm/drm_drv.c | 10 +---------
> drivers/gpu/drm/drm_legacy.h | 2 +-
> 3 files changed, 4 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_context.c b/drivers/gpu/drm/drm_context.c
> index 32958dabd7b0..192a5f9eeb74 100644
> --- a/drivers/gpu/drm/drm_context.c
> +++ b/drivers/gpu/drm/drm_context.c
> @@ -89,14 +89,13 @@ static int drm_legacy_ctxbitmap_next(struct drm_device * dev)
> *
> * Initialise the drm_device::ctx_idr
> */
> -int drm_legacy_ctxbitmap_init(struct drm_device * dev)
> +void drm_legacy_ctxbitmap_init(struct drm_device * dev)
> {
> if (!drm_core_check_feature(dev, DRIVER_KMS_LEGACY_CONTEXT) &&
> drm_core_check_feature(dev, DRIVER_MODESET))
> - return -EINVAL;
> + return;
>
> idr_init(&dev->ctx_idr);
> - return 0;
> }
>
> /**
> diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
> index e5717116346d..ddc4943404c6 100644
> --- a/drivers/gpu/drm/drm_drv.c
> +++ b/drivers/gpu/drm/drm_drv.c
> @@ -584,14 +584,7 @@ struct drm_device *drm_dev_alloc(struct drm_driver *driver,
> if (drm_ht_create(&dev->map_hash, 12))
> goto err_minors;
>
> - if (drm_core_check_feature(dev, DRIVER_KMS_LEGACY_CONTEXT) ||
> - !drm_core_check_feature(dev, DRIVER_MODESET))
> - ret = drm_legacy_ctxbitmap_init(dev);
> - if (ret) {
> - DRM_ERROR(
> - "Cannot allocate memory for context bitmap.\n");
> - goto err_ht;
> - }
> + drm_legacy_ctxbitmap_init(dev);
>
> if (drm_core_check_feature(dev, DRIVER_GEM)) {
> ret = drm_gem_init(dev);
> @@ -605,7 +598,6 @@ struct drm_device *drm_dev_alloc(struct drm_driver *driver,
>
> err_ctxbitmap:
> drm_legacy_ctxbitmap_cleanup(dev);
> -err_ht:
> drm_ht_remove(&dev->map_hash);
> err_minors:
> drm_minor_free(dev, DRM_MINOR_LEGACY);
> diff --git a/drivers/gpu/drm/drm_legacy.h b/drivers/gpu/drm/drm_legacy.h
> index c1dc61473db5..9b731786e4db 100644
> --- a/drivers/gpu/drm/drm_legacy.h
> +++ b/drivers/gpu/drm/drm_legacy.h
> @@ -42,7 +42,7 @@ struct drm_file;
> #define DRM_KERNEL_CONTEXT 0
> #define DRM_RESERVED_CONTEXTS 1
>
> -int drm_legacy_ctxbitmap_init(struct drm_device *dev);
> +void drm_legacy_ctxbitmap_init(struct drm_device *dev);
> void drm_legacy_ctxbitmap_cleanup(struct drm_device *dev);
> void drm_legacy_ctxbitmap_free(struct drm_device *dev, int ctx_handle);
> void drm_legacy_ctxbitmap_flush(struct drm_device *dev, struct drm_file *file);