From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/nouveau/fbcon: fix deadlock with FBIOPUT_CON2FBMAP Date: Wed, 13 Jul 2016 11:54:49 +0200 Message-ID: <20160713095449.GZ23520@phenom.ffwll.local> References: <20160712164934.1390-1-peter@lekensteyn.nl> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20160712164934.1390-1-peter-VTkQYDcBqhK7DlmcbJSQ7g@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Peter Wu Cc: Dave Airlie , Chris Wilson , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBKdWwgMTIsIDIwMTYgYXQgMDY6NDk6MzRQTSArMDIwMCwgUGV0ZXIgV3Ugd3JvdGU6 Cj4gVGhlIEZCSU9QVVRfQ09OMkZCTUFQIGlvY3RsIHRha2VzIGEgY29uc29sZV9sb2NrKCkuIFdo ZW4gdGhpcyBpcyBjYWxsZWQKPiB3aGlsZSBub3V2ZWF1IHdhcyBydW50aW1lIHN1c3BlbmRlZCwg YSBkZWFkbG9jayB3b3VsZCBvY2N1ciBkdWUgdG8KPiBub3V2ZWF1X2ZiY29uX3NldF9zdXNwZW5k IGFsc28gdHJ5aW5nIHRvIG9idGFpbiBjb25zb2xlX2xvY2soKS4KPiAKPiBGaXggdGhpcyBieSBk ZWxheWluZyB0aGUgZHJtX2ZiX2hlbHBlcl9zZXRfc3VzcGVuZCBjYWxsLiBCYXNlZCBvbiB0aGUK PiBpOTE1IGNvZGUgKHdoaWNoIHdhcyBkb25lIGZvciBwZXJmb3JtYW5jZSByZWFzb25zIHRob3Vn aCkuCj4gCj4gQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IENj OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+IFNpZ25lZC1vZmYtYnk6 IFBldGVyIFd1IDxwZXRlckBsZWtlbnN0ZXluLm5sPgo+IC0tLQo+IFRlc3RlZCBvbiB0b3Agb2Yg djQuNy1yYzUsIHRoZSBkZWFkbG9jayBpcyBnb25lLgoKSWYgd2UgYm90aGVyIHdpdGggdGhpcywg aXQgc2hvdWxkIGltbyBiZSBtb3ZlZCBpbnRvIHRoZSBkcm1fZmJfaGVscGVyLmMKZnVuY3Rpb24g ZHJtX2ZiX2hlbHBlcl9zZXRfc3VzcGVuZCgpLiBCdXQgdGhpcyBhbHNvIHNtZWxscyBsaWtlIHNv bWUga2luZApvZiBiYWQgZHVjdC10YXBlLiBJIHRoaW5rIEx1a2FzIGlzIHdvcmtpbmcgb24gc29t ZSBvdGhlciBycG0gdnMuIGZiZGV2CmRlYWRsb2NrcywgbWF5YmUgd2UgY291bGQgZml4IHRoZW0g YWxsIHdpdGggb25lIHByb3BlciBmaXg/IEkndmUgbWFkZSBzb21lCmNvbW1lbnRzIG9uIEx1a2Fz JyBsYXN0IHBhdGNoIHNlcmllcy4KCkJlc2lkZXMgdGhpcywgd2hlbiBmaXhpbmcgYSBkZWFkbG9j ayBwbHMgcHJvdmlkZSBtb3JlIGRldGFpbHMgYWJvdXQgdGhlCnByZWNpc2UgY2FsbGNoYWluIGFu ZCB0aGUgbG9ja3MgaW52b2x2ZWQgaW4gdGhlIGRlYWRsb2NrLiBJZiB5b3UKZGlzY292ZXJlZCB0 aGlzIHVzaW5nIGxvY2tkZXAsIHRoZW4ganVzdCBhZGQgdGhlIGVudGlyZSBsb2NrZGVwIHNwbGF0 IHRvCnRoZSBjb21taXQgbWVzc2FnZS4gT3RoZXJ3aXNlIHRoZXJlJ3MgbG90cyBvZiBndWVzc3dv cmsgaW52b2x2ZWQgaGVyZS4KLURhbmllbAoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL25vdXZl YXUvbm91dmVhdV9kcm0uYyAgIHwgIDQgKy0tCj4gIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25v dXZlYXVfZHJ2LmggICB8ICAxICsKPiAgZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV9m YmNvbi5jIHwgNTQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfZmJjb24uaCB8ICAyICstCj4gIDQgZmlsZXMgY2hhbmdl ZCwgNTAgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfZHJtLmMgYi9kcml2ZXJzL2dwdS9kcm0vbm91 dmVhdS9ub3V2ZWF1X2RybS5jCj4gaW5kZXggMTFmOGRkOS4uZjlhMmMxMCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X2RybS5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL25vdXZlYXUvbm91dmVhdV9kcm0uYwo+IEBAIC01NTIsNyArNTUyLDcgQEAgbm91dmVh dV9kb19zdXNwZW5kKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGJvb2wgcnVudGltZSkKPiAgCj4g IAlpZiAoZGV2LT5tb2RlX2NvbmZpZy5udW1fY3J0Yykgewo+ICAJCU5WX0lORk8oZHJtLCAic3Vz cGVuZGluZyBjb25zb2xlLi4uXG4iKTsKPiAtCQlub3V2ZWF1X2ZiY29uX3NldF9zdXNwZW5kKGRl diwgMSk7Cj4gKwkJbm91dmVhdV9mYmNvbl9zZXRfc3VzcGVuZChkZXYsIEZCSU5GT19TVEFURV9T VVNQRU5ERUQsIHRydWUpOwo+ICAJCU5WX0lORk8oZHJtLCAic3VzcGVuZGluZyBkaXNwbGF5Li4u XG4iKTsKPiAgCQlyZXQgPSBub3V2ZWF1X2Rpc3BsYXlfc3VzcGVuZChkZXYsIHJ1bnRpbWUpOwo+ ICAJCWlmIChyZXQpCj4gQEAgLTYzNSw3ICs2MzUsNyBAQCBub3V2ZWF1X2RvX3Jlc3VtZShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCBib29sIHJ1bnRpbWUpCj4gIAkJTlZfSU5GTyhkcm0sICJyZXN1 bWluZyBkaXNwbGF5Li4uXG4iKTsKPiAgCQlub3V2ZWF1X2Rpc3BsYXlfcmVzdW1lKGRldiwgcnVu dGltZSk7Cj4gIAkJTlZfSU5GTyhkcm0sICJyZXN1bWluZyBjb25zb2xlLi4uXG4iKTsKPiAtCQlu b3V2ZWF1X2ZiY29uX3NldF9zdXNwZW5kKGRldiwgMCk7Cj4gKwkJbm91dmVhdV9mYmNvbl9zZXRf c3VzcGVuZChkZXYsIEZCSU5GT19TVEFURV9SVU5OSU5HLCBmYWxzZSk7Cj4gIAl9Cj4gIAo+ICAJ cmV0dXJuIDA7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVf ZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X2Rydi5oCj4gaW5kZXggODIy YTAyMS4uYTc0M2QxOSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2 ZWF1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV9kcnYuaAo+ IEBAIC0xNDcsNiArMTQ3LDcgQEAgc3RydWN0IG5vdXZlYXVfZHJtIHsKPiAgCXN0cnVjdCBub3V2 ZWF1X2NoYW5uZWwgKmNoYW5uZWw7Cj4gIAlzdHJ1Y3QgbnZrbV9ncHVvYmogKm5vdGlmeTsKPiAg CXN0cnVjdCBub3V2ZWF1X2ZiZGV2ICpmYmNvbjsKPiArCXN0cnVjdCB3b3JrX3N0cnVjdCBmYmRl dl9zdXNwZW5kX3dvcms7Cj4gIAlzdHJ1Y3QgbnZpZl9vYmplY3QgbnZzdzsKPiAgCXN0cnVjdCBu dmlmX29iamVjdCBudGZ5Owo+ICAJc3RydWN0IG52aWZfbm90aWZ5IGZsaXA7Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfZmJjb24uYyBiL2RyaXZlcnMvZ3B1 L2RybS9ub3V2ZWF1L25vdXZlYXVfZmJjb24uYwo+IGluZGV4IGQxZjI0OGYuLjA4OTE1NmEgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV9mYmNvbi5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV9mYmNvbi5jCj4gQEAgLTQ5MiwxOSAr NDkyLDUzIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2ZiX2hlbHBlcl9mdW5jcyBub3V2ZWF1 X2ZiY29uX2hlbHBlcl9mdW5jcyA9IHsKPiAgCS5mYl9wcm9iZSA9IG5vdXZlYXVfZmJjb25fY3Jl YXRlLAo+ICB9Owo+ICAKPiArc3RhdGljIHZvaWQgbm91dmVhdV9mYmNvbl9zdXNwZW5kX3dvcmtl cihzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCj4gK3sKPiArCW5vdXZlYXVfZmJjb25fc2V0X3N1 c3BlbmQoY29udGFpbmVyX29mKHdvcmssCj4gKwkJCQkJICAgICAgIHN0cnVjdCBub3V2ZWF1X2Ry bSwKPiArCQkJCQkgICAgICAgZmJkZXZfc3VzcGVuZF93b3JrKS0+ZGV2LAo+ICsJCQkJICBGQklO Rk9fU1RBVEVfUlVOTklORywKPiArCQkJCSAgdHJ1ZSk7Cj4gK30KPiArCj4gIHZvaWQKPiAtbm91 dmVhdV9mYmNvbl9zZXRfc3VzcGVuZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgc3RhdGUp Cj4gK25vdXZlYXVfZmJjb25fc2V0X3N1c3BlbmQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50 IHN0YXRlLCBib29sIHN5bmNocm9ub3VzKQo+ICB7Cj4gIAlzdHJ1Y3Qgbm91dmVhdV9kcm0gKmRy bSA9IG5vdXZlYXVfZHJtKGRldik7Cj4gLQlpZiAoZHJtLT5mYmNvbikgewo+IC0JCWNvbnNvbGVf bG9jaygpOwo+IC0JCWlmIChzdGF0ZSA9PSBGQklORk9fU1RBVEVfUlVOTklORykKPiAtCQkJbm91 dmVhdV9mYmNvbl9hY2NlbF9yZXN0b3JlKGRldik7Cj4gLQkJZHJtX2ZiX2hlbHBlcl9zZXRfc3Vz cGVuZCgmZHJtLT5mYmNvbi0+aGVscGVyLCBzdGF0ZSk7Cj4gKwlpZiAoIWRybS0+ZmJjb24pCj4g KwkJcmV0dXJuOwo+ICsKPiArCWlmIChzeW5jaHJvbm91cykgewo+ICsJCS8qIEZsdXNoIGFueSBw ZW5kaW5nIHdvcmsgdG8gdHVybiB0aGUgY29uc29sZSBvbiwgYW5kIHRoZW4KPiArCQkgKiB3YWl0 IHRvIHR1cm4gaXQgb2ZmLiBJdCBtdXN0IGJlIHN5bmNocm9ub3VzIGFzIHdlIGFyZQo+ICsJCSAq IGFib3V0IHRvIHN1c3BlbmQgb3IgdW5sb2FkIHRoZSBkcml2ZXIuCj4gKwkJICoKPiArCQkgKiBO b3RlIHRoYXQgZnJvbSB3aXRoaW4gdGhlIHdvcmstaGFuZGxlciwgd2UgY2Fubm90IGZsdXNoCj4g KwkJICogb3Vyc2VsdmVzLCBzbyBvbmx5IGZsdXNoIG91dHN0YW5kaW5nIHdvcmsgdXBvbiBzdXNw ZW5kIQo+ICsJCSAqLwo+ICAJCWlmIChzdGF0ZSAhPSBGQklORk9fU1RBVEVfUlVOTklORykKPiAt CQkJbm91dmVhdV9mYmNvbl9hY2NlbF9zYXZlX2Rpc2FibGUoZGV2KTsKPiAtCQljb25zb2xlX3Vu bG9jaygpOwo+ICsJCQlmbHVzaF93b3JrKCZkcm0tPmZiZGV2X3N1c3BlbmRfd29yayk7Cj4gKwkJ Y29uc29sZV9sb2NrKCk7Cj4gKwl9IGVsc2Ugewo+ICsJCS8qCj4gKwkJICogVGhlIGNvbnNvbGUg bG9jayBjYW4gYmUgcHJldHR5IGNvbnRlbnRlZCBvbiByZXN1bWUgZHVlCj4gKwkJICogdG8gYWxs IHRoZSBwcmludGsgYWN0aXZpdHkuICBUcnkgdG8ga2VlcCBpdCBvdXQgb2YgdGhlIGhvdAo+ICsJ CSAqIHBhdGggb2YgcmVzdW1lIGlmIHBvc3NpYmxlLiAgVGhpcyBhbHNvIHByZXZlbnRzIGEgZGVh ZGxvY2sKPiArCQkgKiB3aXRoIEZCSU9QVVRfQ09OMkZCTUFQLgo+ICsJCSAqLwo+ICsJCVdBUk5f T04oc3RhdGUgIT0gRkJJTkZPX1NUQVRFX1JVTk5JTkcpOwo+ICsJCWlmICghY29uc29sZV90cnls b2NrKCkpIHsKPiArCQkJc2NoZWR1bGVfd29yaygmZHJtLT5mYmRldl9zdXNwZW5kX3dvcmspOwo+ ICsJCQlyZXR1cm47Cj4gKwkJfQo+ICAJfQo+ICsKPiArCWlmIChzdGF0ZSA9PSBGQklORk9fU1RB VEVfUlVOTklORykKPiArCQlub3V2ZWF1X2ZiY29uX2FjY2VsX3Jlc3RvcmUoZGV2KTsKPiArCWRy bV9mYl9oZWxwZXJfc2V0X3N1c3BlbmQoJmRybS0+ZmJjb24tPmhlbHBlciwgc3RhdGUpOwo+ICsJ aWYgKHN0YXRlICE9IEZCSU5GT19TVEFURV9SVU5OSU5HKQo+ICsJCW5vdXZlYXVfZmJjb25fYWNj ZWxfc2F2ZV9kaXNhYmxlKGRldik7Cj4gKwljb25zb2xlX3VubG9jaygpOwo+ICB9Cj4gIAo+ICBp bnQKPiBAQCAtNTI2LDYgKzU2MCw4IEBAIG5vdXZlYXVfZmJjb25faW5pdChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQo+ICAJZmJjb24tPmRldiA9IGRldjsKPiAgCWRybS0+ZmJjb24gPSBmYmNvbjsK PiAgCj4gKwlJTklUX1dPUksoJmRybS0+ZmJkZXZfc3VzcGVuZF93b3JrLCBub3V2ZWF1X2ZiY29u X3N1c3BlbmRfd29ya2VyKTsKPiArCj4gIAlkcm1fZmJfaGVscGVyX3ByZXBhcmUoZGV2LCAmZmJj b24tPmhlbHBlciwgJm5vdXZlYXVfZmJjb25faGVscGVyX2Z1bmNzKTsKPiAgCj4gIAlyZXQgPSBk cm1fZmJfaGVscGVyX2luaXQoZGV2LCAmZmJjb24tPmhlbHBlciwKPiBAQCAtNTcxLDYgKzYwNyw4 IEBAIG5vdXZlYXVfZmJjb25fZmluaShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJaWYgKCFk cm0tPmZiY29uKQo+ICAJCXJldHVybjsKPiAgCj4gKwlmbHVzaF93b3JrKCZkcm0tPmZiZGV2X3N1 c3BlbmRfd29yayk7Cj4gKwo+ICAJbm91dmVhdV9mYmNvbl9hY2NlbF9maW5pKGRldik7Cj4gIAlu b3V2ZWF1X2ZiY29uX2Rlc3Ryb3koZGV2LCBkcm0tPmZiY29uKTsKPiAgCWtmcmVlKGRybS0+ZmJj b24pOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X2ZiY29u LmggYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X2ZiY29uLmgKPiBpbmRleCBjYTc3 YWQwLi4zNGIyNTA0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZl YXVfZmJjb24uaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfZmJjb24u aAo+IEBAIC02Niw3ICs2Niw3IEBAIHZvaWQgbm91dmVhdV9mYmNvbl9ncHVfbG9ja3VwKHN0cnVj dCBmYl9pbmZvICppbmZvKTsKPiAgCj4gIGludCBub3V2ZWF1X2ZiY29uX2luaXQoc3RydWN0IGRy bV9kZXZpY2UgKmRldik7Cj4gIHZvaWQgbm91dmVhdV9mYmNvbl9maW5pKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpOwo+IC12b2lkIG5vdXZlYXVfZmJjb25fc2V0X3N1c3BlbmQoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgaW50IHN0YXRlKTsKPiArdm9pZCBub3V2ZWF1X2ZiY29uX3NldF9zdXNwZW5k KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBzdGF0ZSwgYm9vbCBzeW5jaHJvbm91cyk7Cj4g IHZvaWQgbm91dmVhdV9mYmNvbl9hY2NlbF9zYXZlX2Rpc2FibGUoc3RydWN0IGRybV9kZXZpY2Ug KmRldik7Cj4gIHZvaWQgbm91dmVhdV9mYmNvbl9hY2NlbF9yZXN0b3JlKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpOwo+ICAKPiAtLSAKPiAyLjguMwo+IAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdh cmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZlYXUgbWFpbGlu ZyBsaXN0Ck5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vbm91dmVhdQo=