From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: Re: [CI 14/25] drm/i915: Manually unwind after a failed request allocation Date: Thu, 28 Apr 2016 15:43:52 +0100 Message-ID: <572221A8.1000600@intel.com> References: <1461833819-3991-1-git-send-email-chris@chris-wilson.co.uk> <1461833819-3991-14-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 575F86ED49 for ; Thu, 28 Apr 2016 14:43:55 +0000 (UTC) In-Reply-To: <1461833819-3991-14-git-send-email-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gMjgvMDQvMTYgMDk6NTYsIENocmlzIFdpbHNvbiB3cm90ZToKPiBJbiB0aGUgbmV4dCBwYXRj aGVzLCB3ZSB3YW50IHRvIG1vdmUgdGhlIHdvcmsgb3V0IG9mIGZyZWVpbmcgdGhlIHJlcXVlc3QK PiBhbmQgaW50byBpdHMgcmV0aXJlbWVudCAoc28gdGhhdCB3ZSBjYW4gZnJlZSB0aGUgcmVxdWVz dCB3aXRob3V0Cj4gcmVxdWlyaW5nIHRoZSBzdHJ1Y3RfbXV0ZXgpLiBUaGlzIG1lYW5zIHRoYXQg d2UgY2Fubm90IHJlbHkgb24KPiB1bnJlZmVyZW5jaW5nIHRoZSByZXF1ZXN0IHRvIGNvbXBsZXRl bHkgdGVhcmRvd24gdGhlIHJlcXVlc3QgYW55IG1vcmUKPiBhbmQgc28gd2UgbmVlZCB0byBtYW51 YWxseSB1bndpbmQgdGhlIGZhaWxlZCBhbGxvY2F0aW9uLiBJbiBkb2luZyBzbywgd2UKPiByZW9y ZGVyIHRoZSBhbGxvY2F0aW9uIGluIG9yZGVyIHRvIG1ha2UgdGhlIHVud2luZCBzaW1wbGUgKGFu ZCBlbnN1cmUKPiB0aGF0IHdlIGRvbid0IHRyeSB0byB1bndpbmQgYSBwYXJ0aWFsIHJlcXVlc3Qg dGhhdCBtYXkgaGF2ZSBtb2RpZmllZAo+IGdsb2JhbCBzdGF0ZSkgYW5kIHNvIHdlIGVuZCB1cCBw dXNoaW5nIHRoZSBpbml0aWFsIHByZWFsbG9jYXRpb24gZG93bgo+IGludG8gdGhlIGVuZ2luZSBy ZXF1ZXN0IGluaXRpYWxpc2F0aW9uIGZ1bmN0aW9ucyB3aGVyZSB3ZSBoYXZlIHRoZQo+IHJlcXVp c2l0ZSBjb250cm9sIG92ZXIgdGhlIHN0YXRlIG9mIHRoZSByZXF1ZXN0Lgo+Cj4gTW92aW5nIHRo ZSBpbml0aWFsIHByZWFsbG9jYXRpb24gaW50byB0aGUgZW5naW5lIGlzIGxlc3MgdGhhbiBpZGVh bDogaXQKPiBtb3ZlcyBsb2dpYyB0byBoYW5kbGUgYSBzcGVjaWZpYyBwcm9ibGVtIHdpdGggcmVx dWVzdCBoYW5kbGluZyBvdXQgb2YKPiB0aGUgY29tbW9uIGNvZGUuIE9uIHRoZSBvdGhlciBoYW5k LCBpdCBkb2VzIGFsbG93IHRob3NlIGJhY2tlbmRzCj4gc2lnbmlmaWNhbnRseSBtb3JlIGZsZXhp YmlsaXR5IGluIHBlcmZvcm1pbmcgaXRzIGFsbG9jYXRpb25zLgo+Cj4gU2lnbmVkLW9mZi1ieTog Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gQ2M6IE1pa2EgS3VvcHBh bGEgPG1pa2Eua3VvcHBhbGFAbGludXguaW50ZWwuY29tPgo+IENjOiBUdnJ0a28gVXJzdWxpbiA8 dHZydGtvLnVyc3VsaW5AbGludXguaW50ZWwuY29tPgo+IENjOiBKb29uYXMgTGFodGluZW4gPGpv b25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+Cj4gUmV2aWV3ZWQtYnk6IFR2cnRrbyBVcnN1 bGluIDx0dnJ0a28udXJzdWxpbkBsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbS5jICAgICAgICAgfCAyOCArKysrKysrKystLS0tLS0tLS0tLS0t LS0tLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAgICAgfCAxNiAr KysrKysrKysrKysrKy0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVy LmMgfCAgMiArLQo+ICAgMyBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAyMiBkZWxl dGlvbnMoLSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+IGluZGV4IGRkNjI4ZWFlMDU5Mi4u ZDdmZjVlNzkxODJmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gQEAgLTI3NjYsMTUg KzI3NjYsNiBAQCBfX2k5MTVfZ2VtX3JlcXVlc3RfYWxsb2Moc3RydWN0IGludGVsX2VuZ2luZV9j cyAqZW5naW5lLAo+ICAgCXJlcS0+Y3R4ICA9IGN0eDsKPiAgIAlpOTE1X2dlbV9jb250ZXh0X3Jl ZmVyZW5jZShyZXEtPmN0eCk7Cj4KPiAtCWlmIChpOTE1LmVuYWJsZV9leGVjbGlzdHMpCj4gLQkJ cmV0ID0gaW50ZWxfbG9naWNhbF9yaW5nX2FsbG9jX3JlcXVlc3RfZXh0cmFzKHJlcSk7Cj4gLQll bHNlCj4gLQkJcmV0ID0gaW50ZWxfcmluZ19hbGxvY19yZXF1ZXN0X2V4dHJhcyhyZXEpOwo+IC0J aWYgKHJldCkgewo+IC0JCWk5MTVfZ2VtX2NvbnRleHRfdW5yZWZlcmVuY2UocmVxLT5jdHgpOwo+ IC0JCWdvdG8gZXJyOwo+IC0JfQo+IC0KPiAgIAkvKgo+ICAgCSAqIFJlc2VydmUgc3BhY2UgaW4g dGhlIHJpbmcgYnVmZmVyIGZvciBhbGwgdGhlIGNvbW1hbmRzIHJlcXVpcmVkIHRvCj4gICAJICog ZXZlbnR1YWxseSBlbWl0IHRoaXMgcmVxdWVzdC4gVGhpcyBpcyB0byBndWFyYW50ZWUgdGhhdCB0 aGUKPiBAQCAtMjc4MywyMCArMjc3NCwxOSBAQCBfX2k5MTVfZ2VtX3JlcXVlc3RfYWxsb2Moc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLAo+ICAgCSAqIGF3YXksIGUuZy4gYmVjYXVzZSBh IEdQVSBzY2hlZHVsZXIgaGFzIGRlZmVycmVkIGl0Lgo+ICAgCSAqLwo+ICAgCXJlcS0+cmVzZXJ2 ZWRfc3BhY2UgPSBNSU5fU1BBQ0VfRk9SX0FERF9SRVFVRVNUOwoKSWYgeW91IG1vdmUgdGhlIGJl Z2luKCkgaW50byB0aGUgbWVjaGFuaXNtLXNwZWNpZmljIGNvZGUsIHlvdSBzaG91bGQgCmxvZ2lj YWxseSBtb3ZlIHRoZSBhYm92ZSBhc3NpZ25tZW50IHdpdGggaXQ7IGFmdGVyIGFsbCwgdGhlIGV2 ZW50dWFsIAphZGRfcmVxdWVzdCB3aWxsIGl0c2VsZiBpbmRpcmVjdCBiYWNrIHRvIHN1Ym1pc3Np b24tbWVjaGFuaXNtLWRlcGVuZGVudCAKY29kZSB3aGljaCBtYXkgKHdpbGwhKSBoYXZlIHRvIGFk ZCBkaWZmZXJlbnQgYW1vdW50cyBvZiBjb2RlIHRvIHRoZSByaW5nIAphY2NvcmRpbmcgdG8gdGhl IG9wZXJhdGlvbiBvZiB0aGUgZGlmZmVyZW50IG1lY2hhbmlzbXMuCgpPciBpZiB5b3UgcHJlZmVy LCB0aGUgYWJvdmUgY29uc3RhbnQgY291bGQgbWVhbiAiaG93IG11Y2ggdGhlIGNvbW1vbiAKc3Vi bWlzc2lvbi1pbmRlcGVuZGVudCBjb2RlIHdpbGwgbmVlZCBmb3Igc3VibWlzc2lvbiIsIGFuZCBl YWNoIApzdWJtaXNzaW9uIG1lY2hhbmlzbSBjb3VsZCB0aGVuICphZGQqIGl0cyBvd24gbWF4aW11 bSByZXF1aXJlbWVudCBiZWZvcmUgCnRoZSBiZWdpbigpIGNhbGwuCgouRGF2ZS4KCj4gLQlyZXQg PSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgMCk7Cj4gLQlpZiAocmV0KSB7Cj4gLQkJLyoKPiAtCQkg KiBBdCB0aGlzIHBvaW50LCB0aGUgcmVxdWVzdCBpcyBmdWxseSBhbGxvY2F0ZWQgZXZlbiBpZiBu b3QKPiAtCQkgKiBmdWxseSBwcmVwYXJlZC4gVGh1cyBpdCBjYW4gYmUgY2xlYW5lZCB1cCB1c2lu ZyB0aGUgcHJvcGVyCj4gLQkJICogZnJlZSBjb2RlLCBhbG9uZyB3aXRoIGFueSByZXNlcnZlZCBz cGFjZS4KPiAtCQkgKi8KPiAtCQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKHJlcSk7Cj4g LQkJcmV0dXJuIHJldDsKPiAtCX0KPiArCj4gKwlpZiAoaTkxNS5lbmFibGVfZXhlY2xpc3RzKQo+ ICsJCXJldCA9IGludGVsX2xvZ2ljYWxfcmluZ19hbGxvY19yZXF1ZXN0X2V4dHJhcyhyZXEpOwo+ ICsJZWxzZQo+ICsJCXJldCA9IGludGVsX3JpbmdfYWxsb2NfcmVxdWVzdF9leHRyYXMocmVxKTsK PiArCWlmIChyZXQpCj4gKwkJZ290byBlcnJfY3R4Owo+Cj4gICAJKnJlcV9vdXQgPSByZXE7Cj4g ICAJcmV0dXJuIDA7Cj4KPiArZXJyX2N0eDoKPiArCWk5MTVfZ2VtX2NvbnRleHRfdW5yZWZlcmVu Y2UoY3R4KTsKPiAgIGVycjoKPiAgIAlrbWVtX2NhY2hlX2ZyZWUoZGV2X3ByaXYtPnJlcXVlc3Rz LCByZXEpOwo+ICAgCXJldHVybiByZXQ7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKPiBpbmRl eCA5MTAwNDRjZjE0M2UuLjAxNTE3ZGQ3MDY5YiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9scmMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xy Yy5jCj4gQEAgLTY5OCw3ICs2OTgsNyBAQCBzdGF0aWMgaW50IGV4ZWNsaXN0c19tb3ZlX3RvX2dw dShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKPgo+ICAgaW50IGludGVsX2xvZ2lj YWxfcmluZ19hbGxvY19yZXF1ZXN0X2V4dHJhcyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qg KnJlcXVlc3QpCj4gICB7Cj4gLQlpbnQgcmV0ID0gMDsKPiArCWludCByZXQ7Cj4KPiAgIAlyZXF1 ZXN0LT5yaW5nYnVmID0gcmVxdWVzdC0+Y3R4LT5lbmdpbmVbcmVxdWVzdC0+ZW5naW5lLT5pZF0u cmluZ2J1ZjsKPgo+IEBAIC03MTUsOSArNzE1LDIxIEBAIGludCBpbnRlbF9sb2dpY2FsX3Jpbmdf YWxsb2NfcmVxdWVzdF9leHRyYXMoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0 Cj4gICAJCQlyZXR1cm4gcmV0Owo+ICAgCX0KPgo+IC0JaWYgKHJlcXVlc3QtPmN0eCAhPSByZXF1 ZXN0LT5pOTE1LT5rZXJuZWxfY29udGV4dCkKPiArCWlmIChyZXF1ZXN0LT5jdHggIT0gcmVxdWVz dC0+aTkxNS0+a2VybmVsX2NvbnRleHQpIHsKPiAgIAkJcmV0ID0gaW50ZWxfbHJfY29udGV4dF9w aW4ocmVxdWVzdC0+Y3R4LCByZXF1ZXN0LT5lbmdpbmUpOwo+ICsJCWlmIChyZXQpCj4gKwkJCXJl dHVybiByZXQ7Cj4gKwl9Cj4KPiArCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmVxdWVzdCwgMCk7 Cj4gKwlpZiAocmV0KQo+ICsJCWdvdG8gZXJyX3VucGluOwo+ICsKPiArCXJldHVybiAwOwo+ICsK PiArZXJyX3VucGluOgo+ICsJaWYgKHJlcXVlc3QtPmN0eCAhPSByZXF1ZXN0LT5pOTE1LT5rZXJu ZWxfY29udGV4dCkKPiArCQlpbnRlbF9scl9jb250ZXh0X3VucGluKHJlcXVlc3QtPmN0eCwgcmVx dWVzdC0+ZW5naW5lKTsKPiAgIAlyZXR1cm4gcmV0Owo+ICAgfQo+Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuYwo+IGluZGV4IDY4ZTUwYjIyMWY2My4uNDkyZjljNjcxYzZm IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwo+IEBAIC0yMzM5 LDcgKzIzMzksNyBAQCBpbnQgaW50ZWxfZW5naW5lX2lkbGUoc3RydWN0IGludGVsX2VuZ2luZV9j cyAqZW5naW5lKQo+ICAgaW50IGludGVsX3JpbmdfYWxsb2NfcmVxdWVzdF9leHRyYXMoc3RydWN0 IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0KQo+ICAgewo+ICAgCXJlcXVlc3QtPnJpbmdi dWYgPSByZXF1ZXN0LT5lbmdpbmUtPmJ1ZmZlcjsKPiAtCXJldHVybiAwOwo+ICsJcmV0dXJuIGlu dGVsX3JpbmdfYmVnaW4ocmVxdWVzdCwgMCk7Cj4gICB9Cj4KPiAgIHN0YXRpYyBpbnQgd2FpdF9m b3Jfc3BhY2Uoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsIGludCBieXRlcykKPgoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4 IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==