From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH v2] drm/i915: Add ppgtt->kunmap_page_dma vfunc Date: Wed, 18 May 2016 13:06:06 +0100 Message-ID: <1463573166-7008-1-git-send-email-tvrtko.ursulin@linux.intel.com> References: <573C57B9.8070706@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id EFD4B6E0E3 for ; Wed, 18 May 2016 12:06:11 +0000 (UTC) In-Reply-To: <573C57B9.8070706@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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClJhdGhlciB0 aGFuIGFza2luZyBpdHNlbGYgImFtIEkgYSBCcm9hZHdlbGwsIGFtIEkgYSBDaGVycnl2aWV3LApv ciBhbSBJIG5laXRoZXIgb2YgdGhlIHR3byIgb24gb24gbG93IGxldmVsIHBhZ2UgdGFibGUgb3Bl cmF0aW9ucywKbGlrZSBpbnNlcnRpbmcgYW5kIGNsZWFyaW5nIFBURXM7IGFkZCBhIG5ldyB2ZnVu YyBrdW5tYXBfcGFnZV9kbWEKYW5kIHNldCBpdCB0byBhcHByb3ByaWF0ZSBmbGF2b3VyIGF0IHBw Z3R0IGluaXQgdGltZS4KCnYyOiBGaXggcGxhdGZyb20gY29uZGl0aW9uIGFuZCBncm91cCB2ZnVu YyBpbml0IG1vcmUgdG9nZXRoZXIuCiAgICAoRGFuaWVsZSBDZXJhb2xvIFNwdXJpbykKClNpZ25l ZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+CkNjOiBE YW5pZWxlIENlcmFvbG8gU3B1cmlvIDxkYW5pZWxlLmNlcmFvbG9zcHVyaW9AaW50ZWwuY29tPgot LS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIHwgNTkgKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f Z3R0LmggfCAgMSArCiAyIGZpbGVzIGNoYW5nZWQsIDM3IGluc2VydGlvbnMoKyksIDIzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKaW5kZXggN2VhYjYxOWEzZWIy Li44OTJmOGI0MWRjYTcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCkBAIC0zNjEs MjkgKzM2MSwzMCBAQCBzdGF0aWMgdm9pZCAqa21hcF9wYWdlX2RtYShzdHJ1Y3QgaTkxNV9wYWdl X2RtYSAqcCkKIAlyZXR1cm4ga21hcF9hdG9taWMocC0+cGFnZSk7CiB9CiAKK3N0YXRpYyB2b2lk IGt1bm1hcF9wYWdlX2RtYSh2b2lkICp2YWRkcikKK3sKKwlrdW5tYXBfYXRvbWljKHZhZGRyKTsK K30KKwogLyogV2UgdXNlIHRoZSBmbHVzaGluZyB1bm1hcCBvbmx5IHdpdGggcHBndHQgc3RydWN0 dXJlczoKICAqIHBhZ2UgZGlyZWN0b3JpZXMsIHBhZ2UgdGFibGVzIGFuZCBzY3JhdGNoIHBhZ2Vz LgogICovCi1zdGF0aWMgdm9pZCBrdW5tYXBfcGFnZV9kbWEoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgdm9pZCAqdmFkZHIpCitzdGF0aWMgdm9pZCBrdW5tYXBfcGFnZV9kbWFfZmx1c2godm9pZCAq dmFkZHIpCiB7Ci0JLyogVGhlcmUgYXJlIG9ubHkgZmV3IGV4Y2VwdGlvbnMgZm9yIGdlbiA+PTYu IGNodiBhbmQgYnh0LgotCSAqIEFuZCB3ZSBhcmUgbm90IHN1cmUgYWJvdXQgdGhlIGxhdHRlciBz byBwbGF5IHNhZmUgZm9yIG5vdy4KLQkgKi8KLQlpZiAoSVNfQ0hFUlJZVklFVyhkZXYpIHx8IElT X0JST1hUT04oZGV2KSkKLQkJZHJtX2NsZmx1c2hfdmlydF9yYW5nZSh2YWRkciwgUEFHRV9TSVpF KTsKKwlkcm1fY2xmbHVzaF92aXJ0X3JhbmdlKHZhZGRyLCBQQUdFX1NJWkUpOwogCiAJa3VubWFw X2F0b21pYyh2YWRkcik7CiB9CiAKICNkZWZpbmUga21hcF9weChweCkga21hcF9wYWdlX2RtYShw eF9iYXNlKHB4KSkKLSNkZWZpbmUga3VubWFwX3B4KHBwZ3R0LCB2YWRkcikga3VubWFwX3BhZ2Vf ZG1hKChwcGd0dCktPmJhc2UuZGV2LCAodmFkZHIpKQorI2RlZmluZSBrdW5tYXBfcHgocHBndHQs IHZhZGRyKSAocHBndHQpLT5rdW5tYXBfcGFnZV9kbWEoKHZhZGRyKSkKIAogI2RlZmluZSBzZXR1 cF9weChkZXYsIHB4KSBzZXR1cF9wYWdlX2RtYSgoZGV2KSwgcHhfYmFzZShweCkpCiAjZGVmaW5l IGNsZWFudXBfcHgoZGV2LCBweCkgY2xlYW51cF9wYWdlX2RtYSgoZGV2KSwgcHhfYmFzZShweCkp Ci0jZGVmaW5lIGZpbGxfcHgoZGV2LCBweCwgdikgZmlsbF9wYWdlX2RtYSgoZGV2KSwgcHhfYmFz ZShweCksICh2KSkKLSNkZWZpbmUgZmlsbDMyX3B4KGRldiwgcHgsIHYpIGZpbGxfcGFnZV9kbWFf MzIoKGRldiksIHB4X2Jhc2UocHgpLCAodikpCisjZGVmaW5lIGZpbGxfcHgocHBndHQsIHB4LCB2 KSBmaWxsX3BhZ2VfZG1hKChwcGd0dCksIHB4X2Jhc2UocHgpLCAodikpCisjZGVmaW5lIGZpbGwz Ml9weChwcGd0dCwgcHgsIHYpIGZpbGxfcGFnZV9kbWFfMzIoKHBwZ3R0KSwgcHhfYmFzZShweCks ICh2KSkKIAotc3RhdGljIHZvaWQgZmlsbF9wYWdlX2RtYShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCBzdHJ1Y3QgaTkxNV9wYWdlX2RtYSAqcCwKK3N0YXRpYyB2b2lkIGZpbGxfcGFnZV9kbWEoc3Ry dWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0LCBzdHJ1Y3QgaTkxNV9wYWdlX2RtYSAqcCwKIAkJCSAg Y29uc3QgdWludDY0X3QgdmFsKQogewogCWludCBpOwpAQCAtMzkyLDE3ICszOTMsMTcgQEAgc3Rh dGljIHZvaWQgZmlsbF9wYWdlX2RtYShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkx NV9wYWdlX2RtYSAqcCwKIAlmb3IgKGkgPSAwOyBpIDwgNTEyOyBpKyspCiAJCXZhZGRyW2ldID0g dmFsOwogCi0Ja3VubWFwX3BhZ2VfZG1hKGRldiwgdmFkZHIpOworCXBwZ3R0LT5rdW5tYXBfcGFn ZV9kbWEodmFkZHIpOwogfQogCi1zdGF0aWMgdm9pZCBmaWxsX3BhZ2VfZG1hXzMyKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHN0cnVjdCBpOTE1X3BhZ2VfZG1hICpwLAotCQkJICAgICBjb25zdCB1 aW50MzJfdCB2YWwzMikKK3N0YXRpYyB2b2lkIGZpbGxfcGFnZV9kbWFfMzIoc3RydWN0IGk5MTVf aHdfcHBndHQgKnBwZ3R0LAorCQkJICAgICBzdHJ1Y3QgaTkxNV9wYWdlX2RtYSAqcCwgY29uc3Qg dWludDMyX3QgdmFsMzIpCiB7CiAJdWludDY0X3QgdiA9IHZhbDMyOwogCiAJdiA9IHYgPDwgMzIg fCB2YWwzMjsKIAotCWZpbGxfcGFnZV9kbWEoZGV2LCBwLCB2KTsKKwlmaWxsX3BhZ2VfZG1hKHBw Z3R0LCBwLCB2KTsKIH0KIAogc3RhdGljIHN0cnVjdCBpOTE1X3BhZ2Vfc2NyYXRjaCAqYWxsb2Nf c2NyYXRjaF9wYWdlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCkBAIC00ODAsNyArNDgxLDcgQEAg c3RhdGljIHZvaWQgZ2VuOF9pbml0aWFsaXplX3B0KHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2Ug KnZtLAogCXNjcmF0Y2hfcHRlID0gZ2VuOF9wdGVfZW5jb2RlKHB4X2RtYSh2bS0+c2NyYXRjaF9w YWdlKSwKIAkJCQkgICAgICBJOTE1X0NBQ0hFX0xMQywgdHJ1ZSk7CiAKLQlmaWxsX3B4KHZtLT5k ZXYsIHB0LCBzY3JhdGNoX3B0ZSk7CisJZmlsbF9weChpOTE1X3ZtX3RvX3BwZ3R0KHZtKSwgcHQs IHNjcmF0Y2hfcHRlKTsKIH0KIAogc3RhdGljIHZvaWQgZ2VuNl9pbml0aWFsaXplX3B0KHN0cnVj dCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLApAQCAtNDkzLDcgKzQ5NCw3IEBAIHN0YXRpYyB2b2lk IGdlbjZfaW5pdGlhbGl6ZV9wdChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAlzY3Jh dGNoX3B0ZSA9IHZtLT5wdGVfZW5jb2RlKHB4X2RtYSh2bS0+c2NyYXRjaF9wYWdlKSwKIAkJCQkg ICAgIEk5MTVfQ0FDSEVfTExDLCB0cnVlLCAwKTsKIAotCWZpbGwzMl9weCh2bS0+ZGV2LCBwdCwg c2NyYXRjaF9wdGUpOworCWZpbGwzMl9weChpOTE1X3ZtX3RvX3BwZ3R0KHZtKSwgcHQsIHNjcmF0 Y2hfcHRlKTsKIH0KIAogc3RhdGljIHN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5ICphbGxvY19w ZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQpAQCAtNTQwLDcgKzU0MSw3IEBAIHN0YXRpYyB2b2lk IGdlbjhfaW5pdGlhbGl6ZV9wZChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAogCXNj cmF0Y2hfcGRlID0gZ2VuOF9wZGVfZW5jb2RlKHB4X2RtYSh2bS0+c2NyYXRjaF9wdCksIEk5MTVf Q0FDSEVfTExDKTsKIAotCWZpbGxfcHgodm0tPmRldiwgcGQsIHNjcmF0Y2hfcGRlKTsKKwlmaWxs X3B4KGk5MTVfdm1fdG9fcHBndHQodm0pLCBwZCwgc2NyYXRjaF9wZGUpOwogfQogCiBzdGF0aWMg aW50IF9fcGRwX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKQEAgLTYyMSw3ICs2MjIsNyBA QCBzdGF0aWMgdm9pZCBnZW44X2luaXRpYWxpemVfcGRwKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3Bh Y2UgKnZtLAogCiAJc2NyYXRjaF9wZHBlID0gZ2VuOF9wZHBlX2VuY29kZShweF9kbWEodm0tPnNj cmF0Y2hfcGQpLCBJOTE1X0NBQ0hFX0xMQyk7CiAKLQlmaWxsX3B4KHZtLT5kZXYsIHBkcCwgc2Ny YXRjaF9wZHBlKTsKKwlmaWxsX3B4KGk5MTVfdm1fdG9fcHBndHQodm0pLCBwZHAsIHNjcmF0Y2hf cGRwZSk7CiB9CiAKIHN0YXRpYyB2b2lkIGdlbjhfaW5pdGlhbGl6ZV9wbWw0KHN0cnVjdCBpOTE1 X2FkZHJlc3Nfc3BhY2UgKnZtLApAQCAtNjMyLDcgKzYzMyw3IEBAIHN0YXRpYyB2b2lkIGdlbjhf aW5pdGlhbGl6ZV9wbWw0KHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAogCXNjcmF0Y2hf cG1sNGUgPSBnZW44X3BtbDRlX2VuY29kZShweF9kbWEodm0tPnNjcmF0Y2hfcGRwKSwKIAkJCQkJ ICBJOTE1X0NBQ0hFX0xMQyk7CiAKLQlmaWxsX3B4KHZtLT5kZXYsIHBtbDQsIHNjcmF0Y2hfcG1s NGUpOworCWZpbGxfcHgoaTkxNV92bV90b19wcGd0dCh2bSksIHBtbDQsIHNjcmF0Y2hfcG1sNGUp OwogfQogCiBzdGF0aWMgdm9pZApAQCAtMTUxMiwxMiArMTUxMyw5IEBAIHN0YXRpYyBpbnQgZ2Vu OF9wcmVhbGxvY2F0ZV90b3BfbGV2ZWxfcGRwcyhzdHJ1Y3QgaTkxNV9od19wcGd0dCAqcHBndHQp CiAgKi8KIHN0YXRpYyBpbnQgZ2VuOF9wcGd0dF9pbml0KHN0cnVjdCBpOTE1X2h3X3BwZ3R0ICpw cGd0dCkKIHsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KHBw Z3R0LT5iYXNlLmRldik7CiAJaW50IHJldDsKIAotCXJldCA9IGdlbjhfaW5pdF9zY3JhdGNoKCZw cGd0dC0+YmFzZSk7Ci0JaWYgKHJldCkKLQkJcmV0dXJuIHJldDsKLQogCXBwZ3R0LT5iYXNlLnN0 YXJ0ID0gMDsKIAlwcGd0dC0+YmFzZS5jbGVhbnVwID0gZ2VuOF9wcGd0dF9jbGVhbnVwOwogCXBw Z3R0LT5iYXNlLmFsbG9jYXRlX3ZhX3JhbmdlID0gZ2VuOF9hbGxvY192YV9yYW5nZTsKQEAgLTE1 MjcsNiArMTUyNSwxOCBAQCBzdGF0aWMgaW50IGdlbjhfcHBndHRfaW5pdChzdHJ1Y3QgaTkxNV9o d19wcGd0dCAqcHBndHQpCiAJcHBndHQtPmJhc2UuYmluZF92bWEgPSBwcGd0dF9iaW5kX3ZtYTsK IAlwcGd0dC0+ZGVidWdfZHVtcCA9IGdlbjhfZHVtcF9wcGd0dDsKIAorCS8qIFRoZXJlIGFyZSBv bmx5IGZldyBleGNlcHRpb25zIGZvciBnZW4gPj02LiBjaHYgYW5kIGJ4dC4KKwkgKiBBbmQgd2Ug YXJlIG5vdCBzdXJlIGFib3V0IHRoZSBsYXR0ZXIgc28gcGxheSBzYWZlIGZvciBub3cuCisJICov CisJaWYgKElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpIHx8IElTX0JST1hUT04oZGV2X3ByaXYpKQor CQlwcGd0dC0+a3VubWFwX3BhZ2VfZG1hID0ga3VubWFwX3BhZ2VfZG1hX2ZsdXNoOworCWVsc2UK KwkJcHBndHQtPmt1bm1hcF9wYWdlX2RtYSA9IGt1bm1hcF9wYWdlX2RtYTsKKworCXJldCA9IGdl bjhfaW5pdF9zY3JhdGNoKCZwcGd0dC0+YmFzZSk7CisJaWYgKHJldCkKKwkJcmV0dXJuIHJldDsK KwogCWlmIChVU0VTX0ZVTExfNDhCSVRfUFBHVFQocHBndHQtPmJhc2UuZGV2KSkgewogCQlyZXQg PSBzZXR1cF9weChwcGd0dC0+YmFzZS5kZXYsICZwcGd0dC0+cG1sNCk7CiAJCWlmIChyZXQpCkBA IC0yMDczLDYgKzIwODMsOSBAQCBzdGF0aWMgaW50IGdlbjZfcHBndHRfaW5pdChzdHJ1Y3QgaTkx NV9od19wcGd0dCAqcHBndHQpCiAJaW50IHJldDsKIAogCXBwZ3R0LT5iYXNlLnB0ZV9lbmNvZGUg PSBnZ3R0LT5iYXNlLnB0ZV9lbmNvZGU7CisKKwlwcGd0dC0+a3VubWFwX3BhZ2VfZG1hID0ga3Vu bWFwX3BhZ2VfZG1hOworCiAJaWYgKElTX0dFTjYoZGV2KSkgewogCQlwcGd0dC0+c3dpdGNoX21t ID0gZ2VuNl9tbV9zd2l0Y2g7CiAJfSBlbHNlIGlmIChJU19IQVNXRUxMKGRldikpIHsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKaW5kZXggNjJiZTc3Y2FjNWNkLi5iMzZiOTk3NDA2YzYg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC0zNzksNiArMzc5LDcgQEAgc3Ry dWN0IGk5MTVfaHdfcHBndHQgewogCiAJZ2VuNl9wdGVfdCBfX2lvbWVtICpwZF9hZGRyOwogCisJ dm9pZCAoKmt1bm1hcF9wYWdlX2RtYSkodm9pZCAqdmFkZHIpOwogCWludCAoKmVuYWJsZSkoc3Ry dWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0KTsKIAlpbnQgKCpzd2l0Y2hfbW0pKHN0cnVjdCBpOTE1 X2h3X3BwZ3R0ICpwcGd0dCwKIAkJCSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSk7 Ci0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==