From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: [PATCH 01/22] drm: kerneldoc for drm_fops.c Date: Mon, 11 Jan 2016 22:40:55 +0100 Message-ID: <1452548477-15905-2-git-send-email-daniel.vetter@ffwll.ch> References: <1452548477-15905-1-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f67.google.com (mail-wm0-f67.google.com [74.125.82.67]) by gabe.freedesktop.org (Postfix) with ESMTPS id 715D06E598 for ; Mon, 11 Jan 2016 13:41:23 -0800 (PST) Received: by mail-wm0-f67.google.com with SMTP id u188so28131176wmu.0 for ; Mon, 11 Jan 2016 13:41:23 -0800 (PST) In-Reply-To: <1452548477-15905-1-git-send-email-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: DRI Development Cc: Daniel Vetter , Intel Graphics Development , Daniel Vetter List-Id: dri-devel@lists.freedesktop.org SnVzdCBwcmVwIHdvcmsgYmVmb3JlIEkgdGhyb3cgbW9yZSBkcm1fZXZlbnQgcmVmYWN0b3Jpbmdz IG9uIHRvcC4KCkFja2VkLWJ5OiBEYW5pZWwgU3RvbmUgPGRhbmllbHNAY29sbGFib3JhLmNvbT4K UmV2aWV3ZWQtYnk6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1kLmNvbT4KU2ln bmVkLW9mZi1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Ci0tLQog RG9jdW1lbnRhdGlvbi9Eb2NCb29rL2dwdS50bXBsIHwgIDQ4ICstLS0tLS0tLS0tLS0tLQogZHJp dmVycy9ncHUvZHJtL2RybV9mb3BzLmMgICAgIHwgMTI5ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tCiBpbmNsdWRlL2RybS9kcm1QLmggICAgICAgICAgICAgfCAgMTcg KysrLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDExNyBpbnNlcnRpb25zKCspLCA3NyBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL0RvY0Jvb2svZ3B1LnRtcGwgYi9Eb2N1bWVu dGF0aW9uL0RvY0Jvb2svZ3B1LnRtcGwKaW5kZXggZWEwMTEyMzg3Zjg1Li4wMTQ2N2VmZmYzZjUg MTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vRG9jQm9vay9ncHUudG1wbAorKysgYi9Eb2N1bWVu dGF0aW9uL0RvY0Jvb2svZ3B1LnRtcGwKQEAgLTI4ODYsNTIgKzI4ODYsOCBAQCB2b2lkICgqcG9z dGNsb3NlKSAoc3RydWN0IGRybV9kZXZpY2UgKiwgc3RydWN0IGRybV9maWxlICopOzwvc3lub3Bz aXM+CiAgICAgPC9zZWN0Mj4KICAgICA8c2VjdDI+CiAgICAgICA8dGl0bGU+RmlsZSBPcGVyYXRp b25zPC90aXRsZT4KLSAgICAgIDxzeW5vcHNpcz5jb25zdCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25z ICpmb3BzPC9zeW5vcHNpcz4KLSAgICAgIDxhYnN0cmFjdD5GaWxlIG9wZXJhdGlvbnMgZm9yIHRo ZSBEUk0gZGV2aWNlIG5vZGUuPC9hYnN0cmFjdD4KLSAgICAgIDxwYXJhPgotICAgICAgICBEcml2 ZXJzIG11c3QgZGVmaW5lIHRoZSBmaWxlIG9wZXJhdGlvbnMgc3RydWN0dXJlIHRoYXQgZm9ybXMg dGhlIERSTQotCXVzZXJzcGFjZSBBUEkgZW50cnkgcG9pbnQsIGV2ZW4gdGhvdWdoIG1vc3Qgb2Yg dGhvc2Ugb3BlcmF0aW9ucyBhcmUKLQlpbXBsZW1lbnRlZCBpbiB0aGUgRFJNIGNvcmUuIFRoZSA8 bWV0aG9kbmFtZT5vcGVuPC9tZXRob2RuYW1lPiwKLQk8bWV0aG9kbmFtZT5yZWxlYXNlPC9tZXRo b2RuYW1lPiBhbmQgPG1ldGhvZG5hbWU+aW9jdGw8L21ldGhvZG5hbWU+Ci0Jb3BlcmF0aW9ucyBh cmUgaGFuZGxlZCBieQotCTxwcm9ncmFtbGlzdGluZz4KLQkub3duZXIgPSBUSElTX01PRFVMRSwK LQkub3BlbiA9IGRybV9vcGVuLAotCS5yZWxlYXNlID0gZHJtX3JlbGVhc2UsCi0JLnVubG9ja2Vk X2lvY3RsID0gZHJtX2lvY3RsLAotICAjaWZkZWYgQ09ORklHX0NPTVBBVAotCS5jb21wYXRfaW9j dGwgPSBkcm1fY29tcGF0X2lvY3RsLAotICAjZW5kaWYKLSAgICAgICAgPC9wcm9ncmFtbGlzdGlu Zz4KLSAgICAgIDwvcGFyYT4KLSAgICAgIDxwYXJhPgotICAgICAgICBEcml2ZXJzIHRoYXQgaW1w bGVtZW50IHByaXZhdGUgaW9jdGxzIHRoYXQgcmVxdWlyZXMgMzIvNjRiaXQKLQljb21wYXRpYmls aXR5IHN1cHBvcnQgbXVzdCBwcm92aWRlIHRoZWlyIG93bgotCTxtZXRob2RuYW1lPmNvbXBhdF9p b2N0bDwvbWV0aG9kbmFtZT4gaGFuZGxlciB0aGF0IHByb2Nlc3NlcyBwcml2YXRlCi0JaW9jdGxz IGFuZCBjYWxscyA8ZnVuY3Rpb24+ZHJtX2NvbXBhdF9pb2N0bDwvZnVuY3Rpb24+IGZvciBjb3Jl IGlvY3Rscy4KLSAgICAgIDwvcGFyYT4KLSAgICAgIDxwYXJhPgotICAgICAgICBUaGUgPG1ldGhv ZG5hbWU+cmVhZDwvbWV0aG9kbmFtZT4gYW5kIDxtZXRob2RuYW1lPnBvbGw8L21ldGhvZG5hbWU+ Ci0Jb3BlcmF0aW9ucyBwcm92aWRlIHN1cHBvcnQgZm9yIHJlYWRpbmcgRFJNIGV2ZW50cyBhbmQg cG9sbGluZyB0aGVtLiBUaGV5Ci0JYXJlIGltcGxlbWVudGVkIGJ5Ci0JPHByb2dyYW1saXN0aW5n PgotCS5wb2xsID0gZHJtX3BvbGwsCi0JLnJlYWQgPSBkcm1fcmVhZCwKLQkubGxzZWVrID0gbm9f bGxzZWVrLAotCTwvcHJvZ3JhbWxpc3Rpbmc+Ci0gICAgICA8L3BhcmE+Ci0gICAgICA8cGFyYT4K LSAgICAgICAgVGhlIG1lbW9yeSBtYXBwaW5nIGltcGxlbWVudGF0aW9uIHZhcmllcyBkZXBlbmRp bmcgb24gaG93IHRoZSBkcml2ZXIKLQltYW5hZ2VzIG1lbW9yeS4gUHJlLUdFTSBkcml2ZXJzIHdp bGwgdXNlIDxmdW5jdGlvbj5kcm1fbW1hcDwvZnVuY3Rpb24+LAotCXdoaWxlIEdFTS1hd2FyZSBk cml2ZXJzIHdpbGwgdXNlIDxmdW5jdGlvbj5kcm1fZ2VtX21tYXA8L2Z1bmN0aW9uPi4gU2VlCi0J PHhyZWYgbGlua2VuZD0iZHJtLWdlbSIvPi4KLQk8cHJvZ3JhbWxpc3Rpbmc+Ci0JLm1tYXAgPSBk cm1fZ2VtX21tYXAsCi0JPC9wcm9ncmFtbGlzdGluZz4KLSAgICAgIDwvcGFyYT4KLSAgICAgIDxw YXJhPgotICAgICAgICBObyBvdGhlciBmaWxlIG9wZXJhdGlvbiBpcyBzdXBwb3J0ZWQgYnkgdGhl IERSTSBBUEkuCi0gICAgICA8L3BhcmE+CishUGRyaXZlcnMvZ3B1L2RybS9kcm1fZm9wcy5jIGZp bGUgb3BlcmF0aW9ucworIUVkcml2ZXJzL2dwdS9kcm0vZHJtX2ZvcHMuYwogICAgIDwvc2VjdDI+ CiAgICAgPHNlY3QyPgogICAgICAgPHRpdGxlPklPQ1RMczwvdGl0bGU+CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2ZvcHMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZm9wcy5jCmlu ZGV4IDM1OWVjMTNjZGY5ZC4uNzMwNzVhMWZhMzgwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2ZvcHMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZvcHMuYwpAQCAtMSw0ICsx LDQgQEAKLS8qKgorLyoKICAqIFxmaWxlIGRybV9mb3BzLmMKICAqIEZpbGUgb3BlcmF0aW9ucyBm b3IgRFJNCiAgKgpAQCAtNDQsNiArNDQsNDYgQEAKIC8qIGZyb20gQktMIHB1c2hkb3duICovCiBE RUZJTkVfTVVURVgoZHJtX2dsb2JhbF9tdXRleCk7CiAKKy8qKgorICogRE9DOiBmaWxlIG9wZXJh dGlvbnMKKyAqCisgKiBEcml2ZXJzIG11c3QgZGVmaW5lIHRoZSBmaWxlIG9wZXJhdGlvbnMgc3Ry dWN0dXJlIHRoYXQgZm9ybXMgdGhlIERSTQorICogdXNlcnNwYWNlIEFQSSBlbnRyeSBwb2ludCwg ZXZlbiB0aG91Z2ggbW9zdCBvZiB0aG9zZSBvcGVyYXRpb25zIGFyZQorICogaW1wbGVtZW50ZWQg aW4gdGhlIERSTSBjb3JlLiBUaGUgbWFuZGF0b3J5IGZ1bmN0aW9ucyBhcmUgZHJtX29wZW4oKSwK KyAqIGRybV9yZWFkKCksIGRybV9pb2N0bCgpIGFuZCBkcm1fY29tcGF0X2lvY3RsIGlmIENPTkZJ R19DT01QQVQgaXMgZW5hYmxlZC4KKyAqIERyaXZlcnMgd2hpY2ggaW1wbGVtZW50IHByaXZhdGUg aW9jdGxzIHRoYXQgcmVxdWlyZSAzMi82NCBiaXQgY29tcGF0aWJpbGl0eQorICogc3VwcG9ydCBt dXN0IHByb3ZpZGVkIHRoZWlyIG9udyAuY29tcGF0X2lvY3RsKCkgaGFuZGxlciB0aGF0IHByb2Nl c3NlcworICogcHJpdmF0ZSBpb2N0bHMgYW5kIGNhbGxzIGRybV9jb21wYXRfaW9jdGwoKSBmb3Ig Y29yZSBpb2N0bHMuCisgKgorICogSW4gYWRkaXRpb24gZHJtX3JlYWQoKSBhbmQgZHJtX3BvbGwo KSBwcm92aWRlIHN1cHBvcnQgZm9yIERSTSBldmVudHMuIERSTQorICogZXZlbnRzIGFyZSBhIGdl bmVyaWMgYW5kIGV4dGVuc2libGUgbWVhbnMgdG8gc2VuZCBhc3luY2hyb25vdXMgZXZlbnRzIHRv CisgKiB1c2Vyc3BhY2UgdGhyb3VnaCB0aGUgZmlsZSBkZXNjcmlwdG9yLiBUaGV5IGFyZSB1c2Vk IHRvIHNlbmQgdmJsYW5rIGV2ZW50IGFuZAorICogcGFnZSBmbGlwIGNvbXBsZXRpb25zIGJ5IHRo ZSBLTVMgQVBJLiBCdXQgZHJpdmVycyBjYW4gYWxzbyB1c2UgaXQgZm9yIHRoZWlyCisgKiBvd24g bmVlZHMsIGUuZy4gdG8gc2lnbmFsIGNvbXBsZXRpb24gb2YgcmVuZGVyaW5nLgorICoKKyAqIFRo ZSBtZW1vcnkgbWFwcGluZyBpbXBsZW1lbnRhdGlvbiB3aWxsIHZhcnkgZGVwZW5kaW5nIG9uIGhv dyB0aGUgZHJpdmVyCisgKiBtYW5hZ2VzIG1lbW9yeS4gTGVnYWN5IGRyaXZlcnMgd2lsbCB1c2Ug dGhlIGRlcHJlY2F0ZWQgZHJtX2xlZ2FjeV9tbWFwKCkKKyAqIGZ1bmN0aW9uLCBtb2Rlcm4gZHJp dmVycyBzaG91bGQgdXNlIG9uZSBvZiB0aGUgcHJvdmlkZWQgbWVtb3J5LW1hbmFnZXIKKyAqIHNw ZWNpZmljIGltcGxlbWVudGF0aW9ucy4gRm9yIEdFTS1iYXNlZCBkcml2ZXJzIHRoaXMgaXMgZHJt X2dlbV9tbWFwKCkuCisgKgorICogTm8gb3RoZXIgZmlsZSBvcGVyYXRpb25zIGFyZSBzdXBwb3J0 ZWQgYnkgdGhlIERSTSB1c2Vyc3BhY2UgQVBJLiBPdmVyYWxsIHRoZQorICogZm9sbG93aW5nIGlz IGFuIGV4YW1wbGUgI2ZpbGVfb3BlcmF0aW9ucyBzdHJ1Y3R1cmU6CisgKgorICogICAgIHN0YXRp YyBjb25zdCBleGFtcGxlX2RybV9mb3BzID0geworICogICAgICAgICAgICAgLm93bmVyID0gVEhJ U19NT0RVTEUsCisgKiAgICAgICAgICAgICAub3BlbiA9IGRybV9vcGVuLAorICogICAgICAgICAg ICAgLnJlbGVhc2UgPSBkcm1fcmVsZWFzZSwKKyAqICAgICAgICAgICAgIC51bmxvY2tlZF9pb2N0 bCA9IGRybV9pb2N0bCwKKyAqICAgICAjaWZkZWYgQ09ORklHX0NPTVBBVAorICogICAgICAgICAg ICAgLmNvbXBhdF9pb2N0bCA9IGRybV9jb21wYXRfaW9jdGwsCisgKiAgICAgI2VuZGlmCisgKiAg ICAgICAgICAgICAucG9sbCA9IGRybV9wb2xsLAorICogICAgICAgICAgICAgLnJlYWQgPSBkcm1f cmVhZCwKKyAqICAgICAgICAgICAgIC5sbHNlZWsgPSBub19sbHNlZWssCisgKiAgICAgICAgICAg ICAubW1hcCA9IGRybV9nZW1fbW1hcCwKKyAqICAgICB9OworICovCisKIHN0YXRpYyBpbnQgZHJt X29wZW5faGVscGVyKHN0cnVjdCBmaWxlICpmaWxwLCBzdHJ1Y3QgZHJtX21pbm9yICptaW5vcik7 CiAKIHN0YXRpYyBpbnQgZHJtX3NldHVwKHN0cnVjdCBkcm1fZGV2aWNlICogZGV2KQpAQCAtNjcs MTUgKzEwNywxNyBAQCBzdGF0aWMgaW50IGRybV9zZXR1cChzdHJ1Y3QgZHJtX2RldmljZSAqIGRl dikKIH0KIAogLyoqCi0gKiBPcGVuIGZpbGUuCisgKiBkcm1fb3BlbiAtIG9wZW4gbWV0aG9kIGZv ciBEUk0gZmlsZQorICogQGlub2RlOiBkZXZpY2UgaW5vZGUKKyAqIEBmaWxwOiBmaWxlIHBvaW50 ZXIuCiAgKgotICogXHBhcmFtIGlub2RlIGRldmljZSBpbm9kZQotICogXHBhcmFtIGZpbHAgZmls ZSBwb2ludGVyLgotICogXHJldHVybiB6ZXJvIG9uIHN1Y2Nlc3Mgb3IgYSBuZWdhdGl2ZSBudW1i ZXIgb24gZmFpbHVyZS4KKyAqIFRoaXMgZnVuY3Rpb24gbXVzdCBiZSB1c2VkIGJ5IGRyaXZlcnMg YXMgdGhlaXIgLm9wZW4oKSAjZmlsZV9vcGVyYXRpb25zCisgKiBtZXRob2QuIEl0IGxvb2tzIHVw IHRoZSBjb3JyZWN0IERSTSBkZXZpY2UgYW5kIGluc3RhbnRpYXRlcyBhbGwgdGhlIHBlci1maWxl CisgKiByZXNvdXJjZXMgZm9yIGl0LgorICoKKyAqIFJFVFVSTlM6CiAgKgotICogU2VhcmNoZXMg dGhlIERSTSBkZXZpY2Ugd2l0aCB0aGUgc2FtZSBtaW5vciBudW1iZXIsIGNhbGxzIG9wZW5faGVs cGVyKCksIGFuZAotICogaW5jcmVtZW50cyB0aGUgZGV2aWNlIG9wZW4gY291bnQuIElmIHRoZSBv cGVuIGNvdW50IHdhcyBwcmV2aW91cyBhdCB6ZXJvLAotICogaS5lLiwgaXQncyB0aGUgZmlyc3Qg dGhhdCB0aGUgZGV2aWNlIGlzIG9wZW4sIHRoZW4gY2FsbHMgc2V0dXAoKS4KKyAqIDAgb24gc3Vj Y2VzcyBvciBuZWdhdGl2ZSBlcnJubyB2YWx1ZSBvbiBmYWx1cmUuCiAgKi8KIGludCBkcm1fb3Bl bihzdHJ1Y3QgaW5vZGUgKmlub2RlLCBzdHJ1Y3QgZmlsZSAqZmlscCkKIHsKQEAgLTExMiw3ICsx NTQsNyBAQCBlcnJfdW5kbzoKIH0KIEVYUE9SVF9TWU1CT0woZHJtX29wZW4pOwogCi0vKioKKy8q CiAgKiBDaGVjayB3aGV0aGVyIERSSSB3aWxsIHJ1biBvbiB0aGlzIENQVS4KICAqCiAgKiBccmV0 dXJuIG5vbi16ZXJvIGlmIHRoZSBEUkkgd2lsbCBydW4gb24gdGhpcyBDUFUsIG9yIHplcm8gb3Ro ZXJ3aXNlLgpAQCAtMTI1LDcgKzE2Nyw3IEBAIHN0YXRpYyBpbnQgZHJtX2NwdV92YWxpZCh2b2lk KQogCXJldHVybiAxOwogfQogCi0vKioKKy8qCiAgKiBkcm1fbmV3X3NldF9tYXN0ZXIgLSBBbGxv Y2F0ZSBhIG5ldyBtYXN0ZXIgb2JqZWN0IGFuZCBiZWNvbWUgbWFzdGVyIGZvciB0aGUKICAqIGFz c29jaWF0ZWQgbWFzdGVyIHJlYWxtLgogICoKQEAgLTE3OSw3ICsyMjEsNyBAQCBvdXRfZXJyOgog CXJldHVybiByZXQ7CiB9CiAKLS8qKgorLyoKICAqIENhbGxlZCB3aGVuZXZlciBhIHByb2Nlc3Mg b3BlbnMgL2Rldi9kcm0uCiAgKgogICogXHBhcmFtIGZpbHAgZmlsZSBwb2ludGVyLgpAQCAtMzMz LDcgKzM3NSw3IEBAIHN0YXRpYyB2b2lkIGRybV9ldmVudHNfcmVsZWFzZShzdHJ1Y3QgZHJtX2Zp bGUgKmZpbGVfcHJpdikKIAlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZkZXYtPmV2ZW50X2xvY2ss IGZsYWdzKTsKIH0KIAotLyoqCisvKgogICogZHJtX2xlZ2FjeV9kZXZfcmVpbml0CiAgKgogICog UmVpbml0aWFsaXplcyBhIGxlZ2FjeS91bXMgZHJtIGRldmljZSBpbiBpdCdzIGxhc3RjbG9zZSBm dW5jdGlvbi4KQEAgLTM2Miw3ICs0MDQsNyBAQCBzdGF0aWMgdm9pZCBkcm1fbGVnYWN5X2Rldl9y ZWluaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlEUk1fREVCVUcoImxhc3RjbG9zZSBjb21w bGV0ZWRcbiIpOwogfQogCi0vKioKKy8qCiAgKiBUYWtlIGRvd24gdGhlIERSTSBkZXZpY2UuCiAg KgogICogXHBhcmFtIGRldiBEUk0gZGV2aWNlIHN0cnVjdHVyZS4KQEAgLTM4NCwxNiArNDI2LDE3 IEBAIHZvaWQgZHJtX2xhc3RjbG9zZShzdHJ1Y3QgZHJtX2RldmljZSAqIGRldikKIH0KIAogLyoq Ci0gKiBSZWxlYXNlIGZpbGUuCisgKiBkcm1fcmVsZWFzZSAtIHJlbGVhc2UgbWV0aG9kIGZvciBE Uk0gZmlsZQorICogQGlub2RlOiBkZXZpY2UgaW5vZGUKKyAqIEBmaWxwOiBmaWxlIHBvaW50ZXIu CiAgKgotICogXHBhcmFtIGlub2RlIGRldmljZSBpbm9kZQotICogXHBhcmFtIGZpbGVfcHJpdiBE Uk0gZmlsZSBwcml2YXRlLgotICogXHJldHVybiB6ZXJvIG9uIHN1Y2Nlc3Mgb3IgYSBuZWdhdGl2 ZSBudW1iZXIgb24gZmFpbHVyZS4KKyAqIFRoaXMgZnVuY3Rpb24gbXVzdCBiZSB1c2VkIGJ5IGRy aXZlcnMgYXMgdGhlaXIgLnJlbGVhc2UoKSAjZmlsZV9vcGVyYXRpb25zCisgKiBtZXRob2QuIEl0 IGZyZWVzIGFueSByZXNvdXJjZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBvcGVuIGZpbGUsIGFuZCBp ZiB0aGlzIGlzCisgKiB0aGUgbGFzdCBvcGVuIGZpbGUgZm9yIHRoZSBEUk0gZGV2aWNlIGFsc28g cHJvY2VlZHMgdG8gY2FsbCBkcm1fbGFzdGNsb3NlKCkuCiAgKgotICogSWYgdGhlIGhhcmR3YXJl IGxvY2sgaXMgaGVsZCB0aGVuIGZyZWUgaXQsIGFuZCB0YWtlIGl0IGFnYWluIGZvciB0aGUga2Vy bmVsCi0gKiBjb250ZXh0IHNpbmNlIGl0J3MgbmVjZXNzYXJ5IHRvIHJlY2xhaW0gYnVmZmVycy4g VW5saW5rIHRoZSBmaWxlIHByaXZhdGUKLSAqIGRhdGEgZnJvbSBpdHMgbGlzdCBhbmQgZnJlZSBp dC4gRGVjcmVhc2VzIHRoZSBvcGVuIGNvdW50IGFuZCBpZiBpdCByZWFjaGVzCi0gKiB6ZXJvIGNh bGxzIGRybV9sYXN0Y2xvc2UoKS4KKyAqIFJFVFVSTlM6CisgKgorICogQWx3YXlzIHN1Y2NlZWRz IGFuZCByZXR1cm5zIDAuCiAgKi8KIGludCBkcm1fcmVsZWFzZShzdHJ1Y3QgaW5vZGUgKmlub2Rl LCBzdHJ1Y3QgZmlsZSAqZmlscCkKIHsKQEAgLTQ0Nyw3ICs0OTAsNyBAQCBpbnQgZHJtX3JlbGVh c2Uoc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbHApCiAJaWYgKGZpbGVfcHJp di0+aXNfbWFzdGVyKSB7CiAJCXN0cnVjdCBkcm1fbWFzdGVyICptYXN0ZXIgPSBmaWxlX3ByaXYt Pm1hc3RlcjsKIAotCQkvKioKKwkJLyoKIAkJICogU2luY2UgdGhlIG1hc3RlciBpcyBkaXNhcHBl YXJpbmcsIHNvIGlzIHRoZQogCQkgKiBwb3NzaWJpbGl0eSB0byBsb2NrLgogCQkgKi8KQEAgLTUw NCw2ICs1NDcsMzIgQEAgaW50IGRybV9yZWxlYXNlKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVj dCBmaWxlICpmaWxwKQogfQogRVhQT1JUX1NZTUJPTChkcm1fcmVsZWFzZSk7CiAKKy8qKgorICog ZHJtX3JlYWQgLSByZWFkIG1ldGhvZCBmb3IgRFJNIGZpbGUKKyAqIEBmaWxwOiBmaWxlIHBvaW50 ZXIKKyAqIEBidWZmZXI6IHVzZXJzcGFjZSBkZXN0aW5hdGlvbiBwb2ludGVyIGZvciB0aGUgcmVh ZAorICogQGNvdW50OiBjb3VudCBpbiBieXRlcyB0byByZWFkCisgKiBAb2Zmc2V0OiBvZmZzZXQg dG8gcmVhZAorICoKKyAqIFRoaXMgZnVuY3Rpb24gbXVzdCBiZSB1c2VkIGJ5IGRyaXZlcnMgYXMg dGhlaXIgLnJlYWQoKSAjZmlsZV9vcGVyYXRpb25zCisgKiBtZXRob2QgaWZmIHRoZXkgdXNlIERS TSBldmVudHMgZm9yIGFzeW5jaHJvbm91cyBzaWduYWxsaW5nIHRvIHVzZXJzcGFjZS4KKyAqIFNp bmNlIGV2ZW50cyBhcmUgdXNlZCBieSB0aGUgS01TIEFQSSBmb3IgdmJsYW5rIGFuZCBwYWdlIGZs aXAgY29tcGxldGlvbiB0aGlzCisgKiBtZWFucyBhbGwgbW9kZXJuIGRpc3BsYXkgZHJpdmVycyBt dXN0IHVzZSBpdC4KKyAqCisgKiBAb2Zmc2V0IGlzIGlnbm9yZSwgRFJNIGV2ZW50cyBhcmUgcmVh ZCBsaWtlIGEgcGlwZS4gVGhlcmVmb3JlIGRyaXZlcnMgYWxzbworICogbXVzdCBzZXQgdGhlIC5s bHNlZWsoKSAjZmlsZV9vcGVyYXRpb24gdG8gbm9fbGxzZWVrKCkuIFBvbGxpbmcgc3VwcG9ydCBp cworICogcHJvdmlkZWQgYnkgZHJtX3BvbGwoKS4KKyAqCisgKiBUaGlzIGZ1bmN0aW9uIHdpbGwg b25seSBldmVyIHJlYWQgYSBmdWxsIGV2ZW50LiBUaGVyZWZvcmUgdXNlcnNwYWNlIG11c3QKKyAq IHN1cHBseSBhIGJpZyBlbm91Z2ggYnVmZmVyIHRvIGZpdCBhbnkgZXZlbnQgdG8gZW5zdXJlIGZv cndhcmQgcHJvZ3Jlc3MuIFNpbmNlCisgKiB0aGUgbWF4aW11bSBldmVudCBzcGFjZSBpcyBjdXJy ZW50bHkgNEsgaXQncyByZWNvbW1lbmRlZCB0byBqdXN0IHVzZSB0aGF0IGZvcgorICogc2FmZXR5 LgorICoKKyAqIFJFVFVSTlM6CisgKgorICogTnVtYmVyIG9mIGJ5dGVzIHJlYWQgKGFsd2F5cyBh bGlnbmVkIHRvIGZ1bGwgZXZlbnRzLCBhbmQgY2FuIGJlIDApIG9yIGEKKyAqIG5lZ2F0aXZlIGVy cm9yIGNvZGUgb24gZmFpbHVyZS4KKyAqLwogc3NpemVfdCBkcm1fcmVhZChzdHJ1Y3QgZmlsZSAq ZmlscCwgY2hhciBfX3VzZXIgKmJ1ZmZlciwKIAkJIHNpemVfdCBjb3VudCwgbG9mZl90ICpvZmZz ZXQpCiB7CkBAIC01NzQsNiArNjQzLDIyIEBAIHB1dF9iYWNrX2V2ZW50OgogfQogRVhQT1JUX1NZ TUJPTChkcm1fcmVhZCk7CiAKKy8qKgorICogZHJtX3BvbGwgLSBwb2xsIG1ldGhvZCBmb3IgRFJN IGZpbGUKKyAqIEBmaWxwOiBmaWxlIHBvaW50ZXIKKyAqIEB3YWl0OiBwb2xsIHdhaXRlciB0YWJs ZQorICoKKyAqIFRoaXMgZnVuY3Rpb24gbXVzdCBiZSB1c2VkIGJ5IGRyaXZlcnMgYXMgdGhlaXIg LnJlYWQoKSAjZmlsZV9vcGVyYXRpb25zCisgKiBtZXRob2QgaWZmIHRoZXkgdXNlIERSTSBldmVu dHMgZm9yIGFzeW5jaHJvbm91cyBzaWduYWxsaW5nIHRvIHVzZXJzcGFjZS4KKyAqIFNpbmNlIGV2 ZW50cyBhcmUgdXNlZCBieSB0aGUgS01TIEFQSSBmb3IgdmJsYW5rIGFuZCBwYWdlIGZsaXAgY29t cGxldGlvbiB0aGlzCisgKiBtZWFucyBhbGwgbW9kZXJuIGRpc3BsYXkgZHJpdmVycyBtdXN0IHVz ZSBpdC4KKyAqCisgKiBTZWUgYWxzbyBkcm1fcmVhZCgpLgorICoKKyAqIFJFVFVSTlM6CisgKgor ICogTWFzayBvZiBQT0xMIGZsYWdzIGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdHVzIG9mIHRo ZSBmaWxlLgorICovCiB1bnNpZ25lZCBpbnQgZHJtX3BvbGwoc3RydWN0IGZpbGUgKmZpbHAsIHN0 cnVjdCBwb2xsX3RhYmxlX3N0cnVjdCAqd2FpdCkKIHsKIAlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVf cHJpdiA9IGZpbHAtPnByaXZhdGVfZGF0YTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybVAu aCBiL2luY2x1ZGUvZHJtL2RybVAuaAppbmRleCBjMmQyNTNlOWI2ZjcuLmZjOWI5YWQ1YjA4OSAx MDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtUC5oCisrKyBiL2luY2x1ZGUvZHJtL2RybVAuaApA QCAtOTE5LDE1ICs5MTksMTQgQEAgZXh0ZXJuIGxvbmcgZHJtX2NvbXBhdF9pb2N0bChzdHJ1Y3Qg ZmlsZSAqZmlscCwKIAkJCSAgICAgdW5zaWduZWQgaW50IGNtZCwgdW5zaWduZWQgbG9uZyBhcmcp OwogZXh0ZXJuIGJvb2wgZHJtX2lvY3RsX2ZsYWdzKHVuc2lnbmVkIGludCBuciwgdW5zaWduZWQg aW50ICpmbGFncyk7CiAKLQkJCQkvKiBEZXZpY2Ugc3VwcG9ydCAoZHJtX2ZvcHMuaCkgKi8KLWV4 dGVybiBpbnQgZHJtX29wZW4oc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbHAp OwotZXh0ZXJuIHNzaXplX3QgZHJtX3JlYWQoc3RydWN0IGZpbGUgKmZpbHAsIGNoYXIgX191c2Vy ICpidWZmZXIsCi0JCQlzaXplX3QgY291bnQsIGxvZmZfdCAqb2Zmc2V0KTsKLWV4dGVybiBpbnQg ZHJtX3JlbGVhc2Uoc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbHApOwotZXh0 ZXJuIGludCBkcm1fbmV3X3NldF9tYXN0ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0 IGRybV9maWxlICpmcHJpdik7Ci0KLQkJCQkvKiBNYXBwaW5nIHN1cHBvcnQgKGRybV92bS5oKSAq LwotZXh0ZXJuIHVuc2lnbmVkIGludCBkcm1fcG9sbChzdHJ1Y3QgZmlsZSAqZmlscCwgc3RydWN0 IHBvbGxfdGFibGVfc3RydWN0ICp3YWl0KTsKKy8qIEZpbGUgT3BlcmF0aW9ucyAoZHJtX2ZvcHMu YykgKi8KK2ludCBkcm1fb3BlbihzdHJ1Y3QgaW5vZGUgKmlub2RlLCBzdHJ1Y3QgZmlsZSAqZmls cCk7Citzc2l6ZV90IGRybV9yZWFkKHN0cnVjdCBmaWxlICpmaWxwLCBjaGFyIF9fdXNlciAqYnVm ZmVyLAorCQkgc2l6ZV90IGNvdW50LCBsb2ZmX3QgKm9mZnNldCk7CitpbnQgZHJtX3JlbGVhc2Uo c3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUgKmZpbHApOworaW50IGRybV9uZXdfc2V0 X21hc3RlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZwcml2KTsK KwordW5zaWduZWQgaW50IGRybV9wb2xsKHN0cnVjdCBmaWxlICpmaWxwLCBzdHJ1Y3QgcG9sbF90 YWJsZV9zdHJ1Y3QgKndhaXQpOwogCiAvKiBNaXNjLiBJT0NUTCBzdXBwb3J0IChkcm1faW9jdGwu YykgKi8KIGludCBkcm1fbm9vcChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAot LSAKMi42LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==