Commit 5a73dd61 authored by Himal Prasad Ghimiray's avatar Himal Prasad Ghimiray Committed by Lucas De Marchi
Browse files

drm/xe: Simplify function return using drmm_add_action_or_reset()



Instead of assigning the value of drmm_add_action_or_reset() to err and
returning err in case of failure and 0 in case of success, simply return
the result of drmm_add_action_or_reset().

-v2:
cleanup in xe_display too.

Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Reviewed-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
Signed-off-by: default avatarHimal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240412181211.1155732-2-himal.prasad.ghimiray@intel.com


Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
parent cba22c91
Loading
Loading
Loading
Loading
+1 −7
Original line number Diff line number Diff line
@@ -101,8 +101,6 @@ static void display_destroy(struct drm_device *dev, void *dummy)
 */
int xe_display_create(struct xe_device *xe)
{
	int err;

	spin_lock_init(&xe->display.fb_tracking.lock);

	xe->display.hotplug.dp_wq = alloc_ordered_workqueue("xe-dp", 0);
@@ -110,11 +108,7 @@ int xe_display_create(struct xe_device *xe)
	drmm_mutex_init(&xe->drm, &xe->sb_lock);
	xe->enabled_irq_mask = ~0;

	err = drmm_add_action_or_reset(&xe->drm, display_destroy, NULL);
	if (err)
		return err;

	return 0;
	return drmm_add_action_or_reset(&xe->drm, display_destroy, NULL);
}

static void xe_display_fini_nommio(struct drm_device *dev, void *dummy)
+1 −5
Original line number Diff line number Diff line
@@ -649,11 +649,7 @@ int xe_device_probe(struct xe_device *xe)

	xe_hwmon_register(xe);

	err = drmm_add_action_or_reset(&xe->drm, xe_device_sanitize, xe);
	if (err)
		return err;

	return 0;
	return drmm_add_action_or_reset(&xe->drm, xe_device_sanitize, xe);

err_fini_display:
	xe_display_driver_remove(xe);
+1 −6
Original line number Diff line number Diff line
@@ -403,7 +403,6 @@ static int proxy_channel_alloc(struct xe_gsc *gsc)
	struct xe_device *xe = gt_to_xe(gt);
	struct xe_bo *bo;
	void *csme;
	int err;

	csme = kzalloc(GSC_PROXY_CHANNEL_SIZE, GFP_KERNEL);
	if (!csme)
@@ -424,11 +423,7 @@ static int proxy_channel_alloc(struct xe_gsc *gsc)
	gsc->proxy.to_csme = csme;
	gsc->proxy.from_csme = csme + GSC_PROXY_BUFFER_SIZE;

	err = drmm_add_action_or_reset(&xe->drm, proxy_channel_free, gsc);
	if (err)
		return err;

	return 0;
	return drmm_add_action_or_reset(&xe->drm, proxy_channel_free, gsc);
}

/**
+1 −5
Original line number Diff line number Diff line
@@ -558,11 +558,7 @@ int xe_gt_init(struct xe_gt *gt)
	if (err)
		return err;

	err = drmm_add_action_or_reset(&gt_to_xe(gt)->drm, gt_fini, gt);
	if (err)
		return err;

	return 0;
	return drmm_add_action_or_reset(&gt_to_xe(gt)->drm, gt_fini, gt);
}

static int do_gt_reset(struct xe_gt *gt)
+1 −5
Original line number Diff line number Diff line
@@ -937,9 +937,5 @@ int xe_guc_pc_init(struct xe_guc_pc *pc)

	pc->bo = bo;

	err = drmm_add_action_or_reset(&xe->drm, xe_guc_pc_fini, pc);
	if (err)
		return err;

	return 0;
	return drmm_add_action_or_reset(&xe->drm, xe_guc_pc_fini, pc);
}
Loading