Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2004f45e authored by Harry Wentland's avatar Harry Wentland Committed by Alex Deucher
Browse files

drm/amd/display: Use kernel alloc/free



Abstractions are frowned upon.

cocci script:
virtual context
virtual patch
virtual org
virtual report

@@
expression ptr;
@@

- dm_alloc(ptr)
+ kzalloc(ptr, GFP_KERNEL)

@@
expression ptr, size;
@@

- dm_realloc(ptr, size)
+ krealloc(ptr, size, GFP_KERNEL)

@@
expression ptr;
@@

- dm_free(ptr)
+ kfree(ptr)

v2: use GFP_KERNEL, not GFP_ATOMIC. add cocci script

Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarHarry Wentland <harry.wentland@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 82b400a6
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2429,7 +2429,7 @@ dm_crtc_duplicate_state(struct drm_crtc *crtc)
	if (WARN_ON(!crtc->state))
		return NULL;

	state = dm_alloc(sizeof(*state));
	state = kzalloc(sizeof(*state), GFP_KERNEL);

	__drm_atomic_helper_crtc_duplicate_state(crtc, &state->base);

+10 −8
Original line number Diff line number Diff line
@@ -70,8 +70,8 @@ static bool construct(struct dc_context *ctx, struct dal_logger *logger,
{
	/* malloc buffer and init offsets */
	logger->log_buffer_size = DAL_LOGGER_BUFFER_MAX_SIZE;
	logger->log_buffer = (char *)dm_alloc(logger->log_buffer_size *
		sizeof(char));
	logger->log_buffer = (char *)kzalloc(logger->log_buffer_size * sizeof(char),
					     GFP_KERNEL);

	if (!logger->log_buffer)
		return false;
@@ -97,7 +97,7 @@ static bool construct(struct dc_context *ctx, struct dal_logger *logger,
static void destruct(struct dal_logger *logger)
{
	if (logger->log_buffer) {
		dm_free(logger->log_buffer);
		kfree(logger->log_buffer);
		logger->log_buffer = NULL;
	}
}
@@ -105,12 +105,13 @@ static void destruct(struct dal_logger *logger)
struct dal_logger *dal_logger_create(struct dc_context *ctx, uint32_t log_mask)
{
	/* malloc struct */
	struct dal_logger *logger = dm_alloc(sizeof(struct dal_logger));
	struct dal_logger *logger = kzalloc(sizeof(struct dal_logger),
					    GFP_KERNEL);

	if (!logger)
		return NULL;
	if (!construct(ctx, logger, log_mask)) {
		dm_free(logger);
		kfree(logger);
		return NULL;
	}

@@ -122,7 +123,7 @@ uint32_t dal_logger_destroy(struct dal_logger **logger)
	if (logger == NULL || *logger == NULL)
		return 1;
	destruct(*logger);
	dm_free(*logger);
	kfree(*logger);
	*logger = NULL;

	return 0;
@@ -390,7 +391,8 @@ void dm_logger_open(
	entry->type = log_type;
	entry->logger = logger;

	entry->buf = dm_alloc(DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char));
	entry->buf = kzalloc(DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char),
			     GFP_KERNEL);

	entry->buf_offset = 0;
	entry->max_buf_bytes = DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char);
@@ -421,7 +423,7 @@ void dm_logger_close(struct log_entry *entry)

cleanup:
	if (entry->buf) {
		dm_free(entry->buf);
		kfree(entry->buf);
		entry->buf = NULL;
		entry->buf_offset = 0;
		entry->max_buf_bytes = 0;
+10 −9
Original line number Diff line number Diff line
@@ -40,7 +40,7 @@ bool dal_vector_construct(
		return false;
	}

	vector->container = dm_alloc(struct_size * capacity);
	vector->container = kzalloc(struct_size * capacity, GFP_KERNEL);
	if (vector->container == NULL)
		return false;
	vector->capacity = capacity;
@@ -67,7 +67,7 @@ bool dal_vector_presized_costruct(
		return false;
	}

	vector->container = dm_alloc(struct_size * count);
	vector->container = kzalloc(struct_size * count, GFP_KERNEL);

	if (vector->container == NULL)
		return false;
@@ -95,7 +95,7 @@ struct vector *dal_vector_presized_create(
	void *initial_value,
	uint32_t struct_size)
{
	struct vector *vector = dm_alloc(sizeof(struct vector));
	struct vector *vector = kzalloc(sizeof(struct vector), GFP_KERNEL);

	if (vector == NULL)
		return NULL;
@@ -105,7 +105,7 @@ struct vector *dal_vector_presized_create(
		return vector;

	BREAK_TO_DEBUGGER();
	dm_free(vector);
	kfree(vector);
	return NULL;
}

@@ -114,7 +114,7 @@ struct vector *dal_vector_create(
	uint32_t capacity,
	uint32_t struct_size)
{
	struct vector *vector = dm_alloc(sizeof(struct vector));
	struct vector *vector = kzalloc(sizeof(struct vector), GFP_KERNEL);

	if (vector == NULL)
		return NULL;
@@ -123,7 +123,7 @@ struct vector *dal_vector_create(
		return vector;

	BREAK_TO_DEBUGGER();
	dm_free(vector);
	kfree(vector);
	return NULL;
}

@@ -131,7 +131,7 @@ void dal_vector_destruct(
	struct vector *vector)
{
	if (vector->container != NULL)
		dm_free(vector->container);
		kfree(vector->container);
	vector->count = 0;
	vector->capacity = 0;
}
@@ -142,7 +142,7 @@ void dal_vector_destroy(
	if (vector == NULL || *vector == NULL)
		return;
	dal_vector_destruct(*vector);
	dm_free(*vector);
	kfree(*vector);
	*vector = NULL;
}

@@ -290,7 +290,8 @@ bool dal_vector_reserve(struct vector *vector, uint32_t capacity)
	if (capacity <= vector->capacity)
		return true;

	new_container = dm_realloc(vector->container, capacity * vector->struct_size);
	new_container = krealloc(vector->container,
				 capacity * vector->struct_size, GFP_KERNEL);

	if (new_container) {
		vector->container = new_container;
+9 −8
Original line number Diff line number Diff line
@@ -116,14 +116,14 @@ struct dc_bios *bios_parser_create(
{
	struct bios_parser *bp = NULL;

	bp = dm_alloc(sizeof(struct bios_parser));
	bp = kzalloc(sizeof(struct bios_parser), GFP_KERNEL);
	if (!bp)
		return NULL;

	if (bios_parser_construct(bp, init, dce_version))
		return &bp->base;

	dm_free(bp);
	kfree(bp);
	BREAK_TO_DEBUGGER();
	return NULL;
}
@@ -131,10 +131,10 @@ struct dc_bios *bios_parser_create(
static void destruct(struct bios_parser *bp)
{
	if (bp->base.bios_local_image)
		dm_free(bp->base.bios_local_image);
		kfree(bp->base.bios_local_image);

	if (bp->base.integrated_info)
		dm_free(bp->base.integrated_info);
		kfree(bp->base.integrated_info);
}

static void bios_parser_destroy(struct dc_bios **dcb)
@@ -148,7 +148,7 @@ static void bios_parser_destroy(struct dc_bios **dcb)

	destruct(bp);

	dm_free(bp);
	kfree(bp);
	*dcb = NULL;
}

@@ -3531,7 +3531,8 @@ static void process_ext_display_connection_info(struct bios_parser *bp)
		uint8_t *original_bios;
		/* Step 1: Replace bios image with the new copy which will be
		 * patched */
		bp->base.bios_local_image = dm_alloc(bp->base.bios_size);
		bp->base.bios_local_image = kzalloc(bp->base.bios_size,
						    GFP_KERNEL);
		if (bp->base.bios_local_image == NULL) {
			BREAK_TO_DEBUGGER();
			/* Failed to alloc bp->base.bios_local_image */
@@ -3965,7 +3966,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
	struct bios_parser *bp = BP_FROM_DCB(dcb);
	struct integrated_info *info = NULL;

	info = dm_alloc(sizeof(struct integrated_info));
	info = kzalloc(sizeof(struct integrated_info), GFP_KERNEL);

	if (info == NULL) {
		ASSERT_CRITICAL(0);
@@ -3975,7 +3976,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
	if (construct_integrated_info(bp, info) == BP_RESULT_OK)
		return info;

	dm_free(info);
	kfree(info);

	return NULL;
}
+7 −7
Original line number Diff line number Diff line
@@ -107,10 +107,10 @@ static struct atom_encoder_caps_record *get_encoder_cap_record(
static void destruct(struct bios_parser *bp)
{
	if (bp->base.bios_local_image)
		dm_free(bp->base.bios_local_image);
		kfree(bp->base.bios_local_image);

	if (bp->base.integrated_info)
		dm_free(bp->base.integrated_info);
		kfree(bp->base.integrated_info);
}

static void firmware_parser_destroy(struct dc_bios **dcb)
@@ -124,7 +124,7 @@ static void firmware_parser_destroy(struct dc_bios **dcb)

	destruct(bp);

	dm_free(bp);
	kfree(bp);
	*dcb = NULL;
}

@@ -2030,7 +2030,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
	struct bios_parser *bp = BP_FROM_DCB(dcb);
	struct integrated_info *info = NULL;

	info = dm_alloc(sizeof(struct integrated_info));
	info = kzalloc(sizeof(struct integrated_info), GFP_KERNEL);

	if (info == NULL) {
		ASSERT_CRITICAL(0);
@@ -2040,7 +2040,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
	if (construct_integrated_info(bp, info) == BP_RESULT_OK)
	return info;

	dm_free(info);
	kfree(info);

	return NULL;
}
@@ -2205,14 +2205,14 @@ struct dc_bios *firmware_parser_create(
{
	struct bios_parser *bp = NULL;

	bp = dm_alloc(sizeof(struct bios_parser));
	bp = kzalloc(sizeof(struct bios_parser), GFP_KERNEL);
	if (!bp)
		return NULL;

	if (bios_parser_construct(bp, init, dce_version))
		return &bp->base;

	dm_free(bp);
	kfree(bp);
	return NULL;
}

Loading