From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Hellstrom Subject: Re: [PATCH 3/5] drm/vmwgfx: use core drm to extend/check vmw_execbuf_ioctl Date: Wed, 22 May 2019 19:01:45 +0000 Message-ID: <6c2d4e6c1554e59bfcf1b58fdc42c54bbe59b4c0.camel@vmware.com> References: <20190522164119.24139-1-emil.l.velikov@gmail.com> <20190522164119.24139-3-emil.l.velikov@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM05-DM3-obe.outbound.protection.outlook.com (mail-eopbgr730056.outbound.protection.outlook.com [40.107.73.56]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1112C899C7 for ; Wed, 22 May 2019 19:01:52 +0000 (UTC) In-Reply-To: <20190522164119.24139-3-emil.l.velikov@gmail.com> Content-Language: en-US Content-ID: <3EB43C4E7B773E4A8F522923A94539AD@namprd05.prod.outlook.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" , "emil.l.velikov@gmail.com" Cc: "kernel@collabora.com" , Linux-graphics-maintainer List-Id: dri-devel@lists.freedesktop.org SGksIEVtaWwsDQoNCk9uIFdlZCwgMjAxOS0wNS0yMiBhdCAxNzo0MSArMDEwMCwgRW1pbCBWZWxp a292IHdyb3RlOg0KPiBGcm9tOiBFbWlsIFZlbGlrb3YgPGVtaWwudmVsaWtvdkBjb2xsYWJvcmEu Y29tPg0KPiANCj4gQ3VycmVudGx5IHZtd19leGVjYnVmX2lvY3RsKCkgb3Blbi1jb2RlcyB0aGUg cGVybWlzc2lvbiBjaGVja2luZywNCj4gc2l6ZQ0KPiBleHRlbmRpbmcgYW5kIGNvcHlpbmcgdGhh dCBpcyBhbHJlYWR5IGRvbmUgaW4gY29yZSBkcm0uDQo+IA0KPiBLaWxsIGFsbCB0aGUgZHVwbGlj YXRpb24sIGFkZGluZyBhIGZldyBjb21tZW50cyBmb3IgY2xhcml0eS4NCg0KQWgsIHRoZXJlIGlz IGNvcmUgZnVuY3Rpb25hbGl0eSBmb3IgdGhpcyBub3cuDQoNCldoYXQgd29ycmllcyBtZSB0aG91 Z2ggd2l0aCB0aGUgY29yZSBhcHByb2FjaCBpcyB0aGF0IHRoZSBzaXplcyBhcmUgbm90DQpjYXBw ZWQgYnkgdGhlIHNpemUgb2YgdGhlIGtlcm5lbCBhcmd1bWVudCBkZWZpbml0aW9uLCB3aGljaCBt YWtlcw0KbWFpbGljaW91cyB1c2VyLXNwYWNlIGJlaW5nIGFibGUgdG8gZm9yY2Uga21hbGxvY3Mo KSB0aGUgc2l6ZSBvZiB0aGUNCm1heGltdW0gaW9jdGwgc2l6ZS4gU2hvdWxkIHByb2JhYmx5IGJl IGZpeGVkIGJlZm9yZSBwdXNoaW5nIHRoaXMuDQoNCg0KPiANCj4gQ2M6ICJWTXdhcmUgR3JhcGhp Y3MiIDxsaW51eC1ncmFwaGljcy1tYWludGFpbmVyQHZtd2FyZS5jb20+DQo+IENjOiBUaG9tYXMg SGVsbHN0cm9tIDx0aGVsbHN0cm9tQHZtd2FyZS5jb20+DQo+IENjOiBEYW5pZWwgVmV0dGVyIDxk YW5pZWxAZmZ3bGwuY2g+DQo+IFNpZ25lZC1vZmYtYnk6IEVtaWwgVmVsaWtvdiA8ZW1pbC52ZWxp a292QGNvbGxhYm9yYS5jb20+DQo+IC0tLQ0KPiBUaG9tYXMsIFZNd2FyZSB0ZWFtLA0KPiANCj4g UGxlYXNlIGdpdmUgdGhpcyBzb21lIHRlc3Rpbmcgb24geW91ciBlbmQuIEkndmUgb25seSB0ZXN0 ZWQgaXQNCj4gYWdhaW5zdA0KPiBtZXNhLW1hc3Rlci4NCg0KSSdsbCByZXZpZXcgdG9tb3Jyb3cg YW5kIGRvIHNvbWUgdGVzdGluZy4gTmVlZCB0byBzZWUgaWYgSSBjYW4gZGlnIHVwDQp1c2VyLXNw YWNlIGFwcHMgd2l0aCB2ZXJzaW9uIDAuLi4NCg0KVGhhbmtzLA0KDQpUaG9tYXMNCg0KPiANCj4g VGhhbmtzDQo+IEVtaWwNCj4gLS0tDQo+ICBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9k cnYuYyAgICAgfCAxMiArLS0tLS0NCj4gIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2Ry di5oICAgICB8ICA0ICstDQo+ICBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9leGVjYnVm LmMgfCA1MiArKysrKysrKystLS0tLS0tLS0tLS0NCj4gLS0tLQ0KPiAgMyBmaWxlcyBjaGFuZ2Vk LCAyMyBpbnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYw0KPiBiL2RyaXZlcnMvZ3B1L2RybS92 bXdnZngvdm13Z2Z4X2Rydi5jDQo+IGluZGV4IGQzZjEwOGY3ZTUyZC4uMmNiNmFlMjE5ZTQzIDEw MDY0NA0KPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYw0KPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYw0KPiBAQCAtMTg2LDcgKzE4Niw3 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2lvY3RsX2Rlc2Mgdm13X2lvY3Rsc1tdID0NCj4g ew0KPiAgCQkgICAgICBEUk1fUkVOREVSX0FMTE9XKSwNCj4gIAlWTVdfSU9DVExfREVGKFZNV19S RUZfU1VSRkFDRSwgdm13X3N1cmZhY2VfcmVmZXJlbmNlX2lvY3RsLA0KPiAgCQkgICAgICBEUk1f QVVUSCB8IERSTV9SRU5ERVJfQUxMT1cpLA0KPiAtCVZNV19JT0NUTF9ERUYoVk1XX0VYRUNCVUYs IE5VTEwsIERSTV9BVVRIIHwNCj4gKwlWTVdfSU9DVExfREVGKFZNV19FWEVDQlVGLCB2bXdfZXhl Y2J1Zl9pb2N0bCwgRFJNX0FVVEggfA0KPiAgCQkgICAgICBEUk1fUkVOREVSX0FMTE9XKSwNCj4g IAlWTVdfSU9DVExfREVGKFZNV19GRU5DRV9XQUlULCB2bXdfZmVuY2Vfb2JqX3dhaXRfaW9jdGws DQo+ICAJCSAgICAgIERSTV9SRU5ERVJfQUxMT1cpLA0KPiBAQCAtMTE0MCwxNSArMTE0MCw3IEBA IHN0YXRpYyBsb25nIHZtd19nZW5lcmljX2lvY3RsKHN0cnVjdCBmaWxlDQo+ICpmaWxwLCB1bnNp Z25lZCBpbnQgY21kLA0KPiAgCQkJJnZtd19pb2N0bHNbbnIgLSBEUk1fQ09NTUFORF9CQVNFXTsN Cj4gIA0KPiAgCQlpZiAobnIgPT0gRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WTVdfRVhFQ0JVRikg ew0KPiAtCQkJcmV0ID0gKGxvbmcpIGRybV9pb2N0bF9wZXJtaXQoaW9jdGwtPmZsYWdzLA0KPiBm aWxlX3ByaXYpOw0KPiAtCQkJaWYgKHVubGlrZWx5KHJldCAhPSAwKSkNCj4gLQkJCQlyZXR1cm4g cmV0Ow0KPiAtDQo+IC0JCQlpZiAodW5saWtlbHkoKGNtZCAmIChJT0NfSU4gfCBJT0NfT1VUKSkg IT0NCj4gSU9DX0lOKSkNCj4gLQkJCQlnb3RvIG91dF9pb19lbmNvZGluZzsNCj4gLQ0KPiAtCQkJ cmV0dXJuIChsb25nKSB2bXdfZXhlY2J1Zl9pb2N0bChkZXYsIGFyZywNCj4gZmlsZV9wcml2LA0K PiAtCQkJCQkJCV9JT0NfU0laRShjbWQpKQ0KPiA7DQo+ICsJCQlyZXR1cm4gaW9jdGxfZnVuYyhm aWxwLCBjbWQsIGFyZyk7DQo+ICAJCX0gZWxzZSBpZiAobnIgPT0gRFJNX0NPTU1BTkRfQkFTRSAr DQo+IERSTV9WTVdfVVBEQVRFX0xBWU9VVCkgew0KPiAgCQkJaWYgKCFkcm1faXNfY3VycmVudF9t YXN0ZXIoZmlsZV9wcml2KSAmJg0KPiAgCQkJICAgICFjYXBhYmxlKENBUF9TWVNfQURNSU4pKQ0K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZHJ2LmgNCj4gYi9k cml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuaA0KPiBpbmRleCA5YmUyMTc2Y2MyNjAu LmY1YmZhYzg1Zjc5MyAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdn ZnhfZHJ2LmgNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZHJ2LmgNCj4g QEAgLTkxMCw4ICs5MTAsOCBAQCBzdGF0aWMgaW5saW5lIHN0cnVjdCBwYWdlICp2bXdfcGl0ZXJf cGFnZShzdHJ1Y3QNCj4gdm13X3BpdGVyICp2aXRlcikNCj4gICAqIENvbW1hbmQgc3VibWlzc2lv biAtIHZtd2dmeF9leGVjYnVmLmMNCj4gICAqLw0KPiAgDQo+IC1leHRlcm4gaW50IHZtd19leGVj YnVmX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVuc2lnbmVkIGxvbmcNCj4gZGF0YSwN Cj4gLQkJCSAgICAgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYsIHNpemVfdCBzaXplKTsNCj4g K2V4dGVybiBpbnQgdm13X2V4ZWNidWZfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9p ZCAqZGF0YSwNCj4gKwkJCSAgICAgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpOw0KPiAgZXh0 ZXJuIGludCB2bXdfZXhlY2J1Zl9wcm9jZXNzKHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2LA0K PiAgCQkJICAgICAgIHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYsDQo+ICAJCQkgICAgICAg dm9pZCBfX3VzZXIgKnVzZXJfY29tbWFuZHMsDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vdm13Z2Z4L3Ztd2dmeF9leGVjYnVmLmMNCj4gYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Zt d2dmeF9leGVjYnVmLmMNCj4gaW5kZXggMmZmN2JhMDRkOGM4Li43NjdlMmI5OTYxOGQgMTAwNjQ0 DQo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2V4ZWNidWYuYw0KPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9leGVjYnVmLmMNCj4gQEAgLTM5NzcsNTQg KzM5NzcsNDAgQEAgdm9pZCB2bXdfZXhlY2J1Zl9yZWxlYXNlX3Bpbm5lZF9ibyhzdHJ1Y3QNCj4g dm13X3ByaXZhdGUgKmRldl9wcml2KQ0KPiAgCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmNtZGJ1 Zl9tdXRleCk7DQo+ICB9DQo+ICANCj4gLWludCB2bXdfZXhlY2J1Zl9pb2N0bChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCB1bnNpZ25lZCBsb25nIGRhdGEsDQo+IC0JCSAgICAgIHN0cnVjdCBkcm1f ZmlsZSAqZmlsZV9wcml2LCBzaXplX3Qgc2l6ZSkNCj4gK2ludCB2bXdfZXhlY2J1Zl9pb2N0bChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLA0KPiArCQkgICAgICBzdHJ1Y3QgZHJt X2ZpbGUgKmZpbGVfcHJpdikNCj4gIHsNCj4gIAlzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2 ID0gdm13X3ByaXYoZGV2KTsNCj4gLQlzdHJ1Y3QgZHJtX3Ztd19leGVjYnVmX2FyZyBhcmc7DQo+ ICsJc3RydWN0IGRybV92bXdfZXhlY2J1Zl9hcmcgKmFyZyA9IGRhdGE7DQo+ICAJaW50IHJldDsN Cj4gLQlzdGF0aWMgY29uc3Qgc2l6ZV90IGNvcHlfb2Zmc2V0W10gPSB7DQo+IC0JCW9mZnNldG9m KHN0cnVjdCBkcm1fdm13X2V4ZWNidWZfYXJnLCBjb250ZXh0X2hhbmRsZSksDQo+IC0JCXNpemVv ZihzdHJ1Y3QgZHJtX3Ztd19leGVjYnVmX2FyZyl9Ow0KPiAgCXN0cnVjdCBkbWFfZmVuY2UgKmlu X2ZlbmNlID0gTlVMTDsNCj4gIA0KPiAtCWlmICh1bmxpa2VseShzaXplIDwgY29weV9vZmZzZXRb MF0pKSB7DQo+IC0JCVZNV19ERUJVR19VU0VSKCJJbnZhbGlkIGNvbW1hbmQgc2l6ZSwgaW9jdGwg JWRcbiIsDQo+IC0JCQkgICAgICAgRFJNX1ZNV19FWEVDQlVGKTsNCj4gLQkJcmV0dXJuIC1FSU5W QUw7DQo+IC0JfQ0KPiAtDQo+IC0JaWYgKGNvcHlfZnJvbV91c2VyKCZhcmcsICh2b2lkIF9fdXNl ciAqKSBkYXRhLCBjb3B5X29mZnNldFswXSkNCj4gIT0gMCkNCj4gLQkJcmV0dXJuIC1FRkFVTFQ7 DQo+IC0NCj4gIAkvKg0KPiAgCSAqIEV4dGVuZCB0aGUgaW9jdGwgYXJndW1lbnQgd2hpbGUgbWFp bnRhaW5pbmcgYmFja3dhcmRzDQo+IGNvbXBhdGliaWxpdHk6DQo+IC0JICogV2UgdGFrZSBkaWZm ZXJlbnQgY29kZSBwYXRocyBkZXBlbmRpbmcgb24gdGhlIHZhbHVlIG9mDQo+IGFyZy52ZXJzaW9u Lg0KPiArCSAqIFdlIHRha2UgZGlmZmVyZW50IGNvZGUgcGF0aHMgZGVwZW5kaW5nIG9uIHRoZSB2 YWx1ZSBvZiBhcmctDQo+ID52ZXJzaW9uLg0KPiArCSAqDQo+ICsJICogTm90ZTogVGhlIGlvY3Rs IGFyZ3VtZW50IGlzIGV4dGVuZGVkIGFuZCB6ZXJvcGFkZGVkIGJ5IGNvcmUNCj4gRFJNLg0KPiAg CSAqLw0KPiAtCWlmICh1bmxpa2VseShhcmcudmVyc2lvbiA+IERSTV9WTVdfRVhFQ0JVRl9WRVJT SU9OIHx8DQo+IC0JCSAgICAgYXJnLnZlcnNpb24gPT0gMCkpIHsNCj4gKwlpZiAodW5saWtlbHko YXJnLT52ZXJzaW9uID4gRFJNX1ZNV19FWEVDQlVGX1ZFUlNJT04gfHwNCj4gKwkJICAgICBhcmct PnZlcnNpb24gPT0gMCkpIHsNCj4gIAkJVk1XX0RFQlVHX1VTRVIoIkluY29ycmVjdCBleGVjYnVm IHZlcnNpb24uXG4iKTsNCj4gIAkJcmV0dXJuIC1FSU5WQUw7DQo+ICAJfQ0KPiAgDQo+IC0JaWYg KGFyZy52ZXJzaW9uID4gMSAmJg0KPiAtCSAgICBjb3B5X2Zyb21fdXNlcigmYXJnLmNvbnRleHRf aGFuZGxlLA0KPiAtCQkJICAgKHZvaWQgX191c2VyICopIChkYXRhICsgY29weV9vZmZzZXRbMF0p LA0KPiAtCQkJICAgY29weV9vZmZzZXRbYXJnLnZlcnNpb24gLSAxXSAtDQo+IGNvcHlfb2Zmc2V0 WzBdKSAhPSAwKQ0KPiAtCQlyZXR1cm4gLUVGQVVMVDsNCj4gLQ0KPiAtCXN3aXRjaCAoYXJnLnZl cnNpb24pIHsNCj4gKwlzd2l0Y2ggKGFyZy0+dmVyc2lvbikgew0KPiAgCWNhc2UgMToNCj4gLQkJ YXJnLmNvbnRleHRfaGFuZGxlID0gKHVpbnQzMl90KSAtMTsNCj4gKwkJLyogRm9yIHYxIGNvcmUg RFJNIGhhdmUgZXh0ZW5kZWQgKyB6ZXJvcGFkZGVkIHRoZSBkYXRhDQo+ICovDQo+ICsJCWFyZy0+ Y29udGV4dF9oYW5kbGUgPSAodWludDMyX3QpIC0xOw0KPiAgCQlicmVhazsNCj4gIAljYXNlIDI6 DQo+ICAJZGVmYXVsdDoNCj4gKwkJLyogRm9yIHYyIGFuZCBsYXRlciBjb3JlIERSTSB3b3VsZCBo YXZlIGNvcnJlY3RseQ0KPiBjb3BpZWQgaXQgKi8NCj4gIAkJYnJlYWs7DQo+ICAJfQ0KPiAgDQo+ ICAJLyogSWYgaW1wb3J0ZWQgYSBmZW5jZSBGRCBmcm9tIGVsc2V3aGVyZSwgdGhlbiB3YWl0IG9u IGl0ICovDQo+IC0JaWYgKGFyZy5mbGFncyAmIERSTV9WTVdfRVhFQ0JVRl9GTEFHX0lNUE9SVF9G RU5DRV9GRCkgew0KPiAtCQlpbl9mZW5jZSA9IHN5bmNfZmlsZV9nZXRfZmVuY2UoYXJnLmltcG9y dGVkX2ZlbmNlX2ZkKTsNCj4gKwlpZiAoYXJnLT5mbGFncyAmIERSTV9WTVdfRVhFQ0JVRl9GTEFH X0lNUE9SVF9GRU5DRV9GRCkgew0KPiArCQlpbl9mZW5jZSA9IHN5bmNfZmlsZV9nZXRfZmVuY2Uo YXJnLT5pbXBvcnRlZF9mZW5jZV9mZCk7DQo+ICANCj4gIAkJaWYgKCFpbl9mZW5jZSkgew0KPiAg CQkJVk1XX0RFQlVHX1VTRVIoIkNhbm5vdCBnZXQgaW1wb3J0ZWQgZmVuY2VcbiIpOw0KPiBAQCAt NDA0MSwxMSArNDAyNywxMSBAQCBpbnQgdm13X2V4ZWNidWZfaW9jdGwoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwNCj4gdW5zaWduZWQgbG9uZyBkYXRhLA0KPiAgCQlyZXR1cm4gcmV0Ow0KPiAgDQo+ ICAJcmV0ID0gdm13X2V4ZWNidWZfcHJvY2VzcyhmaWxlX3ByaXYsIGRldl9wcml2LA0KPiAtCQkJ CSAgKHZvaWQgX191c2VyICopKHVuc2lnbmVkDQo+IGxvbmcpYXJnLmNvbW1hbmRzLA0KPiAtCQkJ CSAgTlVMTCwgYXJnLmNvbW1hbmRfc2l6ZSwNCj4gYXJnLnRocm90dGxlX3VzLA0KPiAtCQkJCSAg YXJnLmNvbnRleHRfaGFuZGxlLA0KPiAtCQkJCSAgKHZvaWQgX191c2VyICopKHVuc2lnbmVkDQo+ IGxvbmcpYXJnLmZlbmNlX3JlcCwNCj4gLQkJCQkgIE5VTEwsIGFyZy5mbGFncyk7DQo+ICsJCQkJ ICAodm9pZCBfX3VzZXIgKikodW5zaWduZWQgbG9uZylhcmctDQo+ID5jb21tYW5kcywNCj4gKwkJ CQkgIE5VTEwsIGFyZy0+Y29tbWFuZF9zaXplLCBhcmctDQo+ID50aHJvdHRsZV91cywNCj4gKwkJ CQkgIGFyZy0+Y29udGV4dF9oYW5kbGUsDQo+ICsJCQkJICAodm9pZCBfX3VzZXIgKikodW5zaWdu ZWQgbG9uZylhcmctDQo+ID5mZW5jZV9yZXAsDQo+ICsJCQkJICBOVUxMLCBhcmctPmZsYWdzKTsN Cj4gIA0KPiAgCXR0bV9yZWFkX3VubG9jaygmZGV2X3ByaXYtPnJlc2VydmF0aW9uX3NlbSk7DQo+ ICAJaWYgKHVubGlrZWx5KHJldCAhPSAwKSkNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2RyaS1kZXZlbA==