From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukas Wunner Subject: Re: [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers Date: Tue, 13 Feb 2018 09:17:13 +0100 Message-ID: <20180213081713.GA8239@wunner.de> References: <20180211192314.GA22869@wunner.de> <20180211194154.GB22869@wunner.de> <20180212033947.GA19049@wunner.de> <20180212094500.22nvzzzpy6vrbqgc@wunner.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Alex Deucher Cc: Ismo Toijala , nouveau , Intel Graphics Development , Lai Jiangshan , Linux Kernel Mailing List , Maling list - DRI developers , Hans de Goede , Ben Skeggs , Dave Airlie , Alex Deucher , Tejun Heo , Liviu Dudau , Peter Wu List-Id: nouveau.vger.kernel.org T24gTW9uLCBGZWIgMTIsIDIwMTggYXQgMDE6NTg6MzJQTSAtMDUwMCwgQWxleCBEZXVjaGVyIHdy b3RlOgo+IE9uIE1vbiwgRmViIDEyLCAyMDE4IGF0IDQ6NDUgQU0sIEx1a2FzIFd1bm5lciA8bHVr YXNAd3VubmVyLmRlPiB3cm90ZToKPiA+IE9uIE1vbiwgRmViIDEyLCAyMDE4IGF0IDA5OjAzOjI2 QU0gKzAwMDAsIE1pa2UgTG90aGlhbiB3cm90ZToKPiA+PiBPbiAxMiBGZWJydWFyeSAyMDE4IGF0 IDAzOjM5LCBMdWthcyBXdW5uZXIgPGx1a2FzQHd1bm5lci5kZT4gd3JvdGU6Cj4gPj4gPiBPbiBN b24sIEZlYiAxMiwgMjAxOCBhdCAxMjozNTo1MUFNICswMDAwLCBNaWtlIExvdGhpYW4gd3JvdGU6 Cj4gPj4gPiA+IEkndmUgbm90IGJlZW4gYWJsZSB0byByZXByb2R1Y2UgdGhlIG9yaWdpbmFsIHBy b2JsZW0geW91J3JlIHRyeWluZyB0bwo+ID4+ID4gPiBzb2x2ZSBvbiBhbWRncHUgdGhhdHMgd2l0 aCBvciB3aXRob3V0IHlvdXIgcGF0Y2ggc2V0IGFuZCB0aGUgYWJvdmUKPiA+PiA+ID4gInRyaWdn ZXIiIHRvbwo+ID4KPiA+IE9rYXkgdGhlIHJlYXNvbiB5b3UncmUgbm90IHNlZWluZyBkZWFkbG9j a3MgaXMgYmVjYXVzZSB0aGUgb3V0cHV0IHBvbGwKPiA+IHdvcmtlciBpcyBub3QgZW5hYmxlZC4g IEFuZCB0aGUgb3V0cHV0IHBvbGwgd29ya2VyIGlzIG5vdCBlbmFibGVkCj4gPiBiZWNhdXNlIHlv dXIgZGlzY3JldGUgR1BVIGRvZXNuJ3QgaGF2ZSBhbnkgb3V0cHV0czoKPiA+Cj4gPiBbICAgIDAu MjY1NTY4XSBbZHJtOmRjX2NyZWF0ZV0gKkVSUk9SKiBEQzogTnVtYmVyIG9mIGNvbm5lY3RvcnMg aXMgemVybyEKPiA+Cj4gPiBUaGUgb3V0cHV0cyBhcmUgb25seSBwb2xsZWQgaWYgdGhlcmUgYXJl IGNvbm5lY3RvcnMgd2hpY2ggaGF2ZSB0aGUKPiA+IERSTV9DT05ORUNUT1JfUE9MTF9DT05ORUNU IG9yIERSTV9DT05ORUNUT1JfUE9MTF9ESVNDT05ORUNUIGZsYWcgc2V0Lgo+ID4gQW5kIHRoYXQg b25seSBldmVyIHNlZW1zIHRvIGJlIHRoZSBjYXNlIGZvciBWR0EgYW5kIERWSS4KPiA+Cj4gPiBX ZSBrbm93IGJhc2VkIG9uIGJ1Z3ppbGxhIHJlcG9ydHMgdGhhdCBoeWJyaWQgZ3JhcGhpY3MgbGFw dG9wcyBkbyBleGlzdAo+ID4gd2hpY2ggcG9sbCBvdXRwdXRzIHdpdGggcmFkZW9uIGFuZCBub3V2 ZWF1LiAgSWYgdGhlcmUgYXJlIG5vIGxhcHRvcHMKPiA+IHN1cHBvcnRlZCBieSBhbWRncHUgd2hv c2UgZGlzY3JldGUgR1BVIGhhcyBwb2xsZWQgY29ubmVjdG9ycywgdGhlbgo+ID4gcGF0Y2ggWzUv NV0gd291bGQgYmUgdW5uZWNlc3NhcnkuICBUaGF0IGlzIGZvciBBbGV4IHRvIGRlY2lkZS4KPiAK PiBNb3N0IGh5YnJpZCBsYXB0b3BzIGRvbid0IGhhdmUgZGlzcGxheSBjb25uZWN0b3JzIG9uIHRo ZSBkR1BVIGFuZCB3ZQo+IG9ubHkgdXNlIHBvbGxpbmcgb24gYW5hbG9nIGNvbm5lY3RvcnMsIHNv IHlvdSBhcmUgbm90IGxpa2VseSB0byBydW4KPiBpbnRvIHRoaXMgb24gcmVjZW50IGxhcHRvcHMu ICBUaGF0IHNhaWQsIEkgZG9uJ3Qga25vdyBpZiB0aGVyZSBpcyBzb21lCj4gT0VNIHN5c3RlbSBv dXQgdGhlcmUgd2l0aCBhIFZHQSBwb3J0IG9uIHRoZSBkR1BVIGluIGEgaHlicmlkIGxhcHRvcC4K PiBJIGd1ZXNzIGFub3RoZXIgb3B0aW9uIGlzIHRvIGp1c3QgZGlzYWJsZSBwb2xsaW5nIG9uIGh5 YnJpZCBsYXB0b3BzLgoKSWYgd2UgZG9uJ3Qga25vdyBmb3Igc3VyZSwgYXBwbHlpbmcgcGF0Y2gg WzUvNV0gd291bGQgc2VlbSB0byBiZSB0aGUKc2FmZXN0IGFwcHJvYWNoLiAgKEFzc3VtaW5nIGl0 IGRvZXNuJ3QgYnJlYWsgYW55dGhpbmcgZWxzZS4pCgpSaWdodCBub3cgcnVudGltZSBQTSBpcyBv bmx5IHVzZWQgb24gaHlicmlkIGdyYXBoaWNzIGRHUFVzIGJ5IG5vdXZlYXUsCnJhZGVvbiBhbmQg YW1kZ3B1LiAgV291bGQgaXQgYmUgY29uY2VpdmFibGUgdGhhdCBpdHMgdXNlIGlzIGV4cGFuZGVk CmJleW9uZCB0aGF0IGluIHRoZSBmdXR1cmU/ICBFLmcuIG9uIGEgZGVza3RvcCBtYWNoaW5lLCBp ZiBEUE1TIGlzIG9mZgpvbiBhbGwgc2NyZWVucywgd2h5IGtlZXAgdGhlIEdQVSBpbiBEMD8gIElm IHRoYXQgaXMgY29uY2VpdmFibGUsIGNoYW5jZXMKdGhhdCBhbmFsb2cgY29ubmVjdG9ycyBhcmUg cHJlc2VudCBhcmUgaGlnaGVyLCBhbmQgdGhlbiB0aGUgcGF0Y2ggd291bGQKYmUgbmVjZXNzYXJ5 IGFnYWluLiAgKE9mIGNvdXJzZSB0aGlzIHdvdWxkIG1lYW4gdGhhdCBhbmFsb2cgc2NyZWVucwp3 b3VsZG4ndCBsaWdodCB1cCBhdXRvbWF0aWNhbGx5IGlmIHRoZXkncmUgYXR0YWNoZWQgd2hpbGUg dGhlIEdQVSBpcwppbiBEM2hvdCwgYnV0IHRoZSB1c2VyIG1heSBmb3JiaWQgcnVudGltZSBQTSB2 aWEgc3lzZnMgaWYgdGhhdCBpcwp1bndhbnRlZC4pCgpUaGFua3MsCgpMdWthcwpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933722AbeBMIRR (ORCPT ); Tue, 13 Feb 2018 03:17:17 -0500 Received: from bmailout1.hostsharing.net ([83.223.95.100]:59127 "EHLO bmailout1.hostsharing.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933651AbeBMIRP (ORCPT ); Tue, 13 Feb 2018 03:17:15 -0500 Date: Tue, 13 Feb 2018 09:17:13 +0100 From: Lukas Wunner To: Alex Deucher Cc: Mike Lothian , Ismo Toijala , Hans de Goede , nouveau , Intel Graphics Development , Lai Jiangshan , Linux Kernel Mailing List , Maling list - DRI developers , Alex Deucher , Ben Skeggs , Tejun Heo , Dave Airlie , Liviu Dudau , Peter Wu Subject: Re: [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers Message-ID: <20180213081713.GA8239@wunner.de> References: <20180211192314.GA22869@wunner.de> <20180211194154.GB22869@wunner.de> <20180212033947.GA19049@wunner.de> <20180212094500.22nvzzzpy6vrbqgc@wunner.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Feb 12, 2018 at 01:58:32PM -0500, Alex Deucher wrote: > On Mon, Feb 12, 2018 at 4:45 AM, Lukas Wunner wrote: > > On Mon, Feb 12, 2018 at 09:03:26AM +0000, Mike Lothian wrote: > >> On 12 February 2018 at 03:39, Lukas Wunner wrote: > >> > On Mon, Feb 12, 2018 at 12:35:51AM +0000, Mike Lothian wrote: > >> > > I've not been able to reproduce the original problem you're trying to > >> > > solve on amdgpu thats with or without your patch set and the above > >> > > "trigger" too > > > > Okay the reason you're not seeing deadlocks is because the output poll > > worker is not enabled. And the output poll worker is not enabled > > because your discrete GPU doesn't have any outputs: > > > > [ 0.265568] [drm:dc_create] *ERROR* DC: Number of connectors is zero! > > > > The outputs are only polled if there are connectors which have the > > DRM_CONNECTOR_POLL_CONNECT or DRM_CONNECTOR_POLL_DISCONNECT flag set. > > And that only ever seems to be the case for VGA and DVI. > > > > We know based on bugzilla reports that hybrid graphics laptops do exist > > which poll outputs with radeon and nouveau. If there are no laptops > > supported by amdgpu whose discrete GPU has polled connectors, then > > patch [5/5] would be unnecessary. That is for Alex to decide. > > Most hybrid laptops don't have display connectors on the dGPU and we > only use polling on analog connectors, so you are not likely to run > into this on recent laptops. That said, I don't know if there is some > OEM system out there with a VGA port on the dGPU in a hybrid laptop. > I guess another option is to just disable polling on hybrid laptops. If we don't know for sure, applying patch [5/5] would seem to be the safest approach. (Assuming it doesn't break anything else.) Right now runtime PM is only used on hybrid graphics dGPUs by nouveau, radeon and amdgpu. Would it be conceivable that its use is expanded beyond that in the future? E.g. on a desktop machine, if DPMS is off on all screens, why keep the GPU in D0? If that is conceivable, chances that analog connectors are present are higher, and then the patch would be necessary again. (Of course this would mean that analog screens wouldn't light up automatically if they're attached while the GPU is in D3hot, but the user may forbid runtime PM via sysfs if that is unwanted.) Thanks, Lukas