Subject: Re: linux-next: manual merge of the drm-xe tree with the drm-fixes tree

From: Nathan Chancellor <[email-masked]>
Date: Mon, 22 Sep 2025 11:28:32 -0700

Hi Mark,

On Fri, Sep 19, 2025 at 01:45:19PM +0100, Mark Brown wrote:
> Hi all,
> 
> Today's linux-next merge of the drm-xe tree got a conflict in:
> 
>   drivers/gpu/drm/xe/xe_guc_submit.c
> 
> between commit:
> 
>   ff89a4d285c82 ("drm/xe/sysfs: Add cleanup action in xe_device_sysfs_init")
> 
> from the drm-fixes tree and commit:
> 
>   fb3c27a69c473 ("drm/xe/sysfs: Simplify sysfs registration")
> 
> from the drm-xe tree.
> 
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging.  You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
> 
> diff --cc drivers/gpu/drm/xe/xe_device_sysfs.c
> index b7f8fcfed8d86,c5151c86a98ae..0000000000000
> --- a/drivers/gpu/drm/xe/xe_device_sysfs.c
> +++ b/drivers/gpu/drm/xe/xe_device_sysfs.c
> @@@ -308,19 -290,15 +290,15 @@@ int xe_device_sysfs_init(struct xe_devi
>   			return ret;
>   	}
>   
> - 	if (xe->info.platform == XE_BATTLEMAGE) {
> - 		ret = sysfs_create_files(&dev->kobj, auto_link_downgrade_attrs);
> + 	if (xe->info.platform == XE_BATTLEMAGE && !IS_SRIOV_VF(xe)) {
> + 		ret = devm_device_add_group(dev, &auto_link_downgrade_attr_group);
>   		if (ret)
>  -			return ret;
>  +			goto cleanup;
>   
> - 		ret = late_bind_create_files(dev);
> + 		ret = devm_device_add_group(dev, &late_bind_attr_group);
>   		if (ret)
>  -			return ret;
>  +			goto cleanup;
>   	}
>   
> - 	return devm_add_action_or_reset(dev, xe_device_sysfs_fini, xe);
> - 
> - cleanup:
> - 	xe_device_sysfs_fini(xe);
> - 	return ret;
> + 	return 0;
>   }

This resolution breaks the build.

  drivers/gpu/drm/xe/xe_device_sysfs.c: In function 'xe_device_sysfs_init':
  drivers/gpu/drm/xe/xe_device_sysfs.c:300:25: error: label 'cleanup' used but not defined
    300 |                         goto cleanup;
        |                         ^~~~

I think those should just be 'return ret', as it appears that
fb3c27a69c473 already includes ff89a4d285c82, so I think you can just
take the right side of the conflict wholesale.

Cheers,
Nathan