From mboxrd@z Thu Jan 1 00:00:00 1970 From: j.glisse@gmail.com Subject: [PATCH 10/27] drm/radeon: sa allocator add wakequeue Date: Tue, 1 May 2012 13:19:20 -0400 Message-ID: <1335892777-7357-11-git-send-email-j.glisse@gmail.com> References: <ยท> <1335892777-7357-1-git-send-email-j.glisse@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qa0-f42.google.com (mail-qa0-f42.google.com [209.85.216.42]) by gabe.freedesktop.org (Postfix) with ESMTP id 761F69EAFD for ; Tue, 1 May 2012 10:20:08 -0700 (PDT) Received: by mail-qa0-f42.google.com with SMTP id i31so1592646qaf.15 for ; Tue, 01 May 2012 10:20:08 -0700 (PDT) In-Reply-To: <1335892777-7357-1-git-send-email-j.glisse@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org Cc: Jerome Glisse , =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org RnJvbTogSmVyb21lIEdsaXNzZSA8amdsaXNzZUByZWRoYXQuY29tPgoKd2FrZXF1ZXVlIGlzIHVz ZSBpbiBjYXNlIHdlIHdhbnQgdG8gd2FpdCB1bnRpbCB3ZSBnb3Qgc29tZXRoaW5nCnRoYXQgYWxs b3cgdG8gYWxsb2NhdGUgdGhlIG9iamVjdC4KClNpZ25lZC1vZmYtYnk6IENocmlzdGlhbiBLw7Zu aWcgPGRlYXRoc2ltcGxlQHZvZGFmb25lLmRlPgpTaWduZWQtb2ZmLWJ5OiBKZXJvbWUgR2xpc3Nl IDxqZ2xpc3NlQHJlZGhhdC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24u aCAgICAgICAgfCAgICAxICsKIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2dhcnQuYyAg IHwgICAgMiArLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmggfCAgICAy ICstCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9yaW5nLmMgICB8ICAgIDYgKysrKyst CiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9zYS5jICAgICB8ICAgMzIgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0KIDUgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygr KSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Jh ZGVvbi5oIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaAppbmRleCBhZDEyZWY4Li44 YTZkZDQ2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgKQEAgLTM4Miw2ICszODIsNyBAQCBzdHJ1 Y3QgcmFkZW9uX2JvX2xpc3QgewogICovCiBzdHJ1Y3QgcmFkZW9uX3NhX21hbmFnZXIgewogCXN0 cnVjdCBtdXRleAkJbXV0ZXg7CisJd2FpdF9xdWV1ZV9oZWFkX3QJcXVldWU7CiAJc3RydWN0IHJh ZGVvbl9ibwkqYm87CiAJc3RydWN0IGxpc3RfaGVhZAlzYV9ibzsKIAl1bnNpZ25lZAkJc2l6ZTsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2dhcnQuYyBiL2RyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2dhcnQuYwppbmRleCBjNThhMDM2Li43YWY0ZmY5IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9nYXJ0LmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZ2FydC5jCkBAIC0zOTUsNyArMzk1LDcgQEAgaW50 IHJhZGVvbl92bV9iaW5kKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LCBzdHJ1Y3QgcmFkZW9u X3ZtICp2bSkKIHJldHJ5OgogCXIgPSByYWRlb25fc2FfYm9fbmV3KHJkZXYsICZyZGV2LT52bV9t YW5hZ2VyLnNhX21hbmFnZXIsICZ2bS0+c2FfYm8sCiAJCQkgICAgIFJBREVPTl9HUFVfUEFHRV9B TElHTih2bS0+bGFzdF9wZm4gKiA4KSwKLQkJCSAgICAgUkFERU9OX0dQVV9QQUdFX1NJWkUpOwor CQkJICAgICBSQURFT05fR1BVX1BBR0VfU0laRSwgZmFsc2UpOwogCWlmIChyKSB7CiAJCWlmIChs aXN0X2VtcHR5KCZyZGV2LT52bV9tYW5hZ2VyLmxydV92bSkpIHsKIAkJCXJldHVybiByOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmggYi9kcml2ZXJz L2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuaAppbmRleCBkOWI5MzMzLi44NWYzM2Q5IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuaApAQCAtMTU4LDcgKzE1OCw3IEBA IGV4dGVybiBpbnQgcmFkZW9uX3NhX2JvX21hbmFnZXJfc3VzcGVuZChzdHJ1Y3QgcmFkZW9uX2Rl dmljZSAqcmRldiwKIGV4dGVybiBpbnQgcmFkZW9uX3NhX2JvX25ldyhzdHJ1Y3QgcmFkZW9uX2Rl dmljZSAqcmRldiwKIAkJCSAgICBzdHJ1Y3QgcmFkZW9uX3NhX21hbmFnZXIgKnNhX21hbmFnZXIs CiAJCQkgICAgc3RydWN0IHJhZGVvbl9zYV9ibyAqc2FfYm8sCi0JCQkgICAgdW5zaWduZWQgc2l6 ZSwgdW5zaWduZWQgYWxpZ24pOworCQkJICAgIHVuc2lnbmVkIHNpemUsIHVuc2lnbmVkIGFsaWdu LCBib29sIGJsb2NrKTsKIGV4dGVybiB2b2lkIHJhZGVvbl9zYV9ib19mcmVlKHN0cnVjdCByYWRl b25fZGV2aWNlICpyZGV2LAogCQkJICAgICAgc3RydWN0IHJhZGVvbl9zYV9ibyAqc2FfYm8pOwog I2lmIGRlZmluZWQoQ09ORklHX0RFQlVHX0ZTKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L3JhZGVvbi9yYWRlb25fcmluZy5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fcmlu Zy5jCmluZGV4IDFkOWJjZTkuLmY4ZWNiM2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9y YWRlb24vcmFkZW9uX3JpbmcuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9y aW5nLmMKQEAgLTEyNCw3ICsxMjQsNyBAQCByZXRyeToKIAkJaWYgKHJkZXYtPmliX3Bvb2wuaWJz W2lkeF0uZmVuY2UgPT0gTlVMTCkgewogCQkJciA9IHJhZGVvbl9zYV9ib19uZXcocmRldiwgJnJk ZXYtPmliX3Bvb2wuc2FfbWFuYWdlciwKIAkJCQkJICAgICAmcmRldi0+aWJfcG9vbC5pYnNbaWR4 XS5zYV9ibywKLQkJCQkJICAgICBzaXplLCAyNTYpOworCQkJCQkgICAgIHNpemUsIDI1NiwgZmFs c2UpOwogCQkJaWYgKCFyKSB7CiAJCQkJKmliID0gJnJkZXYtPmliX3Bvb2wuaWJzW2lkeF07CiAJ CQkJKCppYiktPnB0ciA9IHJkZXYtPmliX3Bvb2wuc2FfbWFuYWdlci5jcHVfcHRyOwpAQCAtMjIy LDYgKzIyMiwxMCBAQCBpbnQgcmFkZW9uX2liX3Bvb2xfaW5pdChzdHJ1Y3QgcmFkZW9uX2Rldmlj ZSAqcmRldikKIAkJcmV0dXJuIDA7CiAJfQogCisJLyogY29weSBvdmVyIHRoZSBzYV9tYW5hZ2Vy IHdlIGhhdmUgdG8gZG8gdGhpcyB0byBzaWxlbmNlCisJICoga2VybmVsIHBvc3NpYmxlIGRlYWRs b2NrIGRldGVjdGlvbiBjb2RlIHRvIGNvbXBsYWluIGFib3V0CisJICogYSBmYWxzZSBwb3NpdGl2 ZQorCSAqLwogCXJkZXYtPmliX3Bvb2wuc2FfbWFuYWdlciA9IHRtcDsKIAlJTklUX0xJU1RfSEVB RCgmcmRldi0+aWJfcG9vbC5zYV9tYW5hZ2VyLnNhX2JvKTsKIAlmb3IgKGkgPSAwOyBpIDwgUkFE RU9OX0lCX1BPT0xfU0laRTsgaSsrKSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFk ZW9uL3JhZGVvbl9zYS5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fc2EuYwppbmRl eCA4YzBiM2U2Li5mN2IyMGIxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Jh ZGVvbl9zYS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3NhLmMKQEAgLTM4 LDYgKzM4LDcgQEAgaW50IHJhZGVvbl9zYV9ib19tYW5hZ2VyX2luaXQoc3RydWN0IHJhZGVvbl9k ZXZpY2UgKnJkZXYsCiAJaW50IHI7CiAKIAltdXRleF9pbml0KCZzYV9tYW5hZ2VyLT5tdXRleCk7 CisJaW5pdF93YWl0cXVldWVfaGVhZCgmc2FfbWFuYWdlci0+cXVldWUpOwogCXNhX21hbmFnZXIt PmJvID0gTlVMTDsKIAlzYV9tYW5hZ2VyLT5zaXplID0gc2l6ZTsKIAlzYV9tYW5hZ2VyLT5zaG9s ZV9zaXplID0gMDsKQEAgLTYxLDYgKzYyLDggQEAgdm9pZCByYWRlb25fc2FfYm9fbWFuYWdlcl9m aW5pKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAogewogCXN0cnVjdCByYWRlb25fc2FfYm8g KnNhX2JvLCAqdG1wOwogCisJd2FrZV91cF9hbGwoJnNhX21hbmFnZXItPnF1ZXVlKTsKKwltdXRl eF9sb2NrKCZzYV9tYW5hZ2VyLT5tdXRleCk7CiAJaWYgKCFsaXN0X2VtcHR5KCZzYV9tYW5hZ2Vy LT5zYV9ibykpIHsKIAkJZGV2X2VycihyZGV2LT5kZXYsICJzYV9tYW5hZ2VyIGlzIG5vdCBlbXB0 eSwgY2xlYXJpbmcgYW55d2F5XG4iKTsKIAl9CkBAIC02OSw2ICs3Miw3IEBAIHZvaWQgcmFkZW9u X3NhX2JvX21hbmFnZXJfZmluaShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKIAl9CiAJcmFk ZW9uX2JvX3VucmVmKCZzYV9tYW5hZ2VyLT5ibyk7CiAJc2FfbWFuYWdlci0+c2l6ZSA9IDA7CisJ bXV0ZXhfdW5sb2NrKCZzYV9tYW5hZ2VyLT5tdXRleCk7CiB9CiAKIGludCByYWRlb25fc2FfYm9f bWFuYWdlcl9zdGFydChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKQEAgLTExNyw2ICsxMjEs MTcgQEAgaW50IHJhZGVvbl9zYV9ib19tYW5hZ2VyX3N1c3BlbmQoc3RydWN0IHJhZGVvbl9kZXZp Y2UgKnJkZXYsCiAJcmV0dXJuIHI7CiB9CiAKK3N0YXRpYyBpbmxpbmUgdW5zaWduZWQgcmFkZW9u X3NhX2JvX21heF9mcmVlKHN0cnVjdCByYWRlb25fc2FfbWFuYWdlciAqbSwKKwkJCQkJICAgICB1 bnNpZ25lZCBhbGlnbikKK3sKKwl1bnNpZ25lZCBzdGFydCwgZW5kLCB3YXN0ZWQ7CisKKwl3YXN0 ZWQgPSAoYWxpZ24gLSAoc2FfbWFuYWdlci0+ZWhvbGVfb2Zmc2V0ICUgYWxpZ24pKSAlIGFsaWdu OworCWVuZCA9IHdhc3RlZCA+IHNhX21hbmFnZXItPmVob2xlX3NpemUgPyAwIDogc2FfbWFuYWdl ci0+ZWhvbGVfc2l6ZSAtIHdhc3RlZDsKKwlzdGFydCA9IHNhX21hbmFnZXItPnNob2xlX3NpemU7 CisJcmV0dXJuIHN0YXJ0IDwgZW5kID8gZW5kIDogc3RhcnQ7Cit9CisKIC8qCiAgKiBQcmluY2lw ZSBpcyBzaW1wbGUsIHdlIGtlZXAgYSBsaXN0IG9mIHN1YiBhbGxvY2F0aW9uIGluIG9mZnNldAog ICogb3JkZXIgKGZpcnN0IGVudHJ5IGhhcyBvZmZzZXQgPT0gMCwgbGFzdCBlbnRyeSBoYXMgdGhl IGhpZ2hlc3QKQEAgLTEzNSwxMyArMTUwLDE0IEBAIGludCByYWRlb25fc2FfYm9fbWFuYWdlcl9z dXNwZW5kKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAogaW50IHJhZGVvbl9zYV9ib19uZXco c3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsCiAJCSAgICAgc3RydWN0IHJhZGVvbl9zYV9tYW5h Z2VyICpzYV9tYW5hZ2VyLAogCQkgICAgIHN0cnVjdCByYWRlb25fc2FfYm8gKnNhX2JvLAotCQkg ICAgIHVuc2lnbmVkIHNpemUsIHVuc2lnbmVkIGFsaWduKQorCQkgICAgIHVuc2lnbmVkIHNpemUs IHVuc2lnbmVkIGFsaWduLCBib29sIGJsb2NrKQogewogCXVuc2lnbmVkIG9mZnNldCA9IDAsIHdh c3RlZCA9IDA7CiAKIAlCVUdfT04oYWxpZ24gPiBSQURFT05fR1BVX1BBR0VfU0laRSk7CiAJQlVH X09OKHNpemUgPiBzYV9tYW5hZ2VyLT5zaXplKTsKIAorcmV0cnk6CiAJbXV0ZXhfbG9jaygmc2Ff bWFuYWdlci0+bXV0ZXgpOwogCiAJd2FzdGVkID0gKGFsaWduIC0gKHNhX21hbmFnZXItPmVob2xl X29mZnNldCAlIGFsaWduKSkgJSBhbGlnbjsKQEAgLTE2MSw4ICsxNzcsMjAgQEAgaW50IHJhZGVv bl9zYV9ib19uZXcoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsCiAJCW9mZnNldCA9IDA7CiAJ CWdvdG8gb3V0OwogCX0KLQogCW11dGV4X3VubG9jaygmc2FfbWFuYWdlci0+bXV0ZXgpOworCisJ aWYgKGJsb2NrKSB7CisJCS8qIGZhaWxlZCB0byBmaW5kIHNvbWV0aGluZyBiaWcgZW5vdWdoLCB3 YWl0CisJCSAqICBmb3IgdGhlIGJpZ2dlc3QgaG9sZSB0byBpbmNyZWFzZSBpbiBzaXplCisJCSAq LworCQlyID0gd2FpdF9ldmVudF9pbnRlcnJ1cHRpYmxlKHNhX21hbmFnZXItPnF1ZXVlLAorCQkJ CQkJcmFkZW9uX3NhX2JvX21heF9mcmVlKHNhX21hbmFnZXIsIGFsaWduKSA+PSBzaXplKTsKKwkJ aWYgKHIpIHsKKwkJCXJldHVybiByOworCQl9CisJCWdvdG8gcmV0cnk7CisJfQorCiAJcmV0dXJu IC1FTk9NRU07CiAKIG91dDoKLS0gCjEuNy43LjYKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVsCg==