From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gerd Hoffmann Subject: [PATCH v3 5/7] virtio-gpu: add basic prime support Date: Fri, 2 Oct 2015 13:58:22 +0200 Message-ID: <1443787104-24243-6-git-send-email-kraxel@redhat.com> References: <1443787104-24243-1-git-send-email-kraxel@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTPS id B04E1A551 for ; Fri, 2 Oct 2015 04:58:40 -0700 (PDT) In-Reply-To: <1443787104-24243-1-git-send-email-kraxel@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: open list , "open list:VIRTIO GPU DRIVER" , Dave Airlie List-Id: dri-devel@lists.freedesktop.org RnJvbTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4KClRoaXMgaXMgZW5vdWdoIHRv IGVuYWJsZSBEUkkzLgoKU2lnbmVkLW9mZi1ieTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0 LmNvbT4KU2lnbmVkLW9mZi1ieTogR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20+Ci0t LQogZHJpdmVycy9ncHUvZHJtL3ZpcnRpby9NYWtlZmlsZSAgICAgICAgfCAgMiArLQogZHJpdmVy cy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rydi5jICAgfCAxMyArKysrKystCiBkcml2ZXJzL2dw dS9kcm0vdmlydGlvL3ZpcnRncHVfZHJ2LmggICB8IDEyICsrKysrKwogZHJpdmVycy9ncHUvZHJt L3ZpcnRpby92aXJ0Z3B1X3ByaW1lLmMgfCA3MSArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDk2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p CiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X3ByaW1l LmMKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL01ha2VmaWxlIGIvZHJpdmVy cy9ncHUvZHJtL3ZpcnRpby9NYWtlZmlsZQppbmRleCBkYTdiZjE5Li4zZmI4ZWFjIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL01ha2VmaWxlCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS92aXJ0aW8vTWFrZWZpbGUKQEAgLTcsNiArNyw2IEBAIGNjZmxhZ3MteSA6PSAtSWluY2x1ZGUv ZHJtCiB2aXJ0aW8tZ3B1LXkgOj0gdmlydGdwdV9kcnYubyB2aXJ0Z3B1X2ttcy5vIHZpcnRncHVf ZHJtX2J1cy5vIHZpcnRncHVfZ2VtLm8gXAogCXZpcnRncHVfZmIubyB2aXJ0Z3B1X2Rpc3BsYXku byB2aXJ0Z3B1X3ZxLm8gdmlydGdwdV90dG0ubyBcCiAJdmlydGdwdV9mZW5jZS5vIHZpcnRncHVf b2JqZWN0Lm8gdmlydGdwdV9kZWJ1Z2ZzLm8gdmlydGdwdV9wbGFuZS5vIFwKLQl2aXJ0Z3B1X2lv Y3RsLm8KKwl2aXJ0Z3B1X2lvY3RsLm8gdmlydGdwdV9wcmltZS5vCiAKIG9iai0kKENPTkZJR19E Uk1fVklSVElPX0dQVSkgKz0gdmlydGlvLWdwdS5vCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vdmlydGlvL3ZpcnRncHVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVf ZHJ2LmMKaW5kZXggYzI3ZDNhMy4uMWYxNWVmOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L3ZpcnRpby92aXJ0Z3B1X2Rydi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdw dV9kcnYuYwpAQCAtMTE4LDcgKzExOCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVy YXRpb25zIHZpcnRpb19ncHVfZHJpdmVyX2ZvcHMgPSB7CiAKIAogc3RhdGljIHN0cnVjdCBkcm1f ZHJpdmVyIGRyaXZlciA9IHsKLQkuZHJpdmVyX2ZlYXR1cmVzID0gRFJJVkVSX01PREVTRVQgfCBE UklWRVJfR0VNLAorCS5kcml2ZXJfZmVhdHVyZXMgPSBEUklWRVJfTU9ERVNFVCB8IERSSVZFUl9H RU0gfCBEUklWRVJfUFJJTUUsCiAJLnNldF9idXNpZCA9IGRybV92aXJ0aW9fc2V0X2J1c2lkLAog CS5sb2FkID0gdmlydGlvX2dwdV9kcml2ZXJfbG9hZCwKIAkudW5sb2FkID0gdmlydGlvX2dwdV9k cml2ZXJfdW5sb2FkLApAQCAtMTMzLDYgKzEzMywxNyBAQCBzdGF0aWMgc3RydWN0IGRybV9kcml2 ZXIgZHJpdmVyID0gewogCS5kZWJ1Z2ZzX2luaXQgPSB2aXJ0aW9fZ3B1X2RlYnVnZnNfaW5pdCwK IAkuZGVidWdmc19jbGVhbnVwID0gdmlydGlvX2dwdV9kZWJ1Z2ZzX3Rha2Vkb3duLAogI2VuZGlm CisJLnByaW1lX2hhbmRsZV90b19mZCA9IGRybV9nZW1fcHJpbWVfaGFuZGxlX3RvX2ZkLAorCS5w cmltZV9mZF90b19oYW5kbGUgPSBkcm1fZ2VtX3ByaW1lX2ZkX3RvX2hhbmRsZSwKKwkuZ2VtX3By aW1lX2V4cG9ydCA9IGRybV9nZW1fcHJpbWVfZXhwb3J0LAorCS5nZW1fcHJpbWVfaW1wb3J0ID0g ZHJtX2dlbV9wcmltZV9pbXBvcnQsCisJLmdlbV9wcmltZV9waW4gPSB2aXJ0Z3B1X2dlbV9wcmlt ZV9waW4sCisJLmdlbV9wcmltZV91bnBpbiA9IHZpcnRncHVfZ2VtX3ByaW1lX3VucGluLAorCS5n ZW1fcHJpbWVfZ2V0X3NnX3RhYmxlID0gdmlydGdwdV9nZW1fcHJpbWVfZ2V0X3NnX3RhYmxlLAor CS5nZW1fcHJpbWVfaW1wb3J0X3NnX3RhYmxlID0gdmlydGdwdV9nZW1fcHJpbWVfaW1wb3J0X3Nn X3RhYmxlLAorCS5nZW1fcHJpbWVfdm1hcCA9IHZpcnRncHVfZ2VtX3ByaW1lX3ZtYXAsCisJLmdl bV9wcmltZV92dW5tYXAgPSB2aXJ0Z3B1X2dlbV9wcmltZV92dW5tYXAsCisJLmdlbV9wcmltZV9t bWFwID0gdmlydGdwdV9nZW1fcHJpbWVfbW1hcCwKIAogCS5nZW1fZnJlZV9vYmplY3QgPSB2aXJ0 aW9fZ3B1X2dlbV9mcmVlX29iamVjdCwKIAkuZ2VtX29wZW5fb2JqZWN0ID0gdmlydGlvX2dwdV9n ZW1fb2JqZWN0X29wZW4sCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRn cHVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfZHJ2LmgKaW5kZXggMjcx OTEwOC4uNzlmMGFiZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1 X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9kcnYuaApAQCAtMzU5 LDYgKzM1OSwxOCBAQCBpbnQgdmlydGlvX2dwdV9vYmplY3RfZ2V0X3NnX3RhYmxlKHN0cnVjdCB2 aXJ0aW9fZ3B1X2RldmljZSAqcWRldiwKIHZvaWQgdmlydGlvX2dwdV9vYmplY3RfZnJlZV9zZ190 YWJsZShzdHJ1Y3QgdmlydGlvX2dwdV9vYmplY3QgKmJvKTsKIGludCB2aXJ0aW9fZ3B1X29iamVj dF93YWl0KHN0cnVjdCB2aXJ0aW9fZ3B1X29iamVjdCAqYm8sIGJvb2wgbm9fd2FpdCk7CiAKKy8q IHZpcnRncHVfcHJpbWUuYyAqLworaW50IHZpcnRncHVfZ2VtX3ByaW1lX3BpbihzdHJ1Y3QgZHJt X2dlbV9vYmplY3QgKm9iaik7Cit2b2lkIHZpcnRncHVfZ2VtX3ByaW1lX3VucGluKHN0cnVjdCBk cm1fZ2VtX29iamVjdCAqb2JqKTsKK3N0cnVjdCBzZ190YWJsZSAqdmlydGdwdV9nZW1fcHJpbWVf Z2V0X3NnX3RhYmxlKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKTsKK3N0cnVjdCBkcm1fZ2Vt X29iamVjdCAqdmlydGdwdV9nZW1fcHJpbWVfaW1wb3J0X3NnX3RhYmxlKAorICAgICAgICBzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZG1hX2J1Zl9hdHRhY2htZW50ICphdHRhY2gsCisg ICAgICAgIHN0cnVjdCBzZ190YWJsZSAqc2d0KTsKK3ZvaWQgKnZpcnRncHVfZ2VtX3ByaW1lX3Zt YXAoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopOwordm9pZCB2aXJ0Z3B1X2dlbV9wcmltZV92 dW5tYXAoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmosIHZvaWQgKnZhZGRyKTsKK2ludCB2aXJ0 Z3B1X2dlbV9wcmltZV9tbWFwKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSk7CisKIHN0 YXRpYyBpbmxpbmUgc3RydWN0IHZpcnRpb19ncHVfb2JqZWN0KgogdmlydGlvX2dwdV9vYmplY3Rf cmVmKHN0cnVjdCB2aXJ0aW9fZ3B1X29iamVjdCAqYm8pCiB7CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfcHJpbWUuYyBiL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8v dmlydGdwdV9wcmltZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM4NWUw ZWIKLS0tIC9kZXYvbnVsbAorKysgYi9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfcHJp bWUuYwpAQCAtMCwwICsxLDcxIEBACisvKgorICogQ29weXJpZ2h0IDIwMTQgQ2Fub25pY2FsCisg KgorICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFu eSBwZXJzb24gb2J0YWluaW5nIGEKKyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2Np YXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksCisgKiB0byBkZWFsIGlu IHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1p dGF0aW9uCisgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlz aCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwKKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUg U29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQorICogU29mdHdhcmUg aXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u czoKKyAqCisgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9u IG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgorICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlh bCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJ REVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKKyAq IElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0Yg TUVSQ0hBTlRBQklMSVRZLAorICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5E IE5PTklORlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxMCisgKiBUSEUgQ09QWVJJR0hUIEhP TERFUihTKSBPUiBBVVRIT1IoUykgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IK KyAqIE9USEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRP UlQgT1IgT1RIRVJXSVNFLAorICogQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElP TiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SCisgKiBPVEhFUiBERUFMSU5HUyBJTiBU SEUgU09GVFdBUkUuCisgKgorICogQXV0aG9yczogQW5kcmVhcyBQb2tvcm55CisgKi8KKworI2lu Y2x1ZGUgInZpcnRncHVfZHJ2LmgiCisKKy8qIEVtcHR5IEltcGxlbWVudGF0aW9ucyBhcyB0aGVy ZSBzaG91bGQgbm90IGJlIGFueSBvdGhlciBkcml2ZXIgZm9yIGEgdmlydHVhbAorICogZGV2aWNl IHRoYXQgbWlnaHQgc2hhcmUgYnVmZmVycyB3aXRoIHZpcnRncHUgKi8KKworaW50IHZpcnRncHVf Z2VtX3ByaW1lX3BpbihzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaikKK3sKKwlXQVJOX09OQ0Uo MSwgIm5vdCBpbXBsZW1lbnRlZCIpOworCXJldHVybiAtRU5PREVWOworfQorCit2b2lkIHZpcnRn cHVfZ2VtX3ByaW1lX3VucGluKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKQoreworCVdBUk5f T05DRSgxLCAibm90IGltcGxlbWVudGVkIik7Cit9CisKKworc3RydWN0IHNnX3RhYmxlICp2aXJ0 Z3B1X2dlbV9wcmltZV9nZXRfc2dfdGFibGUoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopCit7 CisJV0FSTl9PTkNFKDEsICJub3QgaW1wbGVtZW50ZWQiKTsKKwlyZXR1cm4gRVJSX1BUUigtRU5P REVWKTsKK30KKworc3RydWN0IGRybV9nZW1fb2JqZWN0ICp2aXJ0Z3B1X2dlbV9wcmltZV9pbXBv cnRfc2dfdGFibGUoCisJc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRtYV9idWZfYXR0 YWNobWVudCAqYXR0YWNoLAorCXN0cnVjdCBzZ190YWJsZSAqdGFibGUpCit7CisJV0FSTl9PTkNF KDEsICJub3QgaW1wbGVtZW50ZWQiKTsKKwlyZXR1cm4gRVJSX1BUUigtRU5PREVWKTsKK30KKwor dm9pZCAqdmlydGdwdV9nZW1fcHJpbWVfdm1hcChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaikK K3sKKwlXQVJOX09OQ0UoMSwgIm5vdCBpbXBsZW1lbnRlZCIpOworCXJldHVybiBFUlJfUFRSKC1F Tk9ERVYpOworfQorCit2b2lkIHZpcnRncHVfZ2VtX3ByaW1lX3Z1bm1hcChzdHJ1Y3QgZHJtX2dl bV9vYmplY3QgKm9iaiwgdm9pZCAqdmFkZHIpCit7CisJV0FSTl9PTkNFKDEsICJub3QgaW1wbGVt ZW50ZWQiKTsKK30KKworaW50IHZpcnRncHVfZ2VtX3ByaW1lX21tYXAoc3RydWN0IGRybV9nZW1f b2JqZWN0ICpvYmosCisJCSAgICAgICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKmFyZWEpCit7CisJ cmV0dXJuIC1FTk9ERVY7Cit9Ci0tIAoxLjguMy4xCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbAo=