From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael D Labriola Subject: [PATCH] drm: add func to better detect wether swiotlb is needed Date: Tue, 19 Feb 2019 18:08:12 -0500 Message-ID: <1550617692-27306-1-git-send-email-michael.d.labriola@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: dri-devel@lists.freedesktop.org, Alex Deucher , Christian Koenig , Chunming Zhou , amd-gfx@lists.freedesktop.org, Monk Liu Cc: Juergen Gross , Konrad Rzeszutek Wilk , Andrew Cooper , Michael D Labriola , xen-devel@lists.xen.org, Christoph Hellwig , Paul Durrant , Jan Beulich List-Id: dri-devel@lists.freedesktop.org VGhpcyBjb21taXQgZml4ZXMgRFJNIGZhaWx1cmVzIG9uIFhlbiBQViBzeXN0ZW1zIHRoYXQgd2Vy ZSBpbnRyb2R1Y2VkIGluCnY0LjE3IGJ5IHRoZSBmb2xsb3dpbmcgY29tbWl0czoKCjgyNjI2MzYz IGRybTogYWRkIGZ1bmMgdG8gZ2V0IG1heCBpb21lbSBhZGRyZXNzIHYyCmZkNWZkNDgwIGRybS9h bWRncHU6IG9ubHkgZW5hYmxlIHN3aW90bGIgYWxsb2Mgd2hlbiBuZWVkIHYyCjFiYzNkM2NjIGRy bS9yYWRlb246IG9ubHkgZW5hYmxlIHN3aW90bGIgcGF0aCB3aGVuIG5lZWQgdjIKClRoZSBpbnRy b2R1Y3Rpb24gb2YgLT5uZWVkX3N3aW90bGIgdG8gdGhlIHR0bV9kbWFfcG9wdWxhdGUoKSBjb25k aXRpb25hbHMKaW4gdGhlIHJhZGVvbiBhbmQgYW1kZ3B1IGRldmljZSBkcml2ZXJzIGNhdXNlcyBH bm9tZSB0byBpbW1lZGlhdGVseSBjcmFzaApvbiBYZW4gUFYgc3lzdGVtcywgcmV0dXJuaW5nIHRo ZSB1c2VyIHRvIHRoZSBsb2dpbiBzY3JlZW4uICBUaGUgZm9sbG93aW5nCmtlcm5lbCBlcnJvcnMg Z2V0IGxvZ2dlZDoKClsgICAyOC41NTQyNTldIHJhZGVvbl9kcF9hdXhfdHJhbnNmZXJfbmF0aXZl OiAyMDAgY2FsbGJhY2tzIHN1cHByZXNzZWQKWyAgIDMxLjIxOTgyMV0gcmFkZW9uIDAwMDA6MDE6 MDAuMDogc3dpb3RsYiBidWZmZXIgaXMgZnVsbCAoc3o6IDIwOTcxNTIgYnl0ZXMpClsgICAzMS4y MjAwMzBdIFtkcm06cmFkZW9uX2dlbV9vYmplY3RfY3JlYXRlIFtyYWRlb25dXSAqRVJST1IqIEZh aWxlZCB0byBhbGxvY2F0ZSBHRU0gb2JqZWN0ICgxNjM4NDAwMCwgMiwgNDA5NiwgLTE0KQpbICAg MzEuMjI2MTA5XSByYWRlb24gMDAwMDowMTowMC4wOiBzd2lvdGxiIGJ1ZmZlciBpcyBmdWxsIChz ejogMjA5NzE1MiBieXRlcykKWyAgIDMxLjIyNjMwMF0gW2RybTpyYWRlb25fZ2VtX29iamVjdF9j cmVhdGUgW3JhZGVvbl1dICpFUlJPUiogRmFpbGVkIHRvIGFsbG9jYXRlIEdFTSBvYmplY3QgKDE2 Mzg0MDAwLCAyLCA0MDk2LCAtMTQpClsgICAzMS4zMDA3MzRdIGdub21lLXNoZWxsWzE5MzVdOiBz ZWdmYXVsdCBhdCA4OCBpcCAwMDAwN2YzOTE1MWNkOTA0IHNwIDAwMDA3ZmZjOTc2MTFhZDggZXJy b3IgNCBpbiBsaWJtdXR0ZXItY29nbC5zb1s3ZjM5MTUxNzgwMDArYWEwMDBdClsgICAzMS4zMDA3 NDVdIENvZGU6IDVmIGMzIDBmIDFmIDQwIDAwIDQ4IDhiIDQ3IDc4IDQ4IDhiIDQwIDQwIGZmIGUw IDY2IDBmIDFmIDQ0IDAwIDAwIDQ4IDhiIDQ3IDc4IDQ4IDhiIDQwIDQ4IGZmIGUwIDY2IDBmIDFm IDQ0IDAwIDAwIDQ4IDhiIDQ3IDc4IDw0OD4gOGIgODAgODggMDAgMDAgMDAgZmYgZTAgMGYgMWYg MDAgNDggOGIgNDcgNzggNDggOGIgNDAgNjggZmYgZTAKWyAgIDM4LjE5MzMwMl0gcmFkZW9uX2Rw X2F1eF90cmFuc2Zlcl9uYXRpdmU6IDExNiBjYWxsYmFja3Mgc3VwcHJlc3NlZApbICAgNDAuMDA5 MzE3XSByYWRlb24gMDAwMDowMTowMC4wOiBzd2lvdGxiIGJ1ZmZlciBpcyBmdWxsIChzejogMjA5 NzE1MiBieXRlcykKWyAgIDQwLjAwOTQ4OF0gW2RybTpyYWRlb25fZ2VtX29iamVjdF9jcmVhdGUg W3JhZGVvbl1dICpFUlJPUiogRmFpbGVkIHRvIGFsbG9jYXRlIEdFTSBvYmplY3QgKDE2Mzg0MDAw LCAyLCA0MDk2LCAtMTQpClsgICA0MC4wMTUxMTRdIHJhZGVvbiAwMDAwOjAxOjAwLjA6IHN3aW90 bGIgYnVmZmVyIGlzIGZ1bGwgKHN6OiAyMDk3MTUyIGJ5dGVzKQpbICAgNDAuMDE1Mjk3XSBbZHJt OnJhZGVvbl9nZW1fb2JqZWN0X2NyZWF0ZSBbcmFkZW9uXV0gKkVSUk9SKiBGYWlsZWQgdG8gYWxs b2NhdGUgR0VNIG9iamVjdCAoMTYzODQwMDAsIDIsIDQwOTYsIC0xNCkKWyAgIDQwLjAyODMwMl0g Z25vbWUtc2hlbGxbMjQzMV06IHNlZ2ZhdWx0IGF0IDJkYWRmNDAgaXAgMDAwMDAwMDAwMmRhZGY0 MCBzcCAwMDAwN2ZmY2QyNGVhNWY4IGVycm9yIDE1ClsgICA0MC4wMjgzMDZdIENvZGU6IDIwIDZl IDMxIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDM3IGUzIDNkIDJkIDdmIDAwIDAwIDgwIGY0IGU2 IDNkIDJkIDdmIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAw IDAwIDAwIDwwMD4gMDAgMDAgMDAgMDAgMDAgMDAgMDAgYzEgMDAgMDAgMDAgMDAgMDAgMDAgMDAg ODAgZTEgZDIgMDMgMDAgMDAKClRoaXMgY29tbWl0IHJlbmFtZXMgZHJtX2dldF9tYXhfaW9tZW0o KSB0byBkcm1fbmVlZF9zd2lvdGxiKCksIGFkZHMgYQp4ZW5fcHZfZG9tYWluKCkgY2hlY2sgdG8g aXQsIGFuZCBtb3ZlcyB0aGUgYml0IHNoaWZ0aW5nIGNvbXBhcmlzb24gdGhhdAphbHdheXMgZm9s bG93cyBpdHMgdXNhZ2UgaW50byB0aGUgZnVuY3Rpb24gKHNpbXBsaWZ5aW5nIHRoZSBkcm0gZHJp dmVyCmNvZGUpLgoKU2lnbmVkLW9mZi1ieTogTWljaGFlbCBEIExhYnJpb2xhIDxtaWNoYWVsLmQu bGFicmlvbGFAZ21haWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dtY192 N18wLmMgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dtY192OF8wLmMgIHwg IDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dtY192OV8wLmMgIHwgIDIgKy0KIGRy aXZlcnMvZ3B1L2RybS9kcm1fbWVtb3J5LmMgICAgICAgICAgIHwgMTkgKysrKysrKysrKysrKysr Ky0tLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZGV2aWNlLmMgfCAgMiArLQogaW5j bHVkZS9kcm0vZHJtX2NhY2hlLmggICAgICAgICAgICAgICAgfCAgMiArLQogNiBmaWxlcyBjaGFu Z2VkLCAyMSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dtY192N18wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9nbWNfdjdfMC5jCmluZGV4IDkxMGM0Y2UuLjZiYzAyNjYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dtY192N18wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvZ21jX3Y3XzAuYwpAQCAtMTAyOSw3ICsxMDI5LDcgQEAgc3RhdGljIGludCBnbWNf djdfMF9zd19pbml0KHZvaWQgKmhhbmRsZSkKIAkJcGNpX3NldF9jb25zaXN0ZW50X2RtYV9tYXNr KGFkZXYtPnBkZXYsIERNQV9CSVRfTUFTSygzMikpOwogCQlwcl93YXJuKCJhbWRncHU6IE5vIGNv aGVyZW50IERNQSBhdmFpbGFibGVcbiIpOwogCX0KLQlhZGV2LT5uZWVkX3N3aW90bGIgPSBkcm1f Z2V0X21heF9pb21lbSgpID4gKCh1NjQpMSA8PCBkbWFfYml0cyk7CisJYWRldi0+bmVlZF9zd2lv dGxiID0gZHJtX25lZWRfc3dpb3RsYihkbWFfYml0cyk7CiAKIAlyID0gZ21jX3Y3XzBfaW5pdF9t aWNyb2NvZGUoYWRldik7CiAJaWYgKHIpIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2dtY192OF8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nbWNfdjhf MC5jCmluZGV4IDc0N2MwNjguLjg2MzhhZGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2dtY192OF8wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ21j X3Y4XzAuYwpAQCAtMTE1NSw3ICsxMTU1LDcgQEAgc3RhdGljIGludCBnbWNfdjhfMF9zd19pbml0 KHZvaWQgKmhhbmRsZSkKIAkJcGNpX3NldF9jb25zaXN0ZW50X2RtYV9tYXNrKGFkZXYtPnBkZXYs IERNQV9CSVRfTUFTSygzMikpOwogCQlwcl93YXJuKCJhbWRncHU6IE5vIGNvaGVyZW50IERNQSBh dmFpbGFibGVcbiIpOwogCX0KLQlhZGV2LT5uZWVkX3N3aW90bGIgPSBkcm1fZ2V0X21heF9pb21l bSgpID4gKCh1NjQpMSA8PCBkbWFfYml0cyk7CisJYWRldi0+bmVlZF9zd2lvdGxiID0gZHJtX25l ZWRfc3dpb3RsYihkbWFfYml0cyk7CiAKIAlyID0gZ21jX3Y4XzBfaW5pdF9taWNyb2NvZGUoYWRl dik7CiAJaWYgKHIpIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dt Y192OV8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nbWNfdjlfMC5jCmluZGV4IGYz NWQ3YTUuLjRmNjcwOTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dt Y192OV8wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ21jX3Y5XzAuYwpAQCAt OTg5LDcgKzk4OSw3IEBAIHN0YXRpYyBpbnQgZ21jX3Y5XzBfc3dfaW5pdCh2b2lkICpoYW5kbGUp CiAJCXBjaV9zZXRfY29uc2lzdGVudF9kbWFfbWFzayhhZGV2LT5wZGV2LCBETUFfQklUX01BU0so MzIpKTsKIAkJcHJpbnRrKEtFUk5fV0FSTklORyAiYW1kZ3B1OiBObyBjb2hlcmVudCBETUEgYXZh aWxhYmxlLlxuIik7CiAJfQotCWFkZXYtPm5lZWRfc3dpb3RsYiA9IGRybV9nZXRfbWF4X2lvbWVt KCkgPiAoKHU2NCkxIDw8IGRtYV9iaXRzKTsKKwlhZGV2LT5uZWVkX3N3aW90bGIgPSBkcm1fbmVl ZF9zd2lvdGxiKGRtYV9iaXRzKTsKIAogCWlmIChhZGV2LT5hc2ljX3R5cGUgPT0gQ0hJUF9WRUdB MjApIHsKIAkJciA9IGdmeGh1Yl92MV8xX2dldF94Z21pX2luZm8oYWRldik7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX21lbW9yeS5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9tZW1v cnkuYwppbmRleCBkNjllNGZjLi42YWY1OWE2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v ZHJtX21lbW9yeS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fbWVtb3J5LmMKQEAgLTM1LDYg KzM1LDcgQEAKIAogI2luY2x1ZGUgPGxpbnV4L2hpZ2htZW0uaD4KICNpbmNsdWRlIDxsaW51eC9l eHBvcnQuaD4KKyNpbmNsdWRlIDx4ZW4veGVuLmg+CiAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KICNp bmNsdWRlICJkcm1fbGVnYWN5LmgiCiAKQEAgLTE1MCwxNSArMTUxLDI3IEBAIHZvaWQgZHJtX2xl Z2FjeV9pb3JlbWFwZnJlZShzdHJ1Y3QgZHJtX2xvY2FsX21hcCAqbWFwLCBzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQogfQogRVhQT1JUX1NZTUJPTChkcm1fbGVnYWN5X2lvcmVtYXBmcmVlKTsKIAot dTY0IGRybV9nZXRfbWF4X2lvbWVtKHZvaWQpCitib29sIGRybV9uZWVkX3N3aW90bGIoaW50IGRt YV9iaXRzKQogewogCXN0cnVjdCByZXNvdXJjZSAqdG1wOwogCXJlc291cmNlX3NpemVfdCBtYXhf aW9tZW0gPSAwOwogCisJLyoKKwkgKiBYZW4gcGFyYXZpcnR1YWwgaG9zdHMgcmVxdWlyZSBzd2lv dGxiIHJlZ2FyZGxlc3Mgb2YgcmVxdWVzdGVkIGRtYQorCSAqIHRyYW5zZmVyIHNpemUuCisJICoK KwkgKiBOT1RFOiBSZWFsbHksIHdoYXQgaXQgcmVxdWlyZXMgaXMgdXNlIG9mIHRoZSBkbWFfYWxs b2NfY29oZXJlbnQKKwkgKiAgICAgICBhbGxvY2F0b3IgdXNlZCBpbiB0dG1fZG1hX3BvcHVsYXRl KCkgaW5zdGVhZCBvZgorCSAqICAgICAgIHR0bV9wb3B1bGF0ZV9hbmRfbWFwX3BhZ2VzKCksIHdo aWNoIGJvdW5jZSBidWZmZXJzIHNvIG11Y2ggaW4KKwkgKiAgICAgICBYZW4gaXQgbGVhZHMgdG8g c3dpb3RsYiBidWZmZXIgZXhoYXVzdGlvbi4KKwkgKi8KKwlpZiAoeGVuX3B2X2RvbWFpbigpKQor CQlyZXR1cm4gdHJ1ZTsKKwogCWZvciAodG1wID0gaW9tZW1fcmVzb3VyY2UuY2hpbGQ7IHRtcDsg dG1wID0gdG1wLT5zaWJsaW5nKSB7CiAJCW1heF9pb21lbSA9IG1heChtYXhfaW9tZW0sICB0bXAt PmVuZCk7CiAJfQogCi0JcmV0dXJuIG1heF9pb21lbTsKKwlyZXR1cm4gbWF4X2lvbWVtID4gKCh1 NjQpMSA8PCBkbWFfYml0cyk7CiB9Ci1FWFBPUlRfU1lNQk9MKGRybV9nZXRfbWF4X2lvbWVtKTsK K0VYUE9SVF9TWU1CT0woZHJtX25lZWRfc3dpb3RsYik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vcmFkZW9uL3JhZGVvbl9kZXZpY2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFk ZW9uX2RldmljZS5jCmluZGV4IDU5YzhhNjYuLmExZDNjNjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9yYWRlb24vcmFkZW9uX2RldmljZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRl b24vcmFkZW9uX2RldmljZS5jCkBAIC0xMzg3LDcgKzEzODcsNyBAQCBpbnQgcmFkZW9uX2Rldmlj ZV9pbml0KHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAogCQlwY2lfc2V0X2NvbnNpc3RlbnRf ZG1hX21hc2socmRldi0+cGRldiwgRE1BX0JJVF9NQVNLKDMyKSk7CiAJCXByX3dhcm4oInJhZGVv bjogTm8gY29oZXJlbnQgRE1BIGF2YWlsYWJsZVxuIik7CiAJfQotCXJkZXYtPm5lZWRfc3dpb3Rs YiA9IGRybV9nZXRfbWF4X2lvbWVtKCkgPiAoKHU2NCkxIDw8IGRtYV9iaXRzKTsKKwlyZGV2LT5u ZWVkX3N3aW90bGIgPSBkcm1fbmVlZF9zd2lvdGxiKGRtYV9iaXRzKTsKIAogCS8qIFJlZ2lzdGVy cyBtYXBwaW5nICovCiAJLyogVE9ETzogYmxvY2sgdXNlcnNwYWNlIG1hcHBpbmcgb2YgaW8gcmVn aXN0ZXIgKi8KZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jYWNoZS5oIGIvaW5jbHVkZS9k cm0vZHJtX2NhY2hlLmgKaW5kZXggYmZlMTYzOS4uNjMzZWFhZiAxMDA2NDQKLS0tIGEvaW5jbHVk ZS9kcm0vZHJtX2NhY2hlLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2NhY2hlLmgKQEAgLTM4LDcg KzM4LDcgQEAKIHZvaWQgZHJtX2NsZmx1c2hfcGFnZXMoc3RydWN0IHBhZ2UgKnBhZ2VzW10sIHVu c2lnbmVkIGxvbmcgbnVtX3BhZ2VzKTsKIHZvaWQgZHJtX2NsZmx1c2hfc2coc3RydWN0IHNnX3Rh YmxlICpzdCk7CiB2b2lkIGRybV9jbGZsdXNoX3ZpcnRfcmFuZ2Uodm9pZCAqYWRkciwgdW5zaWdu ZWQgbG9uZyBsZW5ndGgpOwotdTY0IGRybV9nZXRfbWF4X2lvbWVtKHZvaWQpOworYm9vbCBkcm1f bmVlZF9zd2lvdGxiKGludCBkbWFfYml0cyk7CiAKIAogc3RhdGljIGlubGluZSBib29sIGRybV9h cmNoX2Nhbl93Y19tZW1vcnkodm9pZCkKLS0gCjEuOC4zLjEKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h aWxtYW4vbGlzdGluZm8veGVuLWRldmVs