Commit 6f881d04 authored by Ville Syrjälä's avatar Ville Syrjälä
Browse files

drm: Reject replacing property enum values



If the property already has the enum value WARN and bail.
Replacing enum values doesn't make sense to me.

Throw out the pointless list_empty() while at it.

Cc: Daniel Vetter <daniel@ffwll.ch>
Suggested-by: default avatarDaniel Vetter <daniel@ffwll.ch>
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180306164849.2862-1-ville.syrjala@linux.intel.com


Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 2e9b3e74
Loading
Loading
Loading
Loading
+3 −8
Original line number Diff line number Diff line
@@ -390,14 +390,9 @@ int drm_property_add_enum(struct drm_property *property, int index,
			(value > 63))
		return -EINVAL;

	if (!list_empty(&property->enum_list)) {
	list_for_each_entry(prop_enum, &property->enum_list, head) {
			if (prop_enum->value == value) {
				strncpy(prop_enum->name, name, DRM_PROP_NAME_LEN);
				prop_enum->name[DRM_PROP_NAME_LEN-1] = '\0';
				return 0;
			}
		}
		if (WARN_ON(prop_enum->value == value))
			return -EINVAL;
	}

	prop_enum = kzalloc(sizeof(struct drm_property_enum), GFP_KERNEL);