Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp4560746imm; Mon, 30 Jul 2018 17:41:11 -0700 (PDT) X-Google-Smtp-Source: AAOMgperaRULb1+kQCBtp1rBYDoWewWW1+HgzGzpfV3W+JULnHVtjlEd0CeXFfI51pqOkni/bpix X-Received: by 2002:a65:6104:: with SMTP id z4-v6mr18207921pgu.361.1532997671176; Mon, 30 Jul 2018 17:41:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532997671; cv=none; d=google.com; s=arc-20160816; b=RUidpVrYUsCOQGYnMyHb8vGvLwPv0VI4bMhkiP/aWVRD/ySBpKCA+KrdhhW/e1715D 8kIGcu5s6J/bQ+F+MsrciuVYEeMttYsMh7RTSM+lfzlFpvVtXM1rBKzV8v00OHFRMoG5 KikkSY0W/znRwfSTLpMh0iRfnHPMCCRsK6tw/HEQzCz6WtOLoxPFKBkl/omoDDt6KpXf sz2X21g2I3AZX/9yyKMDZL3JXEPwDrzAv/mnmwWwRh4Pdyz3eaciA1x8enrNNr0sTlfj NwgIRmZwXk8GTFv5+4elIvZndoy1jFqEjYANMBD2zX3CAFcpKU6XYYklTN0/swrtkNZ0 QG/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=IFQ7FgNYkHKnJ+7Re2YcbighKYBLP+wUPPjsRnY2W6Q=; b=BTHuN3iYNra/C5oCD9kLFCKI5Vn3KZttJjCNLiIz5zPRLw5C4S9bbZJbaJARNNuhin iRjmvBH9v+P93Mz1yk9x0q06XOPYjy26EB+8c1my+tG4NqgNabZDRersfR7rjtfQp+a/ Q1TGrRh2Mb9TyZiBo6w/v6q8srfzoXzyt9ElkeV9D0ytNVhxo0GhiZjsy0gGZE6eqv15 GBV0OyEeP7qO+nw0ETLx0jKuEGxZ0c9BUaLBrR7h9mXu6forExVVw2EgTJdQz/WXuZvL EE/S9VD1jWBh3Bp6aqDu7DwKgDH+H9SbI13fxksaKXjisU8NFBKQV2Wl/Yx3xwKMC1uo zjJw== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c25-v6si12159703pgm.523.2018.07.30.17.40.57; Mon, 30 Jul 2018 17:41:11 -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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732175AbeGaCRf (ORCPT + 99 others); Mon, 30 Jul 2018 22:17:35 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:51538 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1732039AbeGaCRf (ORCPT ); Mon, 30 Jul 2018 22:17:35 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id C1C92402312B; Tue, 31 Jul 2018 00:40:01 +0000 (UTC) Received: from malachite.bss.redhat.com (dhcp-10-20-1-11.bss.redhat.com [10.20.1.11]) by smtp.corp.redhat.com (Postfix) with ESMTP id 75C2F7C5C; Tue, 31 Jul 2018 00:39:58 +0000 (UTC) From: Lyude Paul To: nouveau@lists.freedesktop.org Cc: "David Airlie" , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, "Ben Skeggs" , "Sean Paul" , "Maarten Lankhorst" , "Gustavo Padovan" Subject: [PATCH v3 0/8] Fix connector probing deadlocks from RPM bugs Date: Mon, 30 Jul 2018 20:39:45 -0400 Message-Id: <20180731003954.19962-1-lyude@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Tue, 31 Jul 2018 00:40:01 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Tue, 31 Jul 2018 00:40:01 +0000 (UTC) for IP:'10.11.54.5' DOMAIN:'int-mx05.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'lyude@redhat.com' RCPT:'' Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is the next version of https://patchwork.freedesktop.org/series/46815/ With a lot more thought put into it so as to avoid the potential deadlock scenarios I missed. This also required fixing some bogus DRM helper usage. Try and deadlock me now, nouveau. I dare you!!! Lyude Paul (8): drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement drm/nouveau: Enable polling even if we have runtime PM drm/fb_helper: Introduce hotplug_suspend/resume() drm/nouveau: Fix deadlock with fb_helper using new helpers drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() drm/nouveau: Respond to HPDs by probing one conn at a time drm/nouveau: Fix deadlocks in nouveau_connector_detect() drm/nouveau: Call pm_runtime_get_noresume() from hpd handlers drivers/gpu/drm/drm_fb_helper.c | 65 +++++++++++++++++++++ drivers/gpu/drm/nouveau/nouveau_connector.c | 60 +++++++++++++++---- drivers/gpu/drm/nouveau/nouveau_connector.h | 1 + drivers/gpu/drm/nouveau/nouveau_display.c | 7 ++- drivers/gpu/drm/nouveau/nouveau_drm.c | 16 +++-- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 1 + include/drm/drm_fb_helper.h | 20 +++++++ 7 files changed, 154 insertions(+), 16 deletions(-) -- 2.17.1