Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp2340402imm; Thu, 11 Oct 2018 08:46:34 -0700 (PDT) X-Google-Smtp-Source: ACcGV60qkZaQP3Zn5YcK5NuDBxaulk6n2ah6NpV7MtWrbDwDpLTW69t9HeD3q3kQtEsZiwrrjI9A X-Received: by 2002:a17:902:7785:: with SMTP id o5-v6mr2024397pll.200.1539272794430; Thu, 11 Oct 2018 08:46:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1539272794; cv=none; d=google.com; s=arc-20160816; b=wJAx3iAuSCKXQRdrC5SHL+4I4PecKvZRUpoJeLMQcTLEdqzV1yk+4mCSmDHSJatihP /zo/IP2aPIU9Yo/q8vdGUrc6RxiX/zCF55ivVGr5wJLQUGXiiFssUR5/V5OJloGecUzX oeZ06X9pYrRt50NrPGDENbU2JsumKJ3oGDCX5KLZ/dvsuukZQxgFbUvttFaYIIzo7wDl crlV8qYCSs7Af7Mll0cqvW1XxVy9zwrz8vWV33n1Ny3BS1kR5k4pAkqvRGFDkqAn2qax TUPCc/plRfZm2RY5G96gIHKbys35dmZQ/MUFpqNZ2tbX8HmXGkGmhj7ioRLFgiBH2ANc Jlxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=5J4ITSYJ0n9tlwuGW/zRhE19l2JpL+Mj7MXBSoZhcZA=; b=Wlm0Kc/LUA5AXQONSe9czaPg33vvudU5iSxBCUQOWATjXtJQH9uy5cTTzOgtOL72XL RPoUo2+iI7xHdXpQkjGEsBBB4iVT/pP300PFf4mFG/Dh2Q9k31m2BNf2Bikaa2TkBQCn CFa/d2TF+X71gvHZEm2SP8L4XWKNDQbPkWz78jr6rU9D2U+TaOXj2cbMtvDjXXdM4uXn N6VnVwPQUkOpWZ1HyGAXQx1GHFOohRq5eQxnge1nJutXvpxOf5BbHlnrU6T4ne+wBp1b DikCxxECWai92azH8ydKsKohgYhXr9XDnLPIDC0VSO3MNWwTCnaxRu5NhpM7n40c+2S+ 6DbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=0BMx8v3h; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f23-v6si14159959pgh.250.2018.10.11.08.46.19; Thu, 11 Oct 2018 08:46:34 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=0BMx8v3h; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730881AbeJKXMw (ORCPT + 99 others); Thu, 11 Oct 2018 19:12:52 -0400 Received: from mail.kernel.org ([198.145.29.99]:45182 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729994AbeJKXMw (ORCPT ); Thu, 11 Oct 2018 19:12:52 -0400 Received: from localhost (ip-213-127-77-176.ip.prioritytelecom.net [213.127.77.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C003D2098A; Thu, 11 Oct 2018 15:45:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1539272707; bh=IDv1LAzL/Tj4z5eiXV0G72yXwHSZPlQVXshP6MWfJMI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=0BMx8v3hnIGuSEOfWTptJzzyGxm3E/MLvJbbRt141asi98laBfp9eSMMC7n3Ew9/O iZcT9fcAQLBlxyjiUCG+8OBbTahiv+v897LdFelDEGln+EOEiFVNewg+jSCjx+T1Nc PL2fy7Bryz7TCasLDiD3DL37Ul4PvTkw4rnEZSJU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Chris Wilson , Jason Ekstrand , Sean Paul Subject: [PATCH 4.14 11/45] drm/syncobj: Dont leak fences when WAIT_FOR_SUBMIT is set Date: Thu, 11 Oct 2018 17:39:38 +0200 Message-Id: <20181011152509.336749977@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181011152508.885515042@linuxfoundation.org> References: <20181011152508.885515042@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Jason Ekstrand commit 337fe9f5c1e7de1f391c6a692531379d2aa2ee11 upstream. We attempt to get fences earlier in the hopes that everything will already have fences and no callbacks will be needed. If we do succeed in getting a fence, getting one a second time will result in a duplicate ref with no unref. This is causing memory leaks in Vulkan applications that create a lot of fences; playing for a few hours can, apparently, bring down the system. Cc: stable@vger.kernel.org Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107899 Reviewed-by: Chris Wilson Signed-off-by: Jason Ekstrand Signed-off-by: Sean Paul Link: https://patchwork.freedesktop.org/patch/msgid/20180926071703.15257-1-jason.ekstrand@intel.com Signed-off-by: Greg Kroah-Hartman --- drivers/gpu/drm/drm_syncobj.c | 5 +++++ 1 file changed, 5 insertions(+) --- a/drivers/gpu/drm/drm_syncobj.c +++ b/drivers/gpu/drm/drm_syncobj.c @@ -96,6 +96,8 @@ static int drm_syncobj_fence_get_or_add_ { int ret; + WARN_ON(*fence); + *fence = drm_syncobj_fence_get(syncobj); if (*fence) return 1; @@ -656,6 +658,9 @@ static signed long drm_syncobj_array_wai if (flags & DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT) { for (i = 0; i < count; ++i) { + if (entries[i].fence) + continue; + drm_syncobj_fence_get_or_add_callback(syncobjs[i], &entries[i].fence, &entries[i].syncobj_cb,