From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 02ABAC31E40 for ; Fri, 9 Aug 2019 14:59:27 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C9F4A208C4 for ; Fri, 9 Aug 2019 14:59:26 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C9F4A208C4 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hw6ML-0007Hy-Nf; Fri, 09 Aug 2019 14:59:13 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hw6M3-0006eU-R9 for xen-devel@lists.xenproject.org; Fri, 09 Aug 2019 14:58:55 +0000 X-Inumbo-ID: 3147b20c-bab6-11e9-8980-bc764e045a96 Received: from mx1.suse.de (unknown [195.135.220.15]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id 3147b20c-bab6-11e9-8980-bc764e045a96; Fri, 09 Aug 2019 14:58:49 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id AEA26AF38; Fri, 9 Aug 2019 14:58:47 +0000 (UTC) From: Juergen Gross To: xen-devel@lists.xenproject.org Date: Fri, 9 Aug 2019 16:58:13 +0200 Message-Id: <20190809145833.1020-29-jgross@suse.com> X-Mailer: git-send-email 2.16.4 In-Reply-To: <20190809145833.1020-1-jgross@suse.com> References: <20190809145833.1020-1-jgross@suse.com> Subject: [Xen-devel] [PATCH v2 28/48] xen/sched: move struct task_slice into struct sched_unit X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Juergen Gross , Tim Deegan , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Robert VanVossen , Dario Faggioli , Julien Grall , Josh Whitehead , Meng Xu , Jan Beulich MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" SW4gb3JkZXIgdG8gcHJlcGFyZSBmb3IgbXVsdGlwbGUgdmNwdXMgcGVyIHNjaGVkdWxlIHVuaXQg bW92ZSBzdHJ1Y3QKdGFza19zbGljZSBpbiBzY2hlZHVsZSgpIGZyb20gdGhlIGxvY2FsIHN0YWNr IGludG8gc3RydWN0IHNjaGVkX3VuaXQKb2YgdGhlIGN1cnJlbnRseSBydW5uaW5nIHVuaXQuIFRv IG1ha2UgYWNjZXNzIGVhc2llciBmb3IgdGhlIHNpbmdsZQpzY2hlZHVsZXJzIGFkZCB0aGUgcG9p bnRlciBvZiB0aGUgY3VycmVudGx5IHJ1bm5pbmcgdW5pdCBhcyBhIHBhcmFtZXRlcgpvZiBkb19z Y2hlZHVsZSgpLgoKV2hpbGUgYXQgaXQgc3dpdGNoIHRoZSB0YXNrbGV0X3dvcmtfc2NoZWR1bGVk IHBhcmFtZXRlciBvZgpkb19zY2hlZHVsZSgpIGZyb20gYm9vbF90IHRvIGJvb2wuCgpBcyBzdHJ1 Y3QgdGFza19zbGljZSBpcyBvbmx5IGV2ZXIgbW9kaWZpZWQgd2l0aCB0aGUgbG9jYWwgc2NoZWR1 bGUKbG9jayBoZWxkIGl0IGlzIHNhZmUgdG8gZGlyZWN0bHkgc2V0IHRoZSBkaWZmZXJlbnQgdW5p dHMgaW4gc3RydWN0CnNjaGVkX3VuaXQgaW5zdGVhZCBvZiB1c2luZyBhbiBvbi1zdGFjayBjb3B5 IGZvciByZXR1cm5pbmcgdGhlIGRhdGEuCgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxq Z3Jvc3NAc3VzZS5jb20+Ci0tLQogeGVuL2NvbW1vbi9zY2hlZF9hcmluYzY1My5jIHwgMjAgKysr KysrKy0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMgICB8IDI1ICsrKysr KysrKysrLS0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jICB8IDIxICsr KysrKysrKy0tLS0tLS0tLS0tLQogeGVuL2NvbW1vbi9zY2hlZF9udWxsLmMgICAgIHwgMjkgKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfcnQuYyAgICAgICB8 IDIyICsrKysrKysrKysrLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWR1bGUuYyAgICAgICB8 IDMyICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCiB4ZW4vaW5jbHVkZS94ZW4vc2No ZWQtaWYuaCAgfCAxMSArKystLS0tLS0tLQogeGVuL2luY2x1ZGUveGVuL3NjaGVkLmggICAgIHwg IDYgKysrKysrCiA4IGZpbGVzIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKyksIDkxIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vc2NoZWRfYXJpbmM2NTMuYyBiL3hlbi9jb21t b24vc2NoZWRfYXJpbmM2NTMuYwppbmRleCBlNDhmMmIyZWI5Li4zNGVmY2MwN2M5IDEwMDY0NAot LS0gYS94ZW4vY29tbW9uL3NjaGVkX2FyaW5jNjUzLmMKKysrIGIveGVuL2NvbW1vbi9zY2hlZF9h cmluYzY1My5jCkBAIC00OTcsMTggKzQ5NywxNCBAQCBhNjUzc2NoZWRfdW5pdF93YWtlKGNvbnN0 IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc3RydWN0IHNjaGVkX3VuaXQgKnVuaXQpCiAgKgogICog QHBhcmFtIG9wcyAgICAgICBQb2ludGVyIHRvIHRoaXMgaW5zdGFuY2Ugb2YgdGhlIHNjaGVkdWxl ciBzdHJ1Y3R1cmUKICAqIEBwYXJhbSBub3cgICAgICAgQ3VycmVudCB0aW1lCi0gKgotICogQHJl dHVybiAgICAgICAgICBBZGRyZXNzIG9mIHRoZSBVTklUIHN0cnVjdHVyZSBzY2hlZHVsZWQgdG8g YmUgcnVuIG5leHQKLSAqICAgICAgICAgICAgICAgICAgQW1vdW50IG9mIHRpbWUgdG8gZXhlY3V0 ZSB0aGUgcmV0dXJuZWQgVU5JVAotICogICAgICAgICAgICAgICAgICBGbGFnIGZvciB3aGV0aGVy IHRoZSBVTklUIHdhcyBtaWdyYXRlZAogICovCi1zdGF0aWMgc3RydWN0IHRhc2tfc2xpY2UKK3N0 YXRpYyB2b2lkCiBhNjUzc2NoZWRfZG9fc2NoZWR1bGUoCiAgICAgY29uc3Qgc3RydWN0IHNjaGVk dWxlciAqb3BzLAorICAgIHN0cnVjdCBzY2hlZF91bml0ICpwcmV2LAogICAgIHNfdGltZV90IG5v dywKLSAgICBib29sX3QgdGFza2xldF93b3JrX3NjaGVkdWxlZCkKKyAgICBib29sIHRhc2tsZXRf d29ya19zY2hlZHVsZWQpCiB7Ci0gICAgc3RydWN0IHRhc2tfc2xpY2UgcmV0OyAgICAgICAgICAg ICAgICAgICAgICAvKiBob2xkIHRoZSBjaG9zZW4gZG9tYWluICovCiAgICAgc3RydWN0IHNjaGVk X3VuaXQgKm5ld190YXNrID0gTlVMTDsKICAgICBzdGF0aWMgdW5zaWduZWQgaW50IHNjaGVkX2lu ZGV4ID0gMDsKICAgICBzdGF0aWMgc190aW1lX3QgbmV4dF9zd2l0Y2hfdGltZTsKQEAgLTU4Niwx MyArNTgyLDExIEBAIGE2NTNzY2hlZF9kb19zY2hlZHVsZSgKICAgICAgKiBSZXR1cm4gdGhlIGFt b3VudCBvZiB0aW1lIHRoZSBuZXh0IGRvbWFpbiBoYXMgdG8gcnVuIGFuZCB0aGUgYWRkcmVzcwog ICAgICAqIG9mIHRoZSBzZWxlY3RlZCB0YXNrJ3MgVU5JVCBzdHJ1Y3R1cmUuCiAgICAgICovCi0g ICAgcmV0LnRpbWUgPSBuZXh0X3N3aXRjaF90aW1lIC0gbm93OwotICAgIHJldC50YXNrID0gbmV3 X3Rhc2s7Ci0gICAgcmV0Lm1pZ3JhdGVkID0gMDsKLQotICAgIEJVR19PTihyZXQudGltZSA8PSAw KTsKKyAgICBwcmV2LT5uZXh0X3RpbWUgPSBuZXh0X3N3aXRjaF90aW1lIC0gbm93OworICAgIHBy ZXYtPm5leHRfdGFzayA9IG5ld190YXNrOworICAgIG5ld190YXNrLT5taWdyYXRlZCA9IGZhbHNl OwogCi0gICAgcmV0dXJuIHJldDsKKyAgICBCVUdfT04ocHJldi0+bmV4dF90aW1lIDw9IDApOwog fQogCiAvKioKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMgYi94ZW4vY29t bW9uL3NjaGVkX2NyZWRpdC5jCmluZGV4IDg3Y2I2MmM2MzIuLmYxNjc1ZmQ1MmUgMTAwNjQ0Ci0t LSBhL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMKKysrIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVk aXQuYwpAQCAtMTY3NSw3ICsxNjc1LDcgQEAgY3NjaGVkX3J1bnFfc3RlYWwoaW50IHBlZXJfY3B1 LCBpbnQgY3B1LCBpbnQgcHJpLCBpbnQgYmFsYW5jZV9zdGVwKQogCiBzdGF0aWMgc3RydWN0IGNz Y2hlZF91bml0ICoKIGNzY2hlZF9sb2FkX2JhbGFuY2Uoc3RydWN0IGNzY2hlZF9wcml2YXRlICpw cnYsIGludCBjcHUsCi0gICAgc3RydWN0IGNzY2hlZF91bml0ICpzbmV4dCwgYm9vbF90ICpzdG9s ZW4pCisgICAgc3RydWN0IGNzY2hlZF91bml0ICpzbmV4dCwgYm9vbCAqc3RvbGVuKQogewogICAg IHN0cnVjdCBjcHVwb29sICpjID0gcGVyX2NwdShjcHVwb29sLCBjcHUpOwogICAgIHN0cnVjdCBj c2NoZWRfdW5pdCAqc3BlZXI7CkBAIC0xNzkxLDcgKzE3OTEsNyBAQCBjc2NoZWRfbG9hZF9iYWxh bmNlKHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqcHJ2LCBpbnQgY3B1LAogICAgICAgICAgICAgICAg IC8qIEFzIHNvb24gYXMgb25lIHVuaXQgaXMgZm91bmQsIGJhbGFuY2luZyBlbmRzICovCiAgICAg ICAgICAgICAgICAgaWYgKCBzcGVlciAhPSBOVUxMICkKICAgICAgICAgICAgICAgICB7Ci0gICAg ICAgICAgICAgICAgICAgICpzdG9sZW4gPSAxOworICAgICAgICAgICAgICAgICAgICAqc3RvbGVu ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgLyoKICAgICAgICAgICAgICAgICAgICAgICog TmV4dCB0aW1lIHdlJ2xsIGxvb2sgZm9yIHdvcmsgdG8gc3RlYWwgb24gdGhpcyBub2RlLCB3ZQog ICAgICAgICAgICAgICAgICAgICAgKiB3aWxsIHN0YXJ0IGZyb20gdGhlIG5leHQgcENQVSwgd2l0 aCByZXNwZWN0IHRvIHRoaXMgb25lLApAQCAtMTgyMSwxOSArMTgyMSwxOCBAQCBjc2NoZWRfbG9h ZF9iYWxhbmNlKHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqcHJ2LCBpbnQgY3B1LAogICogVGhpcyBm dW5jdGlvbiBpcyBpbiB0aGUgY3JpdGljYWwgcGF0aC4gSXQgaXMgZGVzaWduZWQgdG8gYmUgc2lt cGxlIGFuZAogICogZmFzdCBmb3IgdGhlIGNvbW1vbiBjYXNlLgogICovCi1zdGF0aWMgc3RydWN0 IHRhc2tfc2xpY2UKLWNzY2hlZF9zY2hlZHVsZSgKLSAgICBjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVy ICpvcHMsIHNfdGltZV90IG5vdywgYm9vbF90IHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCitzdGF0 aWMgdm9pZCBjc2NoZWRfc2NoZWR1bGUoCisgICAgY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3Bz LCBzdHJ1Y3Qgc2NoZWRfdW5pdCAqdW5pdCwgc190aW1lX3Qgbm93LAorICAgIGJvb2wgdGFza2xl dF93b3JrX3NjaGVkdWxlZCkKIHsKICAgICBjb25zdCB1bnNpZ25lZCBpbnQgY3B1ID0gc21wX3By b2Nlc3Nvcl9pZCgpOwogICAgIGNvbnN0IHVuc2lnbmVkIGludCBzY2hlZF9jcHUgPSBzY2hlZF9n ZXRfcmVzb3VyY2VfY3B1KGNwdSk7CiAgICAgc3RydWN0IGxpc3RfaGVhZCAqIGNvbnN0IHJ1bnEg PSBSVU5RKHNjaGVkX2NwdSk7Ci0gICAgc3RydWN0IHNjaGVkX3VuaXQgKnVuaXQgPSBjdXJyZW50 LT5zY2hlZF91bml0OwogICAgIHN0cnVjdCBjc2NoZWRfdW5pdCAqIGNvbnN0IHNjdXJyID0gQ1ND SEVEX1VOSVQodW5pdCk7CiAgICAgc3RydWN0IGNzY2hlZF9wcml2YXRlICpwcnYgPSBDU0NIRURf UFJJVihvcHMpOwogICAgIHN0cnVjdCBjc2NoZWRfdW5pdCAqc25leHQ7Ci0gICAgc3RydWN0IHRh c2tfc2xpY2UgcmV0OwogICAgIHNfdGltZV90IHJ1bnRpbWUsIHRzbGljZTsKKyAgICBib29sIG1p Z3JhdGVkID0gZmFsc2U7CiAKICAgICBTQ0hFRF9TVEFUX0NSQU5LKHNjaGVkdWxlKTsKICAgICBD U0NIRURfVU5JVF9DSEVDSyh1bml0KTsKQEAgLTE5MjQsNyArMTkyMyw2IEBAIGNzY2hlZF9zY2hl ZHVsZSgKICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICopJmQpOwogICAg ICAgICB9CiAKLSAgICAgICAgcmV0Lm1pZ3JhdGVkID0gMDsKICAgICAgICAgZ290byBvdXQ7CiAg ICAgfQogICAgIHRzbGljZSA9IHBydi0+dHNsaWNlOwpAQCAtMTk0Miw3ICsxOTQwLDYgQEAgY3Nj aGVkX3NjaGVkdWxlKAogICAgIH0KIAogICAgIHNuZXh0ID0gX19ydW5xX2VsZW0ocnVucS0+bmV4 dCk7Ci0gICAgcmV0Lm1pZ3JhdGVkID0gMDsKIAogICAgIC8qIFRhc2tsZXQgd29yayAod2hpY2gg cnVucyBpbiBpZGxlIFVOSVQgY29udGV4dCkgb3ZlcnJpZGVzIGFsbCBlbHNlLiAqLwogICAgIGlm ICggdGFza2xldF93b3JrX3NjaGVkdWxlZCApCkBAIC0xOTY4LDcgKzE5NjUsNyBAQCBjc2NoZWRf c2NoZWR1bGUoCiAgICAgaWYgKCBzbmV4dC0+cHJpID4gQ1NDSEVEX1BSSV9UU19PVkVSICkKICAg ICAgICAgX19ydW5xX3JlbW92ZShzbmV4dCk7CiAgICAgZWxzZQotICAgICAgICBzbmV4dCA9IGNz Y2hlZF9sb2FkX2JhbGFuY2UocHJ2LCBzY2hlZF9jcHUsIHNuZXh0LCAmcmV0Lm1pZ3JhdGVkKTsK KyAgICAgICAgc25leHQgPSBjc2NoZWRfbG9hZF9iYWxhbmNlKHBydiwgc2NoZWRfY3B1LCBzbmV4 dCwgJm1pZ3JhdGVkKTsKIAogICAgIC8qCiAgICAgICogVXBkYXRlIGlkbGVycyBtYXNrIGlmIG5l Y2Vzc2FyeS4gV2hlbiB3ZSdyZSBpZGxpbmcsIG90aGVyIENQVXMKQEAgLTE5OTEsMTIgKzE5ODgs MTIgQEAgb3V0OgogICAgIC8qCiAgICAgICogUmV0dXJuIHRhc2sgdG8gcnVuIG5leHQuLi4KICAg ICAgKi8KLSAgICByZXQudGltZSA9IChpc19pZGxlX3VuaXQoc25leHQtPnVuaXQpID8KKyAgICB1 bml0LT5uZXh0X3RpbWUgPSAoaXNfaWRsZV91bml0KHNuZXh0LT51bml0KSA/CiAgICAgICAgICAg ICAgICAgLTEgOiB0c2xpY2UpOwotICAgIHJldC50YXNrID0gc25leHQtPnVuaXQ7CisgICAgdW5p dC0+bmV4dF90YXNrID0gc25leHQtPnVuaXQ7CisgICAgc25leHQtPnVuaXQtPm1pZ3JhdGVkID0g bWlncmF0ZWQ7CiAKLSAgICBDU0NIRURfVU5JVF9DSEVDSyhyZXQudGFzayk7Ci0gICAgcmV0dXJu IHJldDsKKyAgICBDU0NIRURfVU5JVF9DSEVDSyh1bml0LT5uZXh0X3Rhc2spOwogfQogCiBzdGF0 aWMgdm9pZApkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9zY2hlZF9jcmVkaXQyLmMgYi94ZW4vY29t bW9uL3NjaGVkX2NyZWRpdDIuYwppbmRleCA1NDhiODdhZjhiLi45OGVmNDhkNmY0IDEwMDY0NAot LS0gYS94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYworKysgYi94ZW4vY29tbW9uL3NjaGVkX2Ny ZWRpdDIuYwpAQCAtMzQ0NCwxOSArMzQ0NCwxOCBAQCBydW5xX2NhbmRpZGF0ZShzdHJ1Y3QgY3Nj aGVkMl9ydW5xdWV1ZV9kYXRhICpycWQsCiAgKiBUaGlzIGZ1bmN0aW9uIGlzIGluIHRoZSBjcml0 aWNhbCBwYXRoLiBJdCBpcyBkZXNpZ25lZCB0byBiZSBzaW1wbGUgYW5kCiAgKiBmYXN0IGZvciB0 aGUgY29tbW9uIGNhc2UuCiAgKi8KLXN0YXRpYyBzdHJ1Y3QgdGFza19zbGljZQotY3NjaGVkMl9z Y2hlZHVsZSgKLSAgICBjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHNfdGltZV90IG5vdywg Ym9vbCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKQorc3RhdGljIHZvaWQgY3NjaGVkMl9zY2hlZHVs ZSgKKyAgICBjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHN0cnVjdCBzY2hlZF91bml0ICpj dXJydW5pdCwgc190aW1lX3Qgbm93LAorICAgIGJvb2wgdGFza2xldF93b3JrX3NjaGVkdWxlZCkK IHsKICAgICBjb25zdCB1bnNpZ25lZCBpbnQgY3B1ID0gc21wX3Byb2Nlc3Nvcl9pZCgpOwogICAg IGNvbnN0IHVuc2lnbmVkIGludCBzY2hlZF9jcHUgPSBzY2hlZF9nZXRfcmVzb3VyY2VfY3B1KGNw dSk7CiAgICAgc3RydWN0IGNzY2hlZDJfcnVucXVldWVfZGF0YSAqcnFkOwotICAgIHN0cnVjdCBz Y2hlZF91bml0ICpjdXJydW5pdCA9IGN1cnJlbnQtPnNjaGVkX3VuaXQ7CiAgICAgc3RydWN0IGNz Y2hlZDJfdW5pdCAqIGNvbnN0IHNjdXJyID0gY3NjaGVkMl91bml0KGN1cnJ1bml0KTsKICAgICBz dHJ1Y3QgY3NjaGVkMl91bml0ICpzbmV4dCA9IE5VTEw7CiAgICAgdW5zaWduZWQgaW50IHNraXBw ZWRfdW5pdHMgPSAwOwotICAgIHN0cnVjdCB0YXNrX3NsaWNlIHJldDsKICAgICBib29sIHRpY2ts ZWQ7CisgICAgYm9vbCBtaWdyYXRlZCA9IGZhbHNlOwogCiAgICAgU0NIRURfU1RBVF9DUkFOSyhz Y2hlZHVsZSk7CiAgICAgQ1NDSEVEMl9VTklUX0NIRUNLKGN1cnJ1bml0KTsKQEAgLTM1NDEsOCAr MzU0MCw2IEBAIGNzY2hlZDJfc2NoZWR1bGUoCiAgICAgICAgICAmJiB1bml0X3J1bm5hYmxlKGN1 cnJ1bml0KSApCiAgICAgICAgIF9fc2V0X2JpdChfX0NTRkxBR19kZWxheWVkX3J1bnFfYWRkLCAm c2N1cnItPmZsYWdzKTsKIAotICAgIHJldC5taWdyYXRlZCA9IDA7Ci0KICAgICAvKiBBY2NvdW50 aW5nIGZvciBub24taWRsZSB0YXNrcyAqLwogICAgIGlmICggIWlzX2lkbGVfdW5pdChzbmV4dC0+ dW5pdCkgKQogICAgIHsKQEAgLTM1OTIsNyArMzU4OSw3IEBAIGNzY2hlZDJfc2NoZWR1bGUoCiAg ICAgICAgICAgICBzbmV4dC0+Y3JlZGl0ICs9IENTQ0hFRDJfTUlHUkFURV9DT01QRU5TQVRJT047 CiAgICAgICAgICAgICBzY2hlZF9zZXRfcmVzKHNuZXh0LT51bml0LCBnZXRfc2NoZWRfcmVzKHNj aGVkX2NwdSkpOwogICAgICAgICAgICAgU0NIRURfU1RBVF9DUkFOSyhtaWdyYXRlZCk7Ci0gICAg ICAgICAgICByZXQubWlncmF0ZWQgPSAxOworICAgICAgICAgICAgbWlncmF0ZWQgPSB0cnVlOwog ICAgICAgICB9CiAgICAgfQogICAgIGVsc2UKQEAgLTM2MjMsMTEgKzM2MjAsMTEgQEAgY3NjaGVk Ml9zY2hlZHVsZSgKICAgICAvKgogICAgICAqIFJldHVybiB0YXNrIHRvIHJ1biBuZXh0Li4uCiAg ICAgICovCi0gICAgcmV0LnRpbWUgPSBjc2NoZWQyX3J1bnRpbWUob3BzLCBzY2hlZF9jcHUsIHNu ZXh0LCBub3cpOwotICAgIHJldC50YXNrID0gc25leHQtPnVuaXQ7CisgICAgY3VycnVuaXQtPm5l eHRfdGltZSA9IGNzY2hlZDJfcnVudGltZShvcHMsIHNjaGVkX2NwdSwgc25leHQsIG5vdyk7Cisg ICAgY3VycnVuaXQtPm5leHRfdGFzayA9IHNuZXh0LT51bml0OworICAgIHNuZXh0LT51bml0LT5t aWdyYXRlZCA9IG1pZ3JhdGVkOwogCi0gICAgQ1NDSEVEMl9VTklUX0NIRUNLKHJldC50YXNrKTsK LSAgICByZXR1cm4gcmV0OworICAgIENTQ0hFRDJfVU5JVF9DSEVDSyhjdXJydW5pdC0+bmV4dF90 YXNrKTsKIH0KIAogc3RhdGljIHZvaWQKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vc2NoZWRfbnVs bC5jIGIveGVuL2NvbW1vbi9zY2hlZF9udWxsLmMKaW5kZXggNTZlZjA3OGM1YS4uMzk3ZWRjYmM4 MyAxMDA2NDQKLS0tIGEveGVuL2NvbW1vbi9zY2hlZF9udWxsLmMKKysrIGIveGVuL2NvbW1vbi9z Y2hlZF9udWxsLmMKQEAgLTc3OSwxNiArNzc5LDE0IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBudWxs X3VuaXRfY2hlY2soc3RydWN0IHNjaGVkX3VuaXQgKnVuaXQpCiAgKiAgLSB0aGUgdW5pdCBhc3Np Z25lZCB0byB0aGUgcENQVSwgaWYgdGhlcmUncyBvbmUgYW5kIGl0IGNhbiBydW47CiAgKiAgLSB0 aGUgaWRsZSB1bml0LCBvdGhlcndpc2UuCiAgKi8KLXN0YXRpYyBzdHJ1Y3QgdGFza19zbGljZSBu dWxsX3NjaGVkdWxlKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHNfdGltZV90IG5vdywKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGJvb2xfdCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKQorc3Rh dGljIHZvaWQgbnVsbF9zY2hlZHVsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHN0cnVj dCBzY2hlZF91bml0ICpwcmV2LAorICAgICAgICAgICAgICAgICAgICAgICAgICBzX3RpbWVfdCBu b3csIGJvb2wgdGFza2xldF93b3JrX3NjaGVkdWxlZCkKIHsKICAgICB1bnNpZ25lZCBpbnQgYnM7 CiAgICAgY29uc3QgdW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKICAgICBj b25zdCB1bnNpZ25lZCBpbnQgc2NoZWRfY3B1ID0gc2NoZWRfZ2V0X3Jlc291cmNlX2NwdShjcHUp OwogICAgIHN0cnVjdCBudWxsX3ByaXZhdGUgKnBydiA9IG51bGxfcHJpdihvcHMpOwogICAgIHN0 cnVjdCBudWxsX3VuaXQgKnd2YzsKLSAgICBzdHJ1Y3QgdGFza19zbGljZSByZXQ7CiAKICAgICBT Q0hFRF9TVEFUX0NSQU5LKHNjaGVkdWxlKTsKICAgICBOVUxMX1VOSVRfQ0hFQ0soY3VycmVudC0+ c2NoZWRfdW5pdCk7CkBAIC04MTYsMTkgKzgxNCwxOCBAQCBzdGF0aWMgc3RydWN0IHRhc2tfc2xp Y2UgbnVsbF9zY2hlZHVsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsCiAgICAgaWYgKCB0 YXNrbGV0X3dvcmtfc2NoZWR1bGVkICkKICAgICB7CiAgICAgICAgIHRyYWNlX3ZhcihUUkNfU05V TExfVEFTS0xFVCwgMSwgMCwgTlVMTCk7Ci0gICAgICAgIHJldC50YXNrID0gc2NoZWRfaWRsZV91 bml0KHNjaGVkX2NwdSk7CisgICAgICAgIHByZXYtPm5leHRfdGFzayA9IHNjaGVkX2lkbGVfdW5p dChzY2hlZF9jcHUpOwogICAgIH0KICAgICBlbHNlCi0gICAgICAgIHJldC50YXNrID0gcGVyX2Nw dShucGMsIHNjaGVkX2NwdSkudW5pdDsKLSAgICByZXQubWlncmF0ZWQgPSAwOwotICAgIHJldC50 aW1lID0gLTE7CisgICAgICAgIHByZXYtPm5leHRfdGFzayA9IHBlcl9jcHUobnBjLCBzY2hlZF9j cHUpLnVuaXQ7CisgICAgcHJldi0+bmV4dF90aW1lID0gLTE7CiAKICAgICAvKgogICAgICAqIFdl IG1heSBiZSBuZXcgaW4gdGhlIGNwdXBvb2wsIG9yIGp1c3QgY29taW5nIGJhY2sgb25saW5lLiBJ biB3aGljaAogICAgICAqIGNhc2UsIHRoZXJlIG1heSBiZSB1bml0cyBpbiB0aGUgd2FpdHF1ZXVl IHRoYXQgd2UgY2FuIGFzc2lnbiB0byB1cwogICAgICAqIGFuZCBydW4uCiAgICAgICovCi0gICAg aWYgKCB1bmxpa2VseShyZXQudGFzayA9PSBOVUxMKSApCisgICAgaWYgKCB1bmxpa2VseShwcmV2 LT5uZXh0X3Rhc2sgPT0gTlVMTCkgKQogICAgIHsKICAgICAgICAgc3Bpbl9sb2NrKCZwcnYtPndh aXRxX2xvY2spOwogCkBAIC04NTQsNyArODUxLDcgQEAgc3RhdGljIHN0cnVjdCB0YXNrX3NsaWNl IG51bGxfc2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLAogICAgICAgICAgICAg ICAgIHsKICAgICAgICAgICAgICAgICAgICAgdW5pdF9hc3NpZ24ocHJ2LCB3dmMtPnVuaXQsIHNj aGVkX2NwdSk7CiAgICAgICAgICAgICAgICAgICAgIGxpc3RfZGVsX2luaXQoJnd2Yy0+d2FpdHFf ZWxlbSk7Ci0gICAgICAgICAgICAgICAgICAgIHJldC50YXNrID0gd3ZjLT51bml0OworICAgICAg ICAgICAgICAgICAgICBwcmV2LT5uZXh0X3Rhc2sgPSB3dmMtPnVuaXQ7CiAgICAgICAgICAgICAg ICAgICAgIGdvdG8gdW5sb2NrOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KQEAg LTg2MiwxNSArODU5LDE3IEBAIHN0YXRpYyBzdHJ1Y3QgdGFza19zbGljZSBudWxsX3NjaGVkdWxl KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKICB1bmxvY2s6CiAgICAgICAgIHNwaW5fdW5s b2NrKCZwcnYtPndhaXRxX2xvY2spOwogCi0gICAgICAgIGlmICggcmV0LnRhc2sgPT0gTlVMTCAm JiAhY3B1bWFza190ZXN0X2NwdShjcHUsICZwcnYtPmNwdXNfZnJlZSkgKQorICAgICAgICBpZiAo IHByZXYtPm5leHRfdGFzayA9PSBOVUxMICYmCisgICAgICAgICAgICAgIWNwdW1hc2tfdGVzdF9j cHUoY3B1LCAmcHJ2LT5jcHVzX2ZyZWUpICkKICAgICAgICAgICAgIGNwdW1hc2tfc2V0X2NwdShj cHUsICZwcnYtPmNwdXNfZnJlZSk7CiAgICAgfQogCi0gICAgaWYgKCB1bmxpa2VseShyZXQudGFz ayA9PSBOVUxMIHx8ICF1bml0X3J1bm5hYmxlKHJldC50YXNrKSkgKQotICAgICAgICByZXQudGFz ayA9IHNjaGVkX2lkbGVfdW5pdChzY2hlZF9jcHUpOworICAgIGlmICggdW5saWtlbHkocHJldi0+ bmV4dF90YXNrID09IE5VTEwgfHwgIXVuaXRfcnVubmFibGUocHJldi0+bmV4dF90YXNrKSkgKQor ICAgICAgICBwcmV2LT5uZXh0X3Rhc2sgPSBzY2hlZF9pZGxlX3VuaXQoc2NoZWRfY3B1KTsKIAot ICAgIE5VTExfVU5JVF9DSEVDSyhyZXQudGFzayk7Ci0gICAgcmV0dXJuIHJldDsKKyAgICBOVUxM X1VOSVRfQ0hFQ0socHJldi0+bmV4dF90YXNrKTsKKworICAgIHByZXYtPm5leHRfdGFzay0+bWln cmF0ZWQgPSBmYWxzZTsKIH0KIAogc3RhdGljIGlubGluZSB2b2lkIGR1bXBfdW5pdChzdHJ1Y3Qg bnVsbF9wcml2YXRlICpwcnYsIHN0cnVjdCBudWxsX3VuaXQgKm52YykKZGlmZiAtLWdpdCBhL3hl bi9jb21tb24vc2NoZWRfcnQuYyBiL3hlbi9jb21tb24vc2NoZWRfcnQuYwppbmRleCA3YjlkMjVm MTM4Li5mY2JmYTUyOGY0IDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL3NjaGVkX3J0LmMKKysrIGIv eGVuL2NvbW1vbi9zY2hlZF9ydC5jCkBAIC0xMDU0LDE2ICsxMDU0LDE2IEBAIHJ1bnFfcGljayhj b25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIGNvbnN0IGNwdW1hc2tfdCAqbWFzaykKICAqIHNj aGVkdWxlIGZ1bmN0aW9uIGZvciBydCBzY2hlZHVsZXIuCiAgKiBUaGUgbG9jayBpcyBhbHJlYWR5 IGdyYWJiZWQgaW4gc2NoZWR1bGUuYywgbm8gbmVlZCB0byBsb2NrIGhlcmUKICAqLwotc3RhdGlj IHN0cnVjdCB0YXNrX3NsaWNlCi1ydF9zY2hlZHVsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpv cHMsIHNfdGltZV90IG5vdywgYm9vbF90IHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCitzdGF0aWMg dm9pZAorcnRfc2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3Qgc2No ZWRfdW5pdCAqY3VycnVuaXQsCisgICAgICAgICAgICBzX3RpbWVfdCBub3csIGJvb2wgdGFza2xl dF93b3JrX3NjaGVkdWxlZCkKIHsKICAgICBjb25zdCB1bnNpZ25lZCBpbnQgY3B1ID0gc21wX3By b2Nlc3Nvcl9pZCgpOwogICAgIGNvbnN0IHVuc2lnbmVkIGludCBzY2hlZF9jcHUgPSBzY2hlZF9n ZXRfcmVzb3VyY2VfY3B1KGNwdSk7CiAgICAgc3RydWN0IHJ0X3ByaXZhdGUgKnBydiA9IHJ0X3By aXYob3BzKTsKLSAgICBzdHJ1Y3QgcnRfdW5pdCAqY29uc3Qgc2N1cnIgPSBydF91bml0KGN1cnJl bnQtPnNjaGVkX3VuaXQpOworICAgIHN0cnVjdCBydF91bml0ICpjb25zdCBzY3VyciA9IHJ0X3Vu aXQoY3VycnVuaXQpOwogICAgIHN0cnVjdCBydF91bml0ICpzbmV4dCA9IE5VTEw7Ci0gICAgc3Ry dWN0IHRhc2tfc2xpY2UgcmV0ID0geyAubWlncmF0ZWQgPSAwIH07Ci0gICAgc3RydWN0IHNjaGVk X3VuaXQgKmN1cnJ1bml0ID0gY3VycmVudC0+c2NoZWRfdW5pdDsKKyAgICBib29sIG1pZ3JhdGVk ID0gZmFsc2U7CiAKICAgICAvKiBUUkFDRSAqLwogICAgIHsKQEAgLTExMTEsNyArMTExMSw3IEBA IHJ0X3NjaGVkdWxlKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc190aW1lX3Qgbm93LCBi b29sX3QgdGFza2xldF93b3JrX3NjaGVkCiAgICAgICAgIF9fc2V0X2JpdChfX1JURFNfZGVsYXll ZF9ydW5xX2FkZCwgJnNjdXJyLT5mbGFncyk7CiAKICAgICBzbmV4dC0+bGFzdF9zdGFydCA9IG5v dzsKLSAgICByZXQudGltZSA9ICAtMTsgLyogaWYgYW4gaWRsZSB1bml0IGlzIHBpY2tlZCAqLwor ICAgIGN1cnJ1bml0LT5uZXh0X3RpbWUgPSAgLTE7IC8qIGlmIGFuIGlkbGUgdW5pdCBpcyBwaWNr ZWQgKi8KICAgICBpZiAoICFpc19pZGxlX3VuaXQoc25leHQtPnVuaXQpICkKICAgICB7CiAgICAg ICAgIGlmICggc25leHQgIT0gc2N1cnIgKQpAQCAtMTEyMiwxMyArMTEyMiwxMyBAQCBydF9zY2hl ZHVsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHNfdGltZV90IG5vdywgYm9vbF90IHRh c2tsZXRfd29ya19zY2hlZAogICAgICAgICBpZiAoIHNjaGVkX3VuaXRfY3B1KHNuZXh0LT51bml0 KSAhPSBzY2hlZF9jcHUgKQogICAgICAgICB7CiAgICAgICAgICAgICBzY2hlZF9zZXRfcmVzKHNu ZXh0LT51bml0LCBnZXRfc2NoZWRfcmVzKHNjaGVkX2NwdSkpOwotICAgICAgICAgICAgcmV0Lm1p Z3JhdGVkID0gMTsKKyAgICAgICAgICAgIG1pZ3JhdGVkID0gdHJ1ZTsKICAgICAgICAgfQotICAg ICAgICByZXQudGltZSA9IHNuZXh0LT5jdXJfYnVkZ2V0OyAvKiBpbnZva2UgdGhlIHNjaGVkdWxl ciBuZXh0IHRpbWUgKi8KKyAgICAgICAgLyogSW52b2tlIHRoZSBzY2hlZHVsZXIgbmV4dCB0aW1l LiAqLworICAgICAgICBjdXJydW5pdC0+bmV4dF90aW1lID0gc25leHQtPmN1cl9idWRnZXQ7CiAg ICAgfQotICAgIHJldC50YXNrID0gc25leHQtPnVuaXQ7Ci0KLSAgICByZXR1cm4gcmV0OworICAg IGN1cnJ1bml0LT5uZXh0X3Rhc2sgPSBzbmV4dC0+dW5pdDsKKyAgICBzbmV4dC0+dW5pdC0+bWln cmF0ZWQgPSBtaWdyYXRlZDsKIH0KIAogLyoKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vc2NoZWR1 bGUuYyBiL3hlbi9jb21tb24vc2NoZWR1bGUuYwppbmRleCBlNGQwZGQ0YjY1Li5kMmZjODlkOTgz IDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL3NjaGVkdWxlLmMKKysrIGIveGVuL2NvbW1vbi9zY2hl ZHVsZS5jCkBAIC0xMDUsMTUgKzEwNSwxNCBAQCBzY2hlZF9pZGxlX2ZyZWVfdmRhdGEoY29uc3Qg c3RydWN0IHNjaGVkdWxlciAqb3BzLCB2b2lkICpwcml2KQogewogfQogCi1zdGF0aWMgc3RydWN0 IHRhc2tfc2xpY2Ugc2NoZWRfaWRsZV9zY2hlZHVsZSgKLSAgICBjb25zdCBzdHJ1Y3Qgc2NoZWR1 bGVyICpvcHMsIHNfdGltZV90IG5vdywKK3N0YXRpYyB2b2lkIHNjaGVkX2lkbGVfc2NoZWR1bGUo CisgICAgY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3Qgc2NoZWRfdW5pdCAqdW5p dCwgc190aW1lX3Qgbm93LAogICAgIGJvb2wgdGFza2xldF93b3JrX3NjaGVkdWxlZCkKIHsKICAg ICBjb25zdCB1bnNpZ25lZCBpbnQgY3B1ID0gc21wX3Byb2Nlc3Nvcl9pZCgpOwotICAgIHN0cnVj dCB0YXNrX3NsaWNlIHJldCA9IHsgLnRpbWUgPSAtMSB9OwogCi0gICAgcmV0LnRhc2sgPSBzY2hl ZF9pZGxlX3VuaXQoc2NoZWRfZ2V0X3Jlc291cmNlX2NwdShjcHUpKTsKLSAgICByZXR1cm4gcmV0 OworICAgIHVuaXQtPm5leHRfdGltZSA9IC0xOworICAgIHVuaXQtPm5leHRfdGFzayA9IHNjaGVk X2lkbGVfdW5pdChzY2hlZF9nZXRfcmVzb3VyY2VfY3B1KGNwdSkpOwogfQogCiBzdGF0aWMgc3Ry dWN0IHNjaGVkdWxlciBzY2hlZF9pZGxlX29wcyA9IHsKQEAgLTE2OTgsMTAgKzE2OTcsOSBAQCBz dGF0aWMgdm9pZCBzY2hlZHVsZSh2b2lkKQogICAgIHNfdGltZV90ICAgICAgICAgICAgICBub3c7 CiAgICAgc3RydWN0IHNjaGVkdWxlciAgICAgKnNjaGVkOwogICAgIHVuc2lnbmVkIGxvbmcgICAg ICAgICp0YXNrbGV0X3dvcmsgPSAmdGhpc19jcHUodGFza2xldF93b3JrX3RvX2RvKTsKLSAgICBi b29sX3QgICAgICAgICAgICAgICAgdGFza2xldF93b3JrX3NjaGVkdWxlZCA9IDA7CisgICAgYm9v bCAgICAgICAgICAgICAgICAgIHRhc2tsZXRfd29ya19zY2hlZHVsZWQgPSBmYWxzZTsKICAgICBz dHJ1Y3Qgc2NoZWRfcmVzb3VyY2UgKnNkOwogICAgIHNwaW5sb2NrX3QgICAgICAgICAgICpsb2Nr OwotICAgIHN0cnVjdCB0YXNrX3NsaWNlICAgICBuZXh0X3NsaWNlOwogICAgIGludCBjcHUgPSBz bXBfcHJvY2Vzc29yX2lkKCk7CiAKICAgICBBU1NFUlRfTk9UX0lOX0FUT01JQygpOwpAQCAtMTcx NywxMiArMTcxNSwxMiBAQCBzdGF0aWMgdm9pZCBzY2hlZHVsZSh2b2lkKQogICAgICAgICBzZXRf Yml0KF9UQVNLTEVUX3NjaGVkdWxlZCwgdGFza2xldF93b3JrKTsKICAgICAgICAgLyogZmFsbHRo cm91Z2ggKi8KICAgICBjYXNlIFRBU0tMRVRfZW5xdWV1ZWR8VEFTS0xFVF9zY2hlZHVsZWQ6Ci0g ICAgICAgIHRhc2tsZXRfd29ya19zY2hlZHVsZWQgPSAxOworICAgICAgICB0YXNrbGV0X3dvcmtf c2NoZWR1bGVkID0gdHJ1ZTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBUQVNLTEVUX3NjaGVk dWxlZDoKICAgICAgICAgY2xlYXJfYml0KF9UQVNLTEVUX3NjaGVkdWxlZCwgdGFza2xldF93b3Jr KTsKICAgICBjYXNlIDA6Ci0gICAgICAgIC8qdGFza2xldF93b3JrX3NjaGVkdWxlZCA9IDA7Ki8K KyAgICAgICAgLyp0YXNrbGV0X3dvcmtfc2NoZWR1bGVkID0gZmFsc2U7Ki8KICAgICAgICAgYnJl YWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgQlVHKCk7CkBAIC0xNzM2LDE0ICsxNzM0LDE0IEBA IHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAKICAgICAvKiBnZXQgcG9saWN5LXNwZWNpZmlj IGRlY2lzaW9uIG9uIHNjaGVkdWxpbmcuLi4gKi8KICAgICBzY2hlZCA9IHRoaXNfY3B1KHNjaGVk dWxlcik7Ci0gICAgbmV4dF9zbGljZSA9IHNjaGVkLT5kb19zY2hlZHVsZShzY2hlZCwgbm93LCB0 YXNrbGV0X3dvcmtfc2NoZWR1bGVkKTsKKyAgICBzY2hlZC0+ZG9fc2NoZWR1bGUoc2NoZWQsIHBy ZXYsIG5vdywgdGFza2xldF93b3JrX3NjaGVkdWxlZCk7CiAKLSAgICBuZXh0ID0gbmV4dF9zbGlj ZS50YXNrOworICAgIG5leHQgPSBwcmV2LT5uZXh0X3Rhc2s7CiAKICAgICBzZC0+Y3VyciA9IG5l eHQ7CiAKLSAgICBpZiAoIG5leHRfc2xpY2UudGltZSA+PSAwICkgLyogLXZlIG1lYW5zIG5vIGxp bWl0ICovCi0gICAgICAgIHNldF90aW1lcigmc2QtPnNfdGltZXIsIG5vdyArIG5leHRfc2xpY2Uu dGltZSk7CisgICAgaWYgKCBwcmV2LT5uZXh0X3RpbWUgPj0gMCApIC8qIC12ZSBtZWFucyBubyBs aW1pdCAqLworICAgICAgICBzZXRfdGltZXIoJnNkLT5zX3RpbWVyLCBub3cgKyBwcmV2LT5uZXh0 X3RpbWUpOwogCiAgICAgaWYgKCB1bmxpa2VseShwcmV2ID09IG5leHQpICkKICAgICB7CkBAIC0x NzUxLDkgKzE3NDksNyBAQCBzdGF0aWMgdm9pZCBzY2hlZHVsZSh2b2lkKQogICAgICAgICBUUkFD RV80RChUUkNfU0NIRURfU1dJVENIX0lORkNPTlQsCiAgICAgICAgICAgICAgICAgIG5leHQtPmRv bWFpbi0+ZG9tYWluX2lkLCBuZXh0LT51bml0X2lkLAogICAgICAgICAgICAgICAgICBub3cgLSBw cmV2LT5zdGF0ZV9lbnRyeV90aW1lLAotICAgICAgICAgICAgICAgICBuZXh0X3NsaWNlLnRpbWUp OwotICAgICAgICB0cmFjZV9jb250aW51ZV9ydW5uaW5nKG5leHQtPnZjcHVfbGlzdCk7Ci0gICAg ICAgIHJldHVybiBjb250aW51ZV9ydW5uaW5nKHByZXYtPnZjcHVfbGlzdCk7CisgICAgICAgICAg ICAgICAgIHByZXYtPm5leHRfdGltZSk7CiAgICAgfQogCiAgICAgVFJBQ0VfM0QoVFJDX1NDSEVE X1NXSVRDSF9JTkZQUkVWLApAQCAtMTc2Myw3ICsxNzU5LDcgQEAgc3RhdGljIHZvaWQgc2NoZWR1 bGUodm9pZCkKICAgICAgICAgICAgICBuZXh0LT5kb21haW4tPmRvbWFpbl9pZCwgbmV4dC0+dW5p dF9pZCwKICAgICAgICAgICAgICAobmV4dC0+dmNwdV9saXN0LT5ydW5zdGF0ZS5zdGF0ZSA9PSBS VU5TVEFURV9ydW5uYWJsZSkgPwogICAgICAgICAgICAgIChub3cgLSBuZXh0LT5zdGF0ZV9lbnRy eV90aW1lKSA6IDAsCi0gICAgICAgICAgICAgbmV4dF9zbGljZS50aW1lKTsKKyAgICAgICAgICAg ICBwcmV2LT5uZXh0X3RpbWUpOwogCiAgICAgQVNTRVJUKHByZXYtPnZjcHVfbGlzdC0+cnVuc3Rh dGUuc3RhdGUgPT0gUlVOU1RBVEVfcnVubmluZyk7CiAKQEAgLTE3OTIsNyArMTc4OCw3IEBAIHN0 YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAKICAgICBzdG9wX3RpbWVyKCZwcmV2LT52Y3B1X2xp c3QtPnBlcmlvZGljX3RpbWVyKTsKIAotICAgIGlmICggbmV4dF9zbGljZS5taWdyYXRlZCApCisg ICAgaWYgKCBuZXh0LT5taWdyYXRlZCApCiAgICAgICAgIHZjcHVfbW92ZV9pcnFzKG5leHQtPnZj cHVfbGlzdCk7CiAKICAgICB2Y3B1X3BlcmlvZGljX3RpbWVyX3dvcmsobmV4dC0+dmNwdV9saXN0 KTsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC1pZi5oIGIveGVuL2luY2x1ZGUv eGVuL3NjaGVkLWlmLmgKaW5kZXggMWEzOTgxZTc4YS4uYmE5MWMzYTY4MCAxMDA2NDQKLS0tIGEv eGVuL2luY2x1ZGUveGVuL3NjaGVkLWlmLmgKKysrIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLWlm LmgKQEAgLTE5NSwxMiArMTk1LDYgQEAgc3RhdGljIGlubGluZSBzcGlubG9ja190ICpwY3B1X3Nj aGVkdWxlX3RyeWxvY2sodW5zaWduZWQgaW50IGNwdSkKICAgICByZXR1cm4gTlVMTDsKIH0KIAot c3RydWN0IHRhc2tfc2xpY2UgewotICAgIHN0cnVjdCBzY2hlZF91bml0ICp0YXNrOwotICAgIHNf dGltZV90ICAgICAgICAgICB0aW1lOwotICAgIGJvb2xfdCAgICAgICAgICAgICBtaWdyYXRlZDsK LX07Ci0KIHN0cnVjdCBzY2hlZHVsZXIgewogICAgIGNoYXIgKm5hbWU7ICAgICAgICAgICAgIC8q IGZ1bGwgbmFtZSBmb3IgdGhpcyBzY2hlZHVsZXIgICAgICAqLwogICAgIGNoYXIgKm9wdF9uYW1l OyAgICAgICAgIC8qIG9wdGlvbiBuYW1lIGZvciB0aGlzIHNjaGVkdWxlciAgICAqLwpAQCAtMjQz LDggKzIzNyw5IEBAIHN0cnVjdCBzY2hlZHVsZXIgewogICAgIHZvaWQgICAgICAgICAoKmNvbnRl eHRfc2F2ZWQpICAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgc3RydWN0IHNjaGVkX3VuaXQgKik7CiAKLSAgICBzdHJ1Y3QgdGFz a19zbGljZSAoKmRvX3NjaGVkdWxlKSAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLCBzX3RpbWVf dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbF90IHRhc2tsZXRf d29ya19zY2hlZHVsZWQpOworICAgIHZvaWQgICAgICAgICAoKmRvX3NjaGVkdWxlKSAgICAoY29u c3Qgc3RydWN0IHNjaGVkdWxlciAqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc3RydWN0IHNjaGVkX3VuaXQgKiwgc190aW1lX3QsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBib29sIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpOwogCiAgICAgc3RydWN0 IHNjaGVkX3Jlc291cmNlICogKCpwaWNrX3Jlc291cmNlKSAoY29uc3Qgc3RydWN0IHNjaGVkdWxl ciAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj dCBzY2hlZF91bml0ICopOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3NjaGVkLmggYi94 ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaAppbmRleCA3Zjg0YjgyM2NiLi45YTE3OTYyMTMyIDEwMDY0 NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vc2No ZWQuaApAQCAtMjgxLDEyICsyODEsMTggQEAgc3RydWN0IHNjaGVkX3VuaXQgewogICAgIGJvb2wg ICAgICAgICAgICAgICAgICAgaXNfcnVubmluZzsKICAgICAvKiBEb2VzIHNvZnQgYWZmaW5pdHkg YWN0dWFsbHkgcGxheSBhIHJvbGUgKGdpdmVuIGhhcmQgYWZmaW5pdHkpPyAqLwogICAgIGJvb2wg ICAgICAgICAgICAgICAgICAgc29mdF9hZmZfZWZmZWN0aXZlOworICAgIC8qIEl0ZW0gaGFzIGJl ZW4gbWlncmF0ZWQgdG8gb3RoZXIgY3B1KHMpLiAqLworICAgIGJvb2wgICAgICAgICAgICAgICAg ICAgbWlncmF0ZWQ7CiAgICAgLyogQml0bWFzayBvZiBDUFVzIG9uIHdoaWNoIHRoaXMgVkNQVSBt YXkgcnVuLiAqLwogICAgIGNwdW1hc2tfdmFyX3QgICAgICAgICAgY3B1X2hhcmRfYWZmaW5pdHk7 CiAgICAgLyogVXNlZCB0byBzYXZlIGFmZmluaXR5IGR1cmluZyB0ZW1wb3JhcnkgcGlubmluZy4g Ki8KICAgICBjcHVtYXNrX3Zhcl90ICAgICAgICAgIGNwdV9oYXJkX2FmZmluaXR5X3NhdmVkOwog ICAgIC8qIEJpdG1hc2sgb2YgQ1BVcyBvbiB3aGljaCB0aGlzIFZDUFUgcHJlZmVycyB0byBydW4u ICovCiAgICAgY3B1bWFza192YXJfdCAgICAgICAgICBjcHVfc29mdF9hZmZpbml0eTsKKworICAg IC8qIE5leHQgdW5pdCB0byBydW4uICovCisgICAgc3RydWN0IHNjaGVkX3VuaXQgICAgICAqbmV4 dF90YXNrOworICAgIHNfdGltZV90ICAgICAgICAgICAgICAgIG5leHRfdGltZTsKIH07CiAKICNk ZWZpbmUgZm9yX2VhY2hfc2NoZWRfdW5pdChkLCBlKSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAotLSAKMi4xNi40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xp c3RpbmZvL3hlbi1kZXZlbA==