[PATCH] drm/prime: fix error path deadlock fail
Alex Deucher
alexdeucher at gmail.com
Mon Jun 13 15:54:58 UTC 2016
On Mon, Jun 13, 2016 at 11:33 AM, Daniel Vetter <daniel at ffwll.ch> wrote:
> On Mon, Jun 13, 2016 at 11:19:20AM -0400, Alex Deucher wrote:
>> On Thu, Jun 9, 2016 at 3:29 PM, Rob Clark <robdclark at gmail.com> wrote:
>> > There were a couple messed up things about this fail path.
>> > (1) it would drop object_name_lock twice
>> > (2) drm_gem_handle_delete() (in drm_gem_remove_prime_handles())
>> > needs to grab prime_lock
>> >
>> > Reported-by: Alex Deucher <alexdeucher at gmail.com>
>> > Signed-off-by: Rob Clark <robdclark at gmail.com>
>> > ---
>> > Untested, but I think this should fix the potential deadlock that Alex
>> > reported. Would be nice if someone with setup to reproduce could test
>> > this.
>>
>> Sorry for the confusion. There were actually two deadlocks. The
>> first one (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1579610
>> fixed by https://github.com/torvalds/linux/commit/6984128d01cf935820a0563f3a00c6623ba58109)
>> was that one we hit in testing. This one was just one that Qiang
>> noticed by inspection while debugging the first. That said, the error
>> path is obviously wrong and the patch looks correct to me.
>>
>> Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
>
> Ok, I didn't add the bugzilla to this one. Applied to drm-misc, thanks.
There actually is a bugzilla for the potential deadlock fixed by this patch:
https://bugzilla.kernel.org/show_bug.cgi?id=117861
Alex
More information about the dri-devel
mailing list