From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bjorn Helgaas Subject: Re: [RFC PATCH] pci: prevent putting pcie devices into lower device states on certain intel bridges Date: Fri, 27 Sep 2019 16:42:53 -0500 Message-ID: <20190927214252.GA65801@google.com> References: <20190927144421.22608-1-kherbst@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: <20190927144421.22608-1-kherbst-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Karol Herbst Cc: linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Mika Westerberg , "Rafael J. Wysocki" , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org WytjYyBSYWZhZWwsIE1pa2EsIGxpbnV4LXBtXQoKT24gRnJpLCBTZXAgMjcsIDIwMTkgYXQgMDQ6 NDQ6MjFQTSArMDIwMCwgS2Fyb2wgSGVyYnN0IHdyb3RlOgo+IEZpeGVzIHJ1bnBtIGJyZWFrYWdl IG1haW5seSBvbiBOdmlkaWEgR1BVcyBhcyB0aGV5IGFyZSBub3QgYWJsZSB0byByZXN1bWUuCgpJ IGRvbid0IGtub3cgd2hhdCBydW5wbSBpcy4gIFNvbWUgdXNlcnNwYWNlIHV0aWxpdHk/ICBNb2R1 bGUKcGFyYW1ldGVyPwoKPiBXb3JrcyBwZXJmZWN0bHkgd2l0aCB0aGlzIHdvcmthcm91bmQgYXBw bGllZC4KPiAKPiBSRkMgY29tbWVudDoKPiBXZSBhcmUgcXVpdGUgc3VyZSB0aGF0IHRoZXJlIGlz IGEgaGlnaGVyIGFtb3VudCBvZiBicmlkZ2VzIGFmZmVjdGVkIGJ5IHRoaXMsCj4gYnV0IEkgd2Fz IG9ubHkgdGVzdGluZyBpdCBvbiBteSBvd24gbWFjaGluZSBmb3Igbm93Lgo+IAo+IEkndmUgc3Ry ZXNzdGVzdGVkIHJ1bnBtIGJ5IGRvaW5nIDUwMDAgcnVucG0gY3ljbGVzIHdpdGggdGhhdCBwYXRj aCBhcHBsaWVkCj4gYW5kIG5ldmVyIHNhdyBpdCBmYWlsLgo+IAo+IEkgbWFpbmx5IHdhbnRlZCB0 byBnZXQgYSBkaXNjdXNzaW9uIGdvaW5nIG9uIGlmIHRoYXQncyBhIGZlYXNhYmxlIHdvcmthcm91 bmQKPiBpbmRlZWQgb3IgaWYgd2UgbmVlZCBzb21ldGhpbmcgYmV0dGVyLgo+IAo+IEkgYW0gYWxz byBzdXJlLCB0aGF0IHRoZSBub3V2ZWF1IGRyaXZlciBpdHNlbGYgaXNuJ3QgYXQgZmF1bHQgYXMg SSBhbSBhYmxlCj4gdG8gcmVwcm9kdWNlIHRoZSBzYW1lIGlzc3VlIGJ5IHBva2luZyBpbnRvIHNv bWUgUENJIHJlZ2lzdGVycyBvbiB0aGUgUENJZQo+IGJyaWRnZSB0byBwdXQgdGhlIEdQVSBpbnRv IEQzY29sZCBhcyBpdCdzIGRvbmUgaW4gQUNQSSBjb2RlLgo+IAo+IEkndmUgd3JpdHRlbiBhIGxp dHRsZSBweXRob24gc2NyaXB0IHRvIHJlcHJvZHVjZSB0aGlzIGlzc3VlIHdpdGhvdXQgdGhlIG5l ZWQKPiBvZiBsb2FkaW5nIG5vdXZlYXU6Cj4gaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQu Y29tL2thcm9saGVyYnN0L3BjaS1zdHViLXJ1bnBtL21hc3Rlci9udl9ydW5wbV9idWdfdGVzdC5w eQoKTmljZSBzY3JpcHQsIHRoYW5rcyBmb3Igc2hhcmluZyBpdCA6KSAgSSBjb3VsZCBsZWFybiBh IGxvdCBvZiB1c2VmdWwKcHl0aG9uIGJ5IHN0dWR5aW5nIGl0LgoKPiBTaWduZWQtb2ZmLWJ5OiBL YXJvbCBIZXJic3QgPGtoZXJic3RAcmVkaGF0LmNvbT4KPiBDYzogQmpvcm4gSGVsZ2FhcyA8Ymhl bGdhYXNAZ29vZ2xlLmNvbT4KPiBDYzogTHl1ZGUgUGF1bCA8bHl1ZGVAcmVkaGF0LmNvbT4KPiBD YzogbGludXgtcGNpQHZnZXIua2VybmVsLm9yZwo+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCj4gQ2M6IG5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gLS0tCj4gIGRy aXZlcnMvcGNpL3BjaS5jIHwgMzkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCj4gIDEgZmlsZSBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvcGNpL3BjaS5jIGIvZHJpdmVycy9wY2kvcGNpLmMKPiBpbmRleCAwODhmY2RjOGQy YjQuLjlkYmQyOWNlZDFhYyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL3BjaS9wY2kuYwo+ICsrKyBi L2RyaXZlcnMvcGNpL3BjaS5jCj4gQEAgLTc5OSw2ICs3OTksNDIgQEAgc3RhdGljIGlubGluZSBi b29sIHBsYXRmb3JtX3BjaV9icmlkZ2VfZDMoc3RydWN0IHBjaV9kZXYgKmRldikKPiAgCXJldHVy biBwY2lfcGxhdGZvcm1fcG0gPyBwY2lfcGxhdGZvcm1fcG0tPmJyaWRnZV9kMyhkZXYpIDogZmFs c2U7Cj4gIH0KPiAgCj4gKy8qCj4gKyAqIHNvbWUgaW50ZWwgYnJpZGdlcyBjYXVzZSBzZXJpb3Vz IGlzc3VlcyB3aXRoIHJ1bnBtIGlmIHRoZSBjbGllbnQgZGV2aWNlCj4gKyAqIGlzIHB1dCBpbnRv IEQxL0QyL0QzaG90IGJlZm9yZSBwdXR0aW5nIHRoZSBjbGllbnQgaW50byBEM2NvbGQgdmlhCj4g KyAqIHBsYXRmb3JtIG1lYW5zIChnZW5lcmFsbHkgQUNQSSkuCgpZb3UgbWVudGlvbiBOdmlkaWEg R1BVcyBhYm92ZSwgYnV0IEkgZ3Vlc3MgdGhlIHNhbWUgaXNzdWUgbWF5IGFmZmVjdApvdGhlciBk ZXZpY2VzPyAgSSB3b3VsZCByZWFsbHkgbGlrZSB0byBjaGFzZSB0aGlzIGRvd24gdG8gYSBtb3Jl CnNwZWNpZmljIGlzc3VlLCBlLmcuLCBhIGhhcmR3YXJlIGRlZmVjdCB3aXRoIGVycmF0dW0sIGFu IEFDUEkgZGVmZWN0LApvciBhIExpbnV4IGRlZmVjdC4gIFdpdGhvdXQgdGhlIHNwZWNpZmljcywg dGhpcyBpcyBqdXN0IGEgYmFuZC1haWQuCgpJIGRvbid0IHNlZSBhbnkgcmVsZXZhbnQgcmVxdWly ZW1lbnRzIGluIHRoZSBfT0ZGIGRlc2NyaXB0aW9uLCBidXQgSQpkb24ndCBrbm93IG11Y2ggYWJv dXQgQUNQSSBwb3dlciBjb250cm9sLgoKWW91ciBzY3JpcHQgYWxsb3dzIHNldmVyYWwgc2NlbmFy aW9zOyBJICpndWVzcyogdGhlIG9uZSB0aGF0IGNhdXNlcwp0aGUgcHJvYmxlbSBpczoKCiAgLSB3 cml0ZSAzIChEM2hvdCkgdG8gR1BVIFBvd2VyU3RhdGUgKFBDSUVfUE1fUkVHID09IDB4NjQsIEkg YXNzdW1lCiAgICBQTSBDYXBhYmlsaXR5IENvbnRyb2wgUmVnaXN0ZXIpCiAgLSB3cml0ZSAzIChE M2hvdCkgdG8gYnJpZGdlIFBvd2VyU3RhdGUgKDB4ODQsIEkgYXNzdW1lIFBNIENhcGFiaWxpdHkK ICAgIENvbnRyb2wgUmVnaXN0ZXIpCiAgLSBydW4gX09GRiBvbiB0aGUgcG93ZXIgcmVzb3VyY2Ug Zm9yIHRoZSBicmlkZ2UKCkZyb20geW91ciBzY3JpcHQgSSBhc3N1bWUgeW91IGRvOgoKICAtIHJ1 biBfT04gb24gdGhlIHBvd2VyIHJlc291cmNlIGZvciB0aGUgYnJpZGdlCiAgLSB3cml0ZSAwIChE MCkgdG8gdGhlIGJyaWRnZSBQb3dlclN0YXRlCgpZb3UgZG8gKm5vdCogd3JpdGUgdGhlIEdQVSBQ b3dlclN0YXRlICh3aGljaCB3ZSBjYW4ndCBkbyBpZiB0aGUgR1BVIGlzCmluIEQzY29sZCkuICBJ cyB0aGVyZSBzb21lIGFzc3VtcHRpb24gdGhhdCBpdCBjb21lcyBvdXQgb2YgRDNjb2xkIHZpYQpz b21lIG90aGVyIG1lY2hhbmlzbSwgZS5nLiwgaXMgdGhlIF9PTiBzdXBwb3NlZCB0byB3YWtlIHVw IHRoZSBHUFU/CgpXaGF0IGV4YWN0bHkgaXMgdGhlIHNlcmlvdXMgaXNzdWU/ICBJIGd1ZXNzIGl0 J3MgdGhhdCB0aGUgcmVzY2FuCmRvZXNuJ3QgZGV0ZWN0IHRoZSBHUFUsIHdoaWNoIG1lYW5zIGl0 J3Mgbm90IHJlc3BvbmRpbmcgdG8gY29uZmlnCmFjY2Vzc2VzPyAgSXMgdGhlcmUgYW55IHRpbWlu ZyBjb21wb25lbnQgaGVyZSwgZS5nLiwgbWF5YmUgd2UncmUKbWlzc2luZyBzb21lIGRlbGF5IGxp a2UgdGhlIG9uZXMgTWlrYSBpcyBhZGRpbmcgdG8gdGhlIHJlc2V0IHBhdGhzPwoKPiArICoKPiAr ICogc2tpcHBpbmcgdGhpcyBtYWtlcyBydW5wbSB3b3JrIHBlcmZlY3RseSBmaW5lIG9uIHN1Y2gg ZGV2aWNlcy4KPiArICoKPiArICogQXMgZmFyIGFzIHdlIGtub3cgb25seSBza3lsYWtlIGFuZCBr YWJ5IGxha2UgU29DcyBhcmUgYWZmZWN0ZWQuCj4gKyAqLwo+ICtzdGF0aWMgdW5zaWduZWQgc2hv cnQgaW50ZWxfYnJva2VuX2QzX2JyaWRnZXNbXSA9IHsKPiArCS8qIGtibCAqLwo+ICsJMHgxOTAx LAo+ICt9Owo+ICsKPiArc3RhdGljIGlubGluZSBib29sIGludGVsX2Jyb2tlbl9wY2lfcG0oc3Ry dWN0IHBjaV9idXMgKmJ1cykKPiArewo+ICsJc3RydWN0IHBjaV9kZXYgKmJyaWRnZTsKPiArCWlu dCBpOwo+ICsKPiArCWlmICghYnVzIHx8ICFidXMtPnNlbGYpCj4gKwkJcmV0dXJuIGZhbHNlOwo+ ICsKPiArCWJyaWRnZSA9IGJ1cy0+c2VsZjsKPiArCWlmIChicmlkZ2UtPnZlbmRvciAhPSBQQ0lf VkVORE9SX0lEX0lOVEVMKQo+ICsJCXJldHVybiBmYWxzZTsKPiArCj4gKwlmb3IgKGkgPSAwOyBp IDwgQVJSQVlfU0laRShpbnRlbF9icm9rZW5fZDNfYnJpZGdlcyk7IGkrKykgewo+ICsJCWlmIChi cmlkZ2UtPmRldmljZSA9PSBpbnRlbF9icm9rZW5fZDNfYnJpZGdlc1tpXSkgewo+ICsJCQlwY2lf ZXJyKGJyaWRnZSwgImZvdW5kIGJyb2tlbiBpbnRlbCBicmlkZ2VcbiIpOwoKSWYgdGhpcyBlbmRz IHVwIGJlaW5nIGEgaGFyZHdhcmUgZGVmZWN0LCB3ZSBzaG91bGQgdXNlIGEgcXVpcmsgdG8gc2V0 CmEgYml0IGluIHRoZSBwY2lfZGV2IG9uY2UsIGFzIHdlIGRvIGZvciBicm9rZW5faW50eF9tYXNr aW5nIGFuZApzaW1pbGFyIGJpdHMuCgo+ICsJCQlyZXR1cm4gdHJ1ZTsKPiArCQl9Cj4gKwl9Cj4g Kwo+ICsJcmV0dXJuIGZhbHNlOwo+ICt9Cj4gKwo+ICAvKioKPiAgICogcGNpX3Jhd19zZXRfcG93 ZXJfc3RhdGUgLSBVc2UgUENJIFBNIHJlZ2lzdGVycyB0byBzZXQgdGhlIHBvd2VyIHN0YXRlIG9m Cj4gICAqCQkJICAgICBnaXZlbiBQQ0kgZGV2aWNlCj4gQEAgLTgyNyw2ICs4NjMsOSBAQCBzdGF0 aWMgaW50IHBjaV9yYXdfc2V0X3Bvd2VyX3N0YXRlKHN0cnVjdCBwY2lfZGV2ICpkZXYsIHBjaV9w b3dlcl90IHN0YXRlKQo+ICAJaWYgKHN0YXRlIDwgUENJX0QwIHx8IHN0YXRlID4gUENJX0QzaG90 KQo+ICAJCXJldHVybiAtRUlOVkFMOwo+ICAKPiArCWlmIChzdGF0ZSAhPSBQQ0lfRDAgJiYgaW50 ZWxfYnJva2VuX3BjaV9wbShkZXYtPmJ1cykpCj4gKwkJcmV0dXJuIDA7Cj4gKwo+ICAJLyoKPiAg CSAqIFZhbGlkYXRlIGN1cnJlbnQgc3RhdGU6Cj4gIAkgKiBDYW4gZW50ZXIgRDAgZnJvbSBhbnkg c3RhdGUsIGJ1dCBpZiB3ZSBjYW4gb25seSBnbyBkZWVwZXIKPiAtLSAKPiAyLjIxLjAKPiAKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTm91dmVhdSBtYWls aW5nIGxpc3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1