From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: [PATCH 2/2] drm/i915: Allocate OLR more safely (workaround until OLR goes away) Date: Fri, 12 Jun 2015 21:25:38 +0100 Message-ID: <1434140738-19521-3-git-send-email-david.s.gordon@intel.com> References: <1434128948-9221-3-git-send-email-david.s.gordon@intel.com> <1434140738-19521-1-git-send-email-david.s.gordon@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id B4FCE6E59C for ; Fri, 12 Jun 2015 13:25:56 -0700 (PDT) In-Reply-To: <1434140738-19521-1-git-send-email-david.s.gordon@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VGhlIG9yaWdpbmFsIGlkZWEgb2YgcHJlYWxsb2NhdGluZyB0aGUgT0xSIHdhcyBpbXBsZW1lbnRl ZCBpbgoKPiA5ZDc3MzA5MSBkcm0vaTkxNTogUHJlYWxsb2NhdGUgbmV4dCBzZXFubyBiZWZvcmUg dG91Y2hpbmcgdGhlIHJpbmcKCmFuZCB0aGUgc2VxdWVuY2Ugb2Ygb3BlcmF0aW9ucyB3YXMgdG8g YWxsb2NhdGUgdGhlIE9MUiwgdGhlbiB3cmFwIHBhc3QKdGhlIGVuZCBvZiB0aGUgcmluZyBpZiBu ZWNlc3NhcnksIHRoZW4gd2FpdCBmb3Igc3BhY2UgaWYgbmVjZXNzYXJ5LgpCdXQgc3Vic2VxdWVu dGx5IGludGVsX3JpbmdfYmVnaW4oKSB3YXMgcmVmYWN0b3JlZCwgaW4KCj4gMzA0ZDY5NSBkcm0v aTkxNTogRmx1c2ggb3V0c3RhbmRpbmcgcmVxdWVzdHMgYmVmb3JlIGFsbG9jYXRpbmcgbmV3IHNl cW5vCgp0byBlbnN1cmUgdGhhdCBwZW5kaW5nIHdvcmsgdGhhdCBtaWdodCBuZWVkIHRvIGJlIGZs dXNoZWQgdXNlZCB0aGUgb2xkCmFuZCBub3QgdGhlIG5ld2x5LWFsbG9jYXRlZCByZXF1ZXN0LiBU aGlzIGNoYW5nZWQgdGhlIHNlcXVlbmNlIHRvIHdyYXAKYW5kL29yIHdhaXQsIHRoZW4gYWxsb2Nh dGUsIGFsdGhvdWdoIHRoZSBjb21tZW50IHN0aWxsIHNhaWQKICAgIC8qIFByZWFsbG9jYXRlIHRo ZSBvbHIgYmVmb3JlIHRvdWNoaW5nIHRoZSByaW5nICovCndoaWNoIHdhcyBubyBsb25nZXIgdHJ1 ZSBhcyBpbnRlbF93cmFwX3JpbmdfYnVmZmVyKCkgdG91Y2hlcyB0aGUgcmluZy4KCkhvd2V2ZXIs IHdpdGggdGhlIGludHJvZHVjdGlvbiBvZiBkeW5hbWljIHBpbm5pbmcsIGluCgo+IDdiYTcxN2Mg ZHJtL2k5MTUvYmR3OiBQaW4gdGhlIHJpbmdidWZmZXIgYmFja2luZyBvYmplY3QgdG8gR0dUVCBv bi1kZW1hbmQKCmNhbWUgdGhlIHBvc3NpYmlsaXR5IHRoYXQgdGhlIHJpbmdidWZmZXIgbWlnaHQg bm90IGJlIHBpbm5lZCB0byB0aGUgR1RUCm9yIG1hcHBlZCBpbnRvIENQVSBhZGRyZXNzIHNwYWNl IHdoZW4gaW50ZWxfcmluZ19iZWdpbigpIGlzIGNhbGxlZC4gSXQKZ2V0cyBwaW5uZWQgd2hlbiB0 aGUgcmVxdWVzdCBpcyBhbGxvY2F0ZWQsIHNvIGl0J3Mgbm93IGltcG9ydGFudCB0aGF0CnRoaXMg Y29tZXMgKmJlZm9yZSogYW55dGhpbmcgdGhhdCBjYW4gd3JpdGUgaW50byB0aGUgcmluZ2J1ZmZl ciwgaW4gdGhpcwpjYXNlIGludGVsX3dyYXBfcmluZ19idWZmZXIoKSwgYXMgdGhpcyB3aWxsIGZh dWx0IGlmIChhKSB0aGUgcmluZ2J1ZmZlcgpoYXBwZW5zIG5vdCB0byBiZSBtYXBwZWQsIGFuZCAo YikgdGFpbCBoYXBwZW5zIHRvIGJlIHN1ZmZpY2llbnRseSBjbG9zZQp0byB0aGUgZW5kIG9mIHRo ZSByaW5nIHRvIHRyaWdnZXIgd3JhcHBpbmcuCgpTbyB0aGUgY29ycmVjdCBvcmRlciBpcyBuZWl0 aGVyIHRoZSBvcmlnaW5hbCBhbGxvY2F0ZS13YWl0LXBhZC13YWl0LCBub3IKdGhlIHN1YnNlcXVl bnQgd2FpdC1wYWQtd2FpdC1hbGxvY2F0ZSwgYnV0IHdhaXQtYWxsb2NhdGUtcGFkLCBhdm9pZGlu Zwpib3RoIHRoZSBwcm9ibGVtcyBkZXNjcmliZWQgaW4gdGhlIHR3byBjb21taXRzIG1lbnRpb25l ZCBhYm92ZS4gU28gdGhpcwpjb21taXQgbW92ZXMgdGhlIGNhbGxzIHRvIGk5MTVfZ2VtX3JlcXVl c3RfYWxsb2MoKSBpbnRvIHRoZSBtaWRkbGUgb2YKe19faW50ZWwsbG9naWNhbH1fcmluZ19wcmVw YXJlKCkgcmF0aGVyIHRoYW4gZWl0aGVyIGJlZm9yZSBvciBhZnRlciB0aGVtLgoKU2lnbmVkLW9m Zi1ieTogRGF2ZSBHb3Jkb24gPGRhdmlkLnMuZ29yZG9uQGludGVsLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAgICAgfCAgIDEyICsrKysrKystLS0tLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIHwgICAxMiArKysrKysrLS0tLS0K IDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9scmMuYwppbmRleCBhNGJiNWQzLi4zZWY1ZmI2IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9scmMuYwpAQCAtNzY0LDYgKzc2NCwxMyBAQCBzdGF0aWMgaW50IGxvZ2ljYWxfcmlu Z19wcmVwYXJlKHN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmLAogCQkJcmV0dXJuIHJl dDsKIAl9CiAKKwkvKiBFbnN1cmUgd2UgaGF2ZSBhIHJlcXVlc3QgYmVmb3JlIHRvdWNoaW5nIHRo ZSByaW5nICovCisJaWYgKCFyaW5nYnVmLT5yaW5nLT5vdXRzdGFuZGluZ19sYXp5X3JlcXVlc3Qp IHsKKwkJcmV0ID0gaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhyaW5nYnVmLT5yaW5nLCBjdHgpOwor CQlpZiAocmV0KQorCQkJcmV0dXJuIHJldDsKKwl9CisKIAlpZiAodW5saWtlbHkoZmlsbCkpIHsK IAkJdWludDMyX3QgX19pb21lbSAqdmlydCA9IHJpbmdidWYtPnZpcnR1YWxfc3RhcnQgKyByaW5n YnVmLT50YWlsOwogCkBAIC04MTIsMTEgKzgxOSw2IEBAIHN0YXRpYyBpbnQgaW50ZWxfbG9naWNh bF9yaW5nX2JlZ2luKHN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmLAogCWlmIChyZXQp CiAJCXJldHVybiByZXQ7CiAKLQkvKiBQcmVhbGxvY2F0ZSB0aGUgb2xyIGJlZm9yZSB0b3VjaGlu ZyB0aGUgcmluZyAqLwotCXJldCA9IGk5MTVfZ2VtX3JlcXVlc3RfYWxsb2MocmluZywgY3R4KTsK LQlpZiAocmV0KQotCQlyZXR1cm4gcmV0OwotCiAJcmluZ2J1Zi0+c3BhY2UgLT0gbnVtX2R3b3Jk cyAqIHNpemVvZih1aW50MzJfdCk7CiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmMKaW5kZXggNWExY2QyMC4uZGRmNTgwZCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwpAQCAtMjE5NSw2ICsyMTk1LDEzIEBAIHN0YXRpYyBp bnQgX19pbnRlbF9yaW5nX3ByZXBhcmUoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKIAkJ CXJldHVybiByZXQ7CiAJfQogCisJLyogRW5zdXJlIHdlIGhhdmUgYSByZXF1ZXN0IGJlZm9yZSB0 b3VjaGluZyB0aGUgcmluZyAqLworCWlmICghcmluZ2J1Zi0+cmluZy0+b3V0c3RhbmRpbmdfbGF6 eV9yZXF1ZXN0KSB7CisJCXJldCA9IGk5MTVfZ2VtX3JlcXVlc3RfYWxsb2MocmluZ2J1Zi0+cmlu ZywgcmluZy0+ZGVmYXVsdF9jb250ZXh0KTsKKwkJaWYgKHJldCkKKwkJCXJldHVybiByZXQ7CisJ fQorCiAJaWYgKHVubGlrZWx5KGZpbGwpKSB7CiAJCXVpbnQzMl90IF9faW9tZW0gKnZpcnQgPSBy aW5nYnVmLT52aXJ0dWFsX3N0YXJ0ICsgcmluZ2J1Zi0+dGFpbDsKIApAQCAtMjIyOCwxMSArMjIz NSw2IEBAIGludCBpbnRlbF9yaW5nX2JlZ2luKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcs CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAotCS8qIFByZWFsbG9jYXRlIHRoZSBvbHIgYmVm b3JlIHRvdWNoaW5nIHRoZSByaW5nICovCi0JcmV0ID0gaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhy aW5nLCByaW5nLT5kZWZhdWx0X2NvbnRleHQpOwotCWlmIChyZXQpCi0JCXJldHVybiByZXQ7Ci0K IAlyaW5nLT5idWZmZXItPnNwYWNlIC09IG51bV9kd29yZHMgKiBzaXplb2YodWludDMyX3QpOwog CXJldHVybiAwOwogfQotLSAKMS43LjkuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK