Re: linux-next: manual merge of the tip tree with the drm tree

From: Stephen Rothwell
Date: Wed Nov 27 2019 - 18:37:19 EST


Hi all,

On Thu, 10 Oct 2019 12:51:06 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Today's linux-next merge of the tip tree got a conflict in:
>
> drivers/gpu/drm/i915/gem/i915_gem_shrinker.c
>
> between commit:
>
> 2850748ef876 ("drm/i915: Pull i915_vma_pin under the vm->mutex")
>
> from the drm tree and commit:
>
> 5facae4f3549 ("locking/lockdep: Remove unused @nested argument from lock_release()")
>
> from the tip 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.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc drivers/gpu/drm/i915/gem/i915_gem_shrinker.c
> index fd3ce6da8497,1a51b3598d63..000000000000
> --- a/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c
> @@@ -436,9 -497,22 +436,9 @@@ void i915_gem_shrinker_taints_mutex(str
>
> fs_reclaim_acquire(GFP_KERNEL);
>
> - /*
> - * As we invariably rely on the struct_mutex within the shrinker,
> - * but have a complicated recursion dance, taint all the mutexes used
> - * within the shrinker with the struct_mutex. For completeness, we
> - * taint with all subclass of struct_mutex, even though we should
> - * only need tainting by I915_MM_NORMAL to catch possible ABBA
> - * deadlocks from using struct_mutex inside @mutex.
> - */
> - mutex_acquire(&i915->drm.struct_mutex.dep_map,
> - I915_MM_SHRINKER, 0, _RET_IP_);
> -
> mutex_acquire(&mutex->dep_map, 0, 0, _RET_IP_);
> - mutex_release(&mutex->dep_map, 0, _RET_IP_);
> + mutex_release(&mutex->dep_map, _RET_IP_);
>
> - mutex_release(&i915->drm.struct_mutex.dep_map, _RET_IP_);
> -
> fs_reclaim_release(GFP_KERNEL);
>
> if (unlock)

This is now a conflict between the drm tree and Linus' tree.

--
Cheers,
Stephen Rothwell

Attachment: pgpWVMUSiUVbB.pgp
Description: OpenPGP digital signature