From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.1 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,URIBL_BLOCKED,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5183BC00449 for ; Fri, 5 Oct 2018 07:14:47 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id F09B020875 for ; Fri, 5 Oct 2018 07:14:46 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="UFWbQcbW" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F09B020875 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ffwll.ch Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728168AbeJEOMI (ORCPT ); Fri, 5 Oct 2018 10:12:08 -0400 Received: from mail-ed1-f65.google.com ([209.85.208.65]:39733 "EHLO mail-ed1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727036AbeJEOMH (ORCPT ); Fri, 5 Oct 2018 10:12:07 -0400 Received: by mail-ed1-f65.google.com with SMTP id h4-v6so10743917edi.6 for ; Fri, 05 Oct 2018 00:14:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=sender:date:from:to:cc:subject:message-id:mail-followup-to :references:mime-version:content-disposition:in-reply-to:user-agent; bh=X9OUUPlPUIYd359pCrRelujMeGdy2teGRul9Hg6ZvQ0=; b=UFWbQcbWoIXgm82NeLiC6TyIjiMbLOXMsfkugusDRjourRVkl+VMV1WN+PaVWNvj9s PaDpbYfOaYL1eAV0b4V0Rujx2wnmtEvIPYDC1Gmj9VoL8FclYmj0Pk8TWpE/gPPc2sue TXdasSsN2viiJZj8zMVlbToX3voMwH32kEMcA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :mail-followup-to:references:mime-version:content-disposition :in-reply-to:user-agent; bh=X9OUUPlPUIYd359pCrRelujMeGdy2teGRul9Hg6ZvQ0=; b=uAvxaeUMLz9QnKrPpccleE9BBmAL5+jEK2Gb3JAg9b8szzKJoz914Dsds3yGwUAwpi 6HDp5+FjUy8Q38gtwcTUiLzUBw4KKPXDew2OLbavod1QrWUZ8rO+3OdsoJHW2SnK1VBU 33bN5lLQ6exxXWrllp0LgZhJpnADdN8BpQBQIPxZnbmcIDqrrdpAQS0/rM+FXdImkmGY Ul0TdxBTDmLonZTwxNcIXmaEIv5kKIm0fOSKX2zXQgd2JMiebrTxSMl4mpR3NjU6RvxW A+ouOvpOvPZiKpWGoICI6R5GNUQbKrU1WWyR4poiZUgbSQXKbYJkd/xiQGH1zIsYmwVn 6zJg== X-Gm-Message-State: ABuFfohaxvBfS6bHNaJs6382QgIewLAW6IY2iLVh0527M2V4hjHBBOLk L21j8FSR5HJIPnBm73KWC9KhKg== X-Google-Smtp-Source: ACcGV602WQTL/znw/FlMwD2w4wFEQ8jxaOOo+x9tP7yBS5Z8iT8QcaCM8mHSB6KqcpSYQYYALNvEYQ== X-Received: by 2002:a17:906:6812:: with SMTP id k18-v6mr10090737ejr.47.1538723683180; Fri, 05 Oct 2018 00:14:43 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:569e:0:3106:d637:d723:e855]) by smtp.gmail.com with ESMTPSA id d23-v6sm2026355eds.47.2018.10.05.00.14.41 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 05 Oct 2018 00:14:42 -0700 (PDT) Date: Fri, 5 Oct 2018 09:14:40 +0200 From: Daniel Vetter To: Lyude Paul Cc: nouveau@lists.freedesktop.org, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, Daniel Vetter , Jani Nikula , stable@vger.kernel.org, Ben Skeggs , David Airlie , Ville =?iso-8859-1?Q?Syrj=E4l=E4?= , Thierry Reding , linux-kernel@vger.kernel.org Subject: Re: [PATCH v4 2/5] drm/nouveau: Fix nv50_mstc->best_encoder() Message-ID: <20181005071440.GU31561@phenom.ffwll.local> Mail-Followup-To: Lyude Paul , nouveau@lists.freedesktop.org, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, Jani Nikula , stable@vger.kernel.org, Ben Skeggs , David Airlie , Ville =?iso-8859-1?Q?Syrj=E4l=E4?= , Thierry Reding , linux-kernel@vger.kernel.org References: <20181005002956.7317-1-lyude@redhat.com> <20181005002956.7317-3-lyude@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20181005002956.7317-3-lyude@redhat.com> X-Operating-System: Linux phenom 4.14.0-1-amd64 User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Oct 04, 2018 at 08:29:51PM -0400, Lyude Paul wrote: > As mentioned in the previous commit, we currently prevent new modesets > on recently-removed MST connectors by returning no encoder from our > ->best_encoder() callback once the MST port has disappeared. This is > wrong however, because it prevents legacy modesetting users from being > able to disable CRTCs on MST connectors after the connector's respective > topology has disappeared. > > So, fix this by instead by just always returning a valid encoder. > > Signed-off-by: Lyude Paul > Cc: stable@vger.kernel.org > > Changes since v2: > - Remove usage of atomic MST helper for now, since that got replaced > with a much simpler solution > > Signed-off-by: Lyude Paul Reviewed-by: Daniel Vetter > --- > drivers/gpu/drm/nouveau/dispnv50/disp.c | 14 ++++---------- > 1 file changed, 4 insertions(+), 10 deletions(-) > > diff --git a/drivers/gpu/drm/nouveau/dispnv50/disp.c b/drivers/gpu/drm/nouveau/dispnv50/disp.c > index 5691dfa1db6f..63a23a80f279 100644 > --- a/drivers/gpu/drm/nouveau/dispnv50/disp.c > +++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c > @@ -843,22 +843,16 @@ nv50_mstc_atomic_best_encoder(struct drm_connector *connector, > { > struct nv50_head *head = nv50_head(connector_state->crtc); > struct nv50_mstc *mstc = nv50_mstc(connector); > - if (mstc->port) { > - struct nv50_mstm *mstm = mstc->mstm; > - return &mstm->msto[head->base.index]->encoder; > - } > - return NULL; > + > + return &mstc->mstm->msto[head->base.index]->encoder; > } > > static struct drm_encoder * > nv50_mstc_best_encoder(struct drm_connector *connector) > { > struct nv50_mstc *mstc = nv50_mstc(connector); > - if (mstc->port) { > - struct nv50_mstm *mstm = mstc->mstm; > - return &mstm->msto[0]->encoder; > - } > - return NULL; > + > + return &mstc->mstm->msto[0]->encoder; > } > > static enum drm_mode_status > -- > 2.17.1 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v4 2/5] drm/nouveau: Fix nv50_mstc->best_encoder() Date: Fri, 5 Oct 2018 09:14:40 +0200 Message-ID: <20181005071440.GU31561@phenom.ffwll.local> References: <20181005002956.7317-1-lyude@redhat.com> <20181005002956.7317-3-lyude@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20181005002956.7317-3-lyude@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Lyude Paul Cc: dri-devel@lists.freedesktop.org, David Airlie , nouveau@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org, Daniel Vetter , Thierry Reding , Ben Skeggs List-Id: nouveau.vger.kernel.org T24gVGh1LCBPY3QgMDQsIDIwMTggYXQgMDg6Mjk6NTFQTSAtMDQwMCwgTHl1ZGUgUGF1bCB3cm90 ZToKPiBBcyBtZW50aW9uZWQgaW4gdGhlIHByZXZpb3VzIGNvbW1pdCwgd2UgY3VycmVudGx5IHBy ZXZlbnQgbmV3IG1vZGVzZXRzCj4gb24gcmVjZW50bHktcmVtb3ZlZCBNU1QgY29ubmVjdG9ycyBi eSByZXR1cm5pbmcgbm8gZW5jb2RlciBmcm9tIG91cgo+IC0+YmVzdF9lbmNvZGVyKCkgY2FsbGJh Y2sgb25jZSB0aGUgTVNUIHBvcnQgaGFzIGRpc2FwcGVhcmVkLiBUaGlzIGlzCj4gd3JvbmcgaG93 ZXZlciwgYmVjYXVzZSBpdCBwcmV2ZW50cyBsZWdhY3kgbW9kZXNldHRpbmcgdXNlcnMgZnJvbSBi ZWluZwo+IGFibGUgdG8gZGlzYWJsZSBDUlRDcyBvbiBNU1QgY29ubmVjdG9ycyBhZnRlciB0aGUg Y29ubmVjdG9yJ3MgcmVzcGVjdGl2ZQo+IHRvcG9sb2d5IGhhcyBkaXNhcHBlYXJlZC4KPiAKPiBT bywgZml4IHRoaXMgYnkgaW5zdGVhZCBieSBqdXN0IGFsd2F5cyByZXR1cm5pbmcgYSB2YWxpZCBl bmNvZGVyLgo+IAo+IFNpZ25lZC1vZmYtYnk6IEx5dWRlIFBhdWwgPGx5dWRlQHJlZGhhdC5jb20+ Cj4gQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcKPiAKPiBDaGFuZ2VzIHNpbmNlIHYyOgo+IC0g UmVtb3ZlIHVzYWdlIG9mIGF0b21pYyBNU1QgaGVscGVyIGZvciBub3csIHNpbmNlIHRoYXQgZ290 IHJlcGxhY2VkCj4gICB3aXRoIGEgbXVjaCBzaW1wbGVyIHNvbHV0aW9uCj4gCj4gU2lnbmVkLW9m Zi1ieTogTHl1ZGUgUGF1bCA8bHl1ZGVAcmVkaGF0LmNvbT4KClJldmlld2VkLWJ5OiBEYW5pZWwg VmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJt L25vdXZlYXUvZGlzcG52NTAvZGlzcC5jIHwgMTQgKysrKy0tLS0tLS0tLS0KPiAgMSBmaWxlIGNo YW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYwo+IGluZGV4IDU2OTFkZmExZGI2Zi4uNjNhMjNhODBm Mjc5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3Au Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjUwL2Rpc3AuYwo+IEBAIC04 NDMsMjIgKzg0MywxNiBAQCBudjUwX21zdGNfYXRvbWljX2Jlc3RfZW5jb2RlcihzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICB7Cj4gIAlzdHJ1Y3QgbnY1MF9oZWFkICpoZWFkID0g bnY1MF9oZWFkKGNvbm5lY3Rvcl9zdGF0ZS0+Y3J0Yyk7Cj4gIAlzdHJ1Y3QgbnY1MF9tc3RjICpt c3RjID0gbnY1MF9tc3RjKGNvbm5lY3Rvcik7Cj4gLQlpZiAobXN0Yy0+cG9ydCkgewo+IC0JCXN0 cnVjdCBudjUwX21zdG0gKm1zdG0gPSBtc3RjLT5tc3RtOwo+IC0JCXJldHVybiAmbXN0bS0+bXN0 b1toZWFkLT5iYXNlLmluZGV4XS0+ZW5jb2RlcjsKPiAtCX0KPiAtCXJldHVybiBOVUxMOwo+ICsK PiArCXJldHVybiAmbXN0Yy0+bXN0bS0+bXN0b1toZWFkLT5iYXNlLmluZGV4XS0+ZW5jb2RlcjsK PiAgfQo+ICAKPiAgc3RhdGljIHN0cnVjdCBkcm1fZW5jb2RlciAqCj4gIG52NTBfbXN0Y19iZXN0 X2VuY29kZXIoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiAgewo+ICAJc3RydWN0 IG52NTBfbXN0YyAqbXN0YyA9IG52NTBfbXN0Yyhjb25uZWN0b3IpOwo+IC0JaWYgKG1zdGMtPnBv cnQpIHsKPiAtCQlzdHJ1Y3QgbnY1MF9tc3RtICptc3RtID0gbXN0Yy0+bXN0bTsKPiAtCQlyZXR1 cm4gJm1zdG0tPm1zdG9bMF0tPmVuY29kZXI7Cj4gLQl9Cj4gLQlyZXR1cm4gTlVMTDsKPiArCj4g KwlyZXR1cm4gJm1zdGMtPm1zdG0tPm1zdG9bMF0tPmVuY29kZXI7Cj4gIH0KPiAgCj4gIHN0YXRp YyBlbnVtIGRybV9tb2RlX3N0YXR1cwo+IC0tIAo+IDIuMTcuMQo+IAoKLS0gCkRhbmllbCBWZXR0 ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xs LmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=