From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0869D6ECDD for ; Tue, 15 Jan 2019 13:48:33 +0000 (UTC) From: Lukasz Kalamarz Date: Tue, 15 Jan 2019 14:44:49 +0100 Message-Id: <20190115134449.15320-3-lukasz.kalamarz@intel.com> In-Reply-To: <20190115134449.15320-1-lukasz.kalamarz@intel.com> References: <20190115134449.15320-1-lukasz.kalamarz@intel.com> Subject: [igt-dev] [PATCH i-g-t v4 3/3] lib/ioctl_wrapper: Implement __gem_mmap List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org List-ID: UHJldmlvdXMgaW1wbGVtZW50YXRpb24gb2YgX19nZW1fbW1hcF9fY3B1IGFuZCBfX2dlbV9tbWFw X3djIG9ubHkKZGlmZmVyIHdpdGggc2V0dGluZyBwcm9wZXIgZmxhZyBmb3IgY2FjaGluZy4gVGhp cyBwYXRjaCBpbXBsZW1lbnQKX19nZW1fbW1hcCwgd2hpY2ggbWVyZ2UgdGhvc2UgdHdvIGZ1bmN0 aW9ucyBpbnRvIG9uZQp2MjogUmVvcmRlcmVkIGFuZCBzcGxpdGVkIHRoaXMgcGF0Y2ggaW50byB0 d28gc2VwYXJldGUgcGF0Y2hlcwp2MzogRHJvcHBlZCB1bm5lY2Vzc2FyeSBjaGVjawp2NDogUmVt ZXJnZSBwYXRjaGVzIGFnYWluIGFuZCBmaXhlZCBfX2dlbV9tbWFwIGRlc2NyaXB0aW9uCgpTaWdu ZWQtb2ZmLWJ5OiBMdWthc3ogS2FsYW1hcnogPGx1a2Fzei5rYWxhbWFyekBpbnRlbC5jb20+CkNj OiBNaWNoYWwgV2luaWFyc2tpIDxtaWNoYWwud2luaWFyc2tpQGludGVsLmNvbT4KQ2M6IEthdGFy enluYSBEZWMgPGthdGFyenluYS5kZWNAaW50ZWwuY29tPgpDYzogRGFuaWVsZSBDZXJhb2xvIFNw dXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8 Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogTWljaGFsIFdhamRlY3prbyA8bWljaGFsLndh amRlY3prb0BpbnRlbC5jb20+Ci0tLQogbGliL2lvY3RsX3dyYXBwZXJzLmMgfCA3MCArKysrKysr KysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDM4 IGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYi9pb2N0bF93 cmFwcGVycy5jIGIvbGliL2lvY3RsX3dyYXBwZXJzLmMKaW5kZXggZjcxZjBlMzIuLjE5ZTU5Nzk0 IDEwMDY0NAotLS0gYS9saWIvaW9jdGxfd3JhcHBlcnMuYworKysgYi9saWIvaW9jdGxfd3JhcHBl cnMuYwpAQCAtNzM2LDYgKzczNiw0MiBAQCBib29sIGdlbV9tbWFwX19oYXNfd2MoaW50IGZkKQog CXJldHVybiBoYXNfd2MgPiAwOwogfQogCisvKioKKyAqIF9fZ2VtX21tYXA6CisgKiBAZmQ6IG9w ZW4gaTkxNSBkcm0gZmlsZSBkZXNjcmlwdG9yCisgKiBAaGFuZGxlOiBnZW0gYnVmZmVyIG9iamVj dCBoYW5kbGUKKyAqIEBvZmZzZXQ6IG9mZnNldCBpbiB0aGUgZ2VtIGJ1ZmZlciBvZiB0aGUgbW1h cCBhcmVuYQorICogQHNpemU6IHNpemUgb2YgdGhlIG1tYXAgYXJlbmEKKyAqIEBwcm90OiBtZW1v cnkgcHJvdGVjdGlvbiBiaXRzIGFzIHVzZWQgYnkgbW1hcCgpCisgKiBAZmxhZ3M6IGZsYWdzIHVz ZWQgdG8gZGV0ZXJtaW5lIGNhY2hpbmcKKyAqCisgKiBUaGlzIGZ1bmN0aW9ucyB3cmFwcyB1cCBw cm9jZWR1cmUgdG8gZXN0YWJsaXNoIGEgbWVtb3J5IG1hcHBpbmcgdGhyb3VnaAorICogZGlyZWN0 IGNwdSBhY2Nlc3MsIGJ5cGFzc2luZyB0aGUgZ3B1ICh2YWxpZCBmb3Igd2MgPT0gZmFsc2UpLiBG b3Igd2MgPT0gdHJ1ZQorICogaXQgYWxzbyBieXBhc3MgY3B1IGNhY2hlcyBjb21wbGV0ZWx5IGFu ZCBHVFQgc3lzdGVtIGFnZW50IChpLmUuIHRoZXJlIGlzIG5vCisgKiBhdXRvbWF0aWMgdGlsaW5n IG9mIHRoZSBtbWFwcGluZyB0aHJvdWdoIHRoZSBmZW5jZSByZWdpc3RlcnMpLgorICoKKyAqIFJl dHVybnM6IEEgcG9pbnRlciB0byB0aGUgY3JlYXRlZCBtZW1vcnkgbWFwcGluZywgTlVMTCBvbiBm YWlsdXJlLgorICovCitzdGF0aWMgdm9pZAorKl9fZ2VtX21tYXAoaW50IGZkLCB1aW50MzJfdCBo YW5kbGUsIHVpbnQ2NF90IG9mZnNldCwgdWludDY0X3Qgc2l6ZSwgdW5zaWduZWQgaW50IHByb3Qs IHVpbnQ2NF90IGZsYWdzKQoreworCXN0cnVjdCBkcm1faTkxNV9nZW1fbW1hcCBhcmc7CisKKwlt ZW1zZXQoJmFyZywgMCwgc2l6ZW9mKGFyZykpOworCWFyZy5oYW5kbGUgPSBoYW5kbGU7CisJYXJn Lm9mZnNldCA9IG9mZnNldDsKKwlhcmcuc2l6ZSA9IHNpemU7CisJYXJnLmZsYWdzID0gZmxhZ3M7 CisKKwlpZiAoaWd0X2lvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fTU1BUCwgJmFyZykpCisJ CXJldHVybiBOVUxMOworCisJVkcoVkFMR1JJTkRfTUFLRV9NRU1fREVGSU5FRChmcm9tX3VzZXJf cG9pbnRlcihhcmcuYWRkcl9wdHIpLCBhcmcuc2l6ZSkpOworCisJZXJybm8gPSAwOworCXJldHVy biBmcm9tX3VzZXJfcG9pbnRlcihhcmcuYWRkcl9wdHIpOworfQorCiAvKioKICAqIF9fZ2VtX21t YXBfX3djOgogICogQGZkOiBvcGVuIGk5MTUgZHJtIGZpbGUgZGVzY3JpcHRvcgpAQCAtNzUzLDI1 ICs3ODksNyBAQCBib29sIGdlbV9tbWFwX19oYXNfd2MoaW50IGZkKQogICovCiB2b2lkICpfX2dl bV9tbWFwX193YyhpbnQgZmQsIHVpbnQzMl90IGhhbmRsZSwgdWludDY0X3Qgb2Zmc2V0LCB1aW50 NjRfdCBzaXplLCB1bnNpZ25lZCBwcm90KQogewotCXN0cnVjdCBkcm1faTkxNV9nZW1fbW1hcCBh cmc7Ci0KLQlpZiAoIWdlbV9tbWFwX19oYXNfd2MoZmQpKSB7Ci0JCWVycm5vID0gRU5PU1lTOwot CQlyZXR1cm4gTlVMTDsKLQl9Ci0KLQltZW1zZXQoJmFyZywgMCwgc2l6ZW9mKGFyZykpOwotCWFy Zy5oYW5kbGUgPSBoYW5kbGU7Ci0JYXJnLm9mZnNldCA9IG9mZnNldDsKLQlhcmcuc2l6ZSA9IHNp emU7Ci0JYXJnLmZsYWdzID0gSTkxNV9NTUFQX1dDOwotCWlmIChpZ3RfaW9jdGwoZmQsIERSTV9J T0NUTF9JOTE1X0dFTV9NTUFQLCAmYXJnKSkKLQkJcmV0dXJuIE5VTEw7Ci0KLQlWRyhWQUxHUklO RF9NQUtFX01FTV9ERUZJTkVEKGZyb21fdXNlcl9wb2ludGVyKGFyZy5hZGRyX3B0ciksIGFyZy5z aXplKSk7Ci0KLQllcnJubyA9IDA7Ci0JcmV0dXJuIGZyb21fdXNlcl9wb2ludGVyKGFyZy5hZGRy X3B0cik7CisJcmV0dXJuIF9fZ2VtX21tYXAoZmQsIGhhbmRsZSwgb2Zmc2V0LCBzaXplLCBwcm90 LCBJOTE1X01NQVBfV0MpOwogfQogCiAvKioKQEAgLTgwOCwxOSArODI2LDcgQEAgdm9pZCAqZ2Vt X21tYXBfX3djKGludCBmZCwgdWludDMyX3QgaGFuZGxlLCB1aW50NjRfdCBvZmZzZXQsIHVpbnQ2 NF90IHNpemUsIHVuc2kKICAqLwogdm9pZCAqX19nZW1fbW1hcF9fY3B1KGludCBmZCwgdWludDMy X3QgaGFuZGxlLCB1aW50NjRfdCBvZmZzZXQsIHVpbnQ2NF90IHNpemUsIHVuc2lnbmVkIHByb3Qp CiB7Ci0Jc3RydWN0IGRybV9pOTE1X2dlbV9tbWFwIG1tYXBfYXJnOwotCi0JbWVtc2V0KCZtbWFw X2FyZywgMCwgc2l6ZW9mKG1tYXBfYXJnKSk7Ci0JbW1hcF9hcmcuaGFuZGxlID0gaGFuZGxlOwot CW1tYXBfYXJnLm9mZnNldCA9IG9mZnNldDsKLQltbWFwX2FyZy5zaXplID0gc2l6ZTsKLQlpZiAo aWd0X2lvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fTU1BUCwgJm1tYXBfYXJnKSkKLQkJcmV0 dXJuIE5VTEw7Ci0KLQlWRyhWQUxHUklORF9NQUtFX01FTV9ERUZJTkVEKGZyb21fdXNlcl9wb2lu dGVyKG1tYXBfYXJnLmFkZHJfcHRyKSwgbW1hcF9hcmcuc2l6ZSkpOwotCi0JZXJybm8gPSAwOwot CXJldHVybiBmcm9tX3VzZXJfcG9pbnRlcihtbWFwX2FyZy5hZGRyX3B0cik7CisJcmV0dXJuIF9f Z2VtX21tYXAoZmQsIGhhbmRsZSwgb2Zmc2V0LCBzaXplLCBwcm90LCAwKTsKIH0KIAogLyoqCi0t IAoyLjE3LjIKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldgo=