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=-10.0 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 7D622C4CEC5 for ; Sat, 14 Sep 2019 08:53:14 +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 4C8CF20830 for ; Sat, 14 Sep 2019 08:53:14 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4C8CF20830 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 1i93ng-0007UA-2S; Sat, 14 Sep 2019 08:53:00 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i93ne-0007Tx-NI for xen-devel@lists.xenproject.org; Sat, 14 Sep 2019 08:52:58 +0000 X-Inumbo-ID: 0b2d589f-d6cd-11e9-95c1-12813bfff9fa Received: from mx1.suse.de (unknown [195.135.220.15]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 0b2d589f-d6cd-11e9-95c1-12813bfff9fa; Sat, 14 Sep 2019 08:52:56 +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 87345B617; Sat, 14 Sep 2019 08:52:55 +0000 (UTC) From: Juergen Gross To: xen-devel@lists.xenproject.org Date: Sat, 14 Sep 2019 10:52:08 +0200 Message-Id: <20190914085251.18816-5-jgross@suse.com> X-Mailer: git-send-email 2.16.4 In-Reply-To: <20190914085251.18816-1-jgross@suse.com> References: <20190914085251.18816-1-jgross@suse.com> Subject: [Xen-devel] [PATCH v3 04/47] xen/sched: introduce struct sched_resource 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 , Dario Faggioli , Julien Grall , 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" QWRkIGEgc2NoZWR1bGluZyBhYnN0cmFjdGlvbiBsYXllciBiZXR3ZWVuIHBoeXNpY2FsIHByb2Nl c3NvcnMgYW5kIHRoZQpzY2hlZHVsZXJzIGJ5IGludHJvZHVjaW5nIGEgc3RydWN0IHNjaGVkX3Jl c291cmNlLiBFYWNoIHNjaGVkdWxlciB1bml0CnJ1bm5pbmcgaXMgYWN0aXZlIG9uIHN1Y2ggYSBz Y2hlZHVsZXIgcmVzb3VyY2UuIEZvciB0aGUgdGltZSBiZWluZwp0aGVyZSBpcyBvbmUgc3RydWN0 IHNjaGVkX3Jlc291cmNlIHBlciBjcHUsIGJ1dCBpbiBmdXR1cmUgdGhlcmUgbWlnaHQKYmUgb25l IGZvciBlYWNoIGNvcmUgb3Igc29ja2V0IG9ubHkuCgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdy b3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClJldmlld2VkLWJ5OiBEYXJpbyBGYWdnaW9saSA8ZGZhZ2dp b2xpQHN1c2UuY29tPgotLS0KVjE6Ci0gYWRkIGFjY2Vzc29yIGZ1bmN0aW9ucwotIHVzZSBERUZJ TkVfUEVSX0NQVV9SRUFEX01PU1RMWSAoRGFyaW8gRmFnZ2lvbGkpClYzOgotIGRvbid0IHByZS1k ZWZpbmUgc3RydWN0IHNjaGVkX3Jlc291cmNlIGluIHNjaGVkLmggKEphbiBCZXVsaWNoKQotIHJl bmFtZSByZXMtPnByb2Nlc3NvciB0byByZXMtPm1hc3Rlcl9jcHUgKEphbiBCZXVsaWNoKQotLS0K IHhlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMgIHwgIDIgKysKIHhlbi9jb21tb24vc2NoZWRfY3Jl ZGl0Mi5jIHwgIDcgKysrKysrKwogeGVuL2NvbW1vbi9zY2hlZF9udWxsLmMgICAgfCAgMyArKysK IHhlbi9jb21tb24vc2NoZWRfcnQuYyAgICAgIHwgIDIgKysKIHhlbi9jb21tb24vc2NoZWR1bGUu YyAgICAgIHwgMTkgKysrKysrKysrKysrKysrKysrLQogeGVuL2luY2x1ZGUveGVuL3NjaGVkLWlm LmggfCAxOCArKysrKysrKysrKysrKysrKysKIHhlbi9pbmNsdWRlL3hlbi9zY2hlZC5oICAgIHwg IDEgKwogNyBmaWxlcyBjaGFuZ2VkLCA1MSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9zY2hlZF9jcmVkaXQuYyBiL3hlbi9jb21tb24vc2NoZWRf Y3JlZGl0LmMKaW5kZXggZjQzNzFkN2M1ZS4uMmJjN2ZhOTIyMCAxMDA2NDQKLS0tIGEveGVuL2Nv bW1vbi9zY2hlZF9jcmVkaXQuYworKysgYi94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdC5jCkBAIC0x MDI2LDYgKzEwMjYsNyBAQCBjc2NoZWRfdW5pdF9pbnNlcnQoY29uc3Qgc3RydWN0IHNjaGVkdWxl ciAqb3BzLCBzdHJ1Y3Qgc2NoZWRfdW5pdCAqdW5pdCkKICAgICBsb2NrID0gdmNwdV9zY2hlZHVs ZV9sb2NrX2lycSh2Yyk7CiAKICAgICB2Yy0+cHJvY2Vzc29yID0gY3NjaGVkX2NwdV9waWNrKG9w cywgdW5pdCk7CisgICAgdW5pdC0+cmVzID0gZ2V0X3NjaGVkX3Jlcyh2Yy0+cHJvY2Vzc29yKTsK IAogICAgIHNwaW5fdW5sb2NrX2lycShsb2NrKTsKIApAQCAtMTY2Miw2ICsxNjYzLDcgQEAgY3Nj aGVkX3J1bnFfc3RlYWwoaW50IHBlZXJfY3B1LCBpbnQgY3B1LCBpbnQgcHJpLCBpbnQgYmFsYW5j ZV9zdGVwKQogICAgICAgICAgICAgV0FSTl9PTih2Yy0+aXNfdXJnZW50KTsKICAgICAgICAgICAg IHJ1bnFfcmVtb3ZlKHNwZWVyKTsKICAgICAgICAgICAgIHZjLT5wcm9jZXNzb3IgPSBjcHU7Cisg ICAgICAgICAgICB2Yy0+c2NoZWRfdW5pdC0+cmVzID0gZ2V0X3NjaGVkX3JlcyhjcHUpOwogICAg ICAgICAgICAgLyoKICAgICAgICAgICAgICAqIHNwZWVyIHdpbGwgc3RhcnQgZXhlY3V0aW5nIGRp cmVjdGx5IG9uIGNwdSwgd2l0aG91dCBoYXZpbmcgdG8KICAgICAgICAgICAgICAqIGdvIHRocm91 Z2ggcnVucV9pbnNlcnQoKS4gU28gd2UgbXVzdCB1cGRhdGUgdGhlIHJ1bm5hYmxlIGNvdW50CmRp ZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYyBiL3hlbi9jb21tb24vc2NoZWRf Y3JlZGl0Mi5jCmluZGV4IDI4NTJhMjIwYzQuLjIwMGRlNjNiZWUgMTAwNjQ0Ci0tLSBhL3hlbi9j b21tb24vc2NoZWRfY3JlZGl0Mi5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jCkBA IC0yNTIwLDYgKzI1MjAsNyBAQCBzdGF0aWMgdm9pZCBtaWdyYXRlKGNvbnN0IHN0cnVjdCBzY2hl ZHVsZXIgKm9wcywKICAgICAgICAgICAgICAgICAgICAgJnRycWQtPmFjdGl2ZSk7CiAgICAgICAg IHN2Yy0+dmNwdS0+cHJvY2Vzc29yID0gY3B1bWFza19jeWNsZSh0cnFkLT5waWNrX2JpYXMsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcHVtYXNrX3NjcmF0 Y2hfY3B1KGNwdSkpOworICAgICAgICBzdmMtPnZjcHUtPnNjaGVkX3VuaXQtPnJlcyA9IGdldF9z Y2hlZF9yZXMoc3ZjLT52Y3B1LT5wcm9jZXNzb3IpOwogICAgICAgICB0cnFkLT5waWNrX2JpYXMg PSBzdmMtPnZjcHUtPnByb2Nlc3NvcjsKICAgICAgICAgQVNTRVJUKHN2Yy0+dmNwdS0+cHJvY2Vz c29yIDwgbnJfY3B1X2lkcyk7CiAKQEAgLTI3NzUsNiArMjc3Niw3IEBAIGNzY2hlZDJfdW5pdF9t aWdyYXRlKAogICAgICAgICB9CiAgICAgICAgIF9ydW5xX2RlYXNzaWduKHN2Yyk7CiAgICAgICAg IHZjLT5wcm9jZXNzb3IgPSBuZXdfY3B1OworICAgICAgICB1bml0LT5yZXMgPSBnZXRfc2NoZWRf cmVzKG5ld19jcHUpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0yNzk1LDcgKzI3OTcs MTAgQEAgY3NjaGVkMl91bml0X21pZ3JhdGUoCiAgICAgaWYgKCB0cnFkICE9IHN2Yy0+cnFkICkK ICAgICAgICAgbWlncmF0ZShvcHMsIHN2YywgdHJxZCwgbm93KTsKICAgICBlbHNlCisgICAgewog ICAgICAgICB2Yy0+cHJvY2Vzc29yID0gbmV3X2NwdTsKKyAgICAgICAgdW5pdC0+cmVzID0gZ2V0 X3NjaGVkX3JlcyhuZXdfY3B1KTsKKyAgICB9CiB9CiAKIHN0YXRpYyBpbnQKQEAgLTMxMjAsNiAr MzEyNSw3IEBAIGNzY2hlZDJfdW5pdF9pbnNlcnQoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3Bz LCBzdHJ1Y3Qgc2NoZWRfdW5pdCAqdW5pdCkKICAgICBsb2NrID0gdmNwdV9zY2hlZHVsZV9sb2Nr X2lycSh2Yyk7CiAKICAgICB2Yy0+cHJvY2Vzc29yID0gY3NjaGVkMl9jcHVfcGljayhvcHMsIHVu aXQpOworICAgIHVuaXQtPnJlcyA9IGdldF9zY2hlZF9yZXModmMtPnByb2Nlc3Nvcik7CiAKICAg ICBzcGluX3VubG9ja19pcnEobG9jayk7CiAKQEAgLTM1OTcsNiArMzYwMyw3IEBAIGNzY2hlZDJf c2NoZWR1bGUoCiAgICAgICAgIHsKICAgICAgICAgICAgIHNuZXh0LT5jcmVkaXQgKz0gQ1NDSEVE Ml9NSUdSQVRFX0NPTVBFTlNBVElPTjsKICAgICAgICAgICAgIHNuZXh0LT52Y3B1LT5wcm9jZXNz b3IgPSBjcHU7CisgICAgICAgICAgICBzbmV4dC0+dmNwdS0+c2NoZWRfdW5pdC0+cmVzID0gZ2V0 X3NjaGVkX3JlcyhjcHUpOwogICAgICAgICAgICAgU0NIRURfU1RBVF9DUkFOSyhtaWdyYXRlZCk7 CiAgICAgICAgICAgICByZXQubWlncmF0ZWQgPSAxOwogICAgICAgICB9CmRpZmYgLS1naXQgYS94 ZW4vY29tbW9uL3NjaGVkX251bGwuYyBiL3hlbi9jb21tb24vc2NoZWRfbnVsbC5jCmluZGV4IGJi OWZlZDhhYWIuLmMzMGZlMmU0NDMgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vc2NoZWRfbnVsbC5j CisrKyBiL3hlbi9jb21tb24vc2NoZWRfbnVsbC5jCkBAIC0zMzcsNiArMzM3LDcgQEAgc3RhdGlj IHZvaWQgdmNwdV9hc3NpZ24oc3RydWN0IG51bGxfcHJpdmF0ZSAqcHJ2LCBzdHJ1Y3QgdmNwdSAq diwKIAogICAgIHBlcl9jcHUobnBjLCBjcHUpLnZjcHUgPSB2OwogICAgIHYtPnByb2Nlc3NvciA9 IGNwdTsKKyAgICB2LT5zY2hlZF91bml0LT5yZXMgPSBnZXRfc2NoZWRfcmVzKGNwdSk7CiAgICAg Y3B1bWFza19jbGVhcl9jcHUoY3B1LCAmcHJ2LT5jcHVzX2ZyZWUpOwogCiAgICAgZHByaW50ayhY RU5MT0dfR19JTkZPLCAiJWQgPC0tICVwdlxuIiwgY3B1LCB2KTsKQEAgLTQ1Nyw2ICs0NTgsNyBA QCBzdGF0aWMgdm9pZCBudWxsX3VuaXRfaW5zZXJ0KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9w cywKIAogIHJldHJ5OgogICAgIGNwdSA9IHYtPnByb2Nlc3NvciA9IHBpY2tfY3B1KHBydiwgdik7 CisgICAgdW5pdC0+cmVzID0gZ2V0X3NjaGVkX3JlcyhjcHUpOwogCiAgICAgc3Bpbl91bmxvY2so bG9jayk7CiAKQEAgLTc0OSw2ICs3NTEsNyBAQCBzdGF0aWMgdm9pZCBudWxsX3VuaXRfbWlncmF0 ZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsCiAgICAgICovCiAgb3V0OgogICAgIHYtPnBy b2Nlc3NvciA9IG5ld19jcHU7CisgICAgdW5pdC0+cmVzID0gZ2V0X3NjaGVkX3JlcyhuZXdfY3B1 KTsKIH0KIAogI2lmbmRlZiBOREVCVUcKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vc2NoZWRfcnQu YyBiL3hlbi9jb21tb24vc2NoZWRfcnQuYwppbmRleCBkZDUxNjEzODQ1Li4zYmE3NmYxYzRhIDEw MDY0NAotLS0gYS94ZW4vY29tbW9uL3NjaGVkX3J0LmMKKysrIGIveGVuL2NvbW1vbi9zY2hlZF9y dC5jCkBAIC04OTMsNiArODkzLDcgQEAgcnRfdW5pdF9pbnNlcnQoY29uc3Qgc3RydWN0IHNjaGVk dWxlciAqb3BzLCBzdHJ1Y3Qgc2NoZWRfdW5pdCAqdW5pdCkKIAogICAgIC8qIFRoaXMgaXMgc2Fm ZSBiZWNhdXNlIHZjIGlzbid0IHlldCBiZWluZyBzY2hlZHVsZWQgKi8KICAgICB2Yy0+cHJvY2Vz c29yID0gcnRfY3B1X3BpY2sob3BzLCB1bml0KTsKKyAgICB1bml0LT5yZXMgPSBnZXRfc2NoZWRf cmVzKHZjLT5wcm9jZXNzb3IpOwogCiAgICAgbG9jayA9IHZjcHVfc2NoZWR1bGVfbG9ja19pcnEo dmMpOwogCkBAIC0xMTIzLDYgKzExMjQsNyBAQCBydF9zY2hlZHVsZShjb25zdCBzdHJ1Y3Qgc2No ZWR1bGVyICpvcHMsIHNfdGltZV90IG5vdywgYm9vbF90IHRhc2tsZXRfd29ya19zY2hlZAogICAg ICAgICBpZiAoIHNuZXh0LT52Y3B1LT5wcm9jZXNzb3IgIT0gY3B1ICkKICAgICAgICAgewogICAg ICAgICAgICAgc25leHQtPnZjcHUtPnByb2Nlc3NvciA9IGNwdTsKKyAgICAgICAgICAgIHNuZXh0 LT52Y3B1LT5zY2hlZF91bml0LT5yZXMgPSBnZXRfc2NoZWRfcmVzKGNwdSk7CiAgICAgICAgICAg ICByZXQubWlncmF0ZWQgPSAxOwogICAgICAgICB9CiAgICAgICAgIHJldC50aW1lID0gc25leHQt PmN1cl9idWRnZXQ7IC8qIGludm9rZSB0aGUgc2NoZWR1bGVyIG5leHQgdGltZSAqLwpkaWZmIC0t Z2l0IGEveGVuL2NvbW1vbi9zY2hlZHVsZS5jIGIveGVuL2NvbW1vbi9zY2hlZHVsZS5jCmluZGV4 IDYxNGRmOWQyMjYuLjJiZjc5NjY0NzYgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vc2NoZWR1bGUu YworKysgYi94ZW4vY29tbW9uL3NjaGVkdWxlLmMKQEAgLTY3LDYgKzY3LDcgQEAgc3RhdGljIHZv aWQgcG9sbF90aW1lcl9mbih2b2lkICpkYXRhKTsKIC8qIFRoaXMgaXMgZ2xvYmFsIGZvciBub3cg c28gdGhhdCBwcml2YXRlIGltcGxlbWVudGF0aW9ucyBjYW4gcmVhY2ggaXQgKi8KIERFRklORV9Q RVJfQ1BVKHN0cnVjdCBzY2hlZHVsZV9kYXRhLCBzY2hlZHVsZV9kYXRhKTsKIERFRklORV9QRVJf Q1BVKHN0cnVjdCBzY2hlZHVsZXIgKiwgc2NoZWR1bGVyKTsKK0RFRklORV9QRVJfQ1BVX1JFQURf TU9TVExZKHN0cnVjdCBzY2hlZF9yZXNvdXJjZSAqLCBzY2hlZF9yZXMpOwogCiAvKiBTY3JhdGNo IHNwYWNlIGZvciBjcHVtYXNrcy4gKi8KIERFRklORV9QRVJfQ1BVKGNwdW1hc2tfdCwgY3B1bWFz a19zY3JhdGNoKTsKQEAgLTg5LDcgKzkwLDcgQEAgc2NoZWRfaWRsZV9zd2l0Y2hfc2NoZWQoc3Ry dWN0IHNjaGVkdWxlciAqbmV3X29wcywgdW5zaWduZWQgaW50IGNwdSwKIHN0YXRpYyBpbnQKIHNj aGVkX2lkbGVfY3B1X3BpY2soY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBjb25zdCBzdHJ1 Y3Qgc2NoZWRfdW5pdCAqdW5pdCkKIHsKLSAgICByZXR1cm4gdW5pdC0+dmNwdV9saXN0LT5wcm9j ZXNzb3I7CisgICAgcmV0dXJuIHVuaXQtPnJlcy0+bWFzdGVyX2NwdTsKIH0KIAogc3RhdGljIHZv aWQgKgpAQCAtMzYzLDYgKzM2NCw3IEBAIGludCBzY2hlZF9pbml0X3ZjcHUoc3RydWN0IHZjcHUg KnYsIHVuc2lnbmVkIGludCBwcm9jZXNzb3IpCiAgICAgaWYgKCAodW5pdCA9IHNjaGVkX2FsbG9j X3VuaXQodikpID09IE5VTEwgKQogICAgICAgICByZXR1cm4gMTsKIAorICAgIHVuaXQtPnJlcyA9 IGdldF9zY2hlZF9yZXMocHJvY2Vzc29yKTsKICAgICAvKiBJbml0aWFsaXNlIHRoZSBwZXItdmNw dSB0aW1lcnMuICovCiAgICAgc3Bpbl9sb2NrX2luaXQoJnYtPnBlcmlvZGljX3RpbWVyX2xvY2sp OwogICAgIGluaXRfdGltZXIoJnYtPnBlcmlvZGljX3RpbWVyLCB2Y3B1X3BlcmlvZGljX3RpbWVy X2ZuLApAQCAtNDc4LDYgKzQ4MCw3IEBAIGludCBzY2hlZF9tb3ZlX2RvbWFpbihzdHJ1Y3QgZG9t YWluICpkLCBzdHJ1Y3QgY3B1cG9vbCAqYykKICAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYs ICZjcHVtYXNrX2FsbCwgJmNwdW1hc2tfYWxsKTsKIAogICAgICAgICB2LT5wcm9jZXNzb3IgPSBu ZXdfcDsKKyAgICAgICAgdi0+c2NoZWRfdW5pdC0+cmVzID0gZ2V0X3NjaGVkX3JlcyhuZXdfcCk7 CiAgICAgICAgIC8qCiAgICAgICAgICAqIFdpdGggdi0+cHJvY2Vzc29yIG1vZGlmaWVkIHdlIG11 c3Qgbm90CiAgICAgICAgICAqIC0gbWFrZSBhbnkgZnVydGhlciBjaGFuZ2VzIGFzc3VtaW5nIHdl IGhvbGQgdGhlIHNjaGVkdWxlciBsb2NrLApAQCAtODMwLDEyICs4MzMsMTQgQEAgdm9pZCByZXN0 b3JlX3ZjcHVfYWZmaW5pdHkoc3RydWN0IGRvbWFpbiAqZCkKICAgICAgICAgfQogCiAgICAgICAg IHYtPnByb2Nlc3NvciA9IGNwdW1hc2tfYW55KGNwdW1hc2tfc2NyYXRjaF9jcHUoY3B1KSk7Cisg ICAgICAgIHYtPnNjaGVkX3VuaXQtPnJlcyA9IGdldF9zY2hlZF9yZXModi0+cHJvY2Vzc29yKTsK IAogICAgICAgICBzcGluX3VubG9ja19pcnEobG9jayk7CiAKICAgICAgICAgLyogdi0+cHJvY2Vz c29yIG1pZ2h0IGhhdmUgY2hhbmdlZCwgc28gcmVhY3F1aXJlIHRoZSBsb2NrLiAqLwogICAgICAg ICBsb2NrID0gdmNwdV9zY2hlZHVsZV9sb2NrX2lycSh2KTsKICAgICAgICAgdi0+cHJvY2Vzc29y ID0gc2NoZWRfcGlja19jcHUodmNwdV9zY2hlZHVsZXIodiksIHYtPnNjaGVkX3VuaXQpOworICAg ICAgICB2LT5zY2hlZF91bml0LT5yZXMgPSBnZXRfc2NoZWRfcmVzKHYtPnByb2Nlc3Nvcik7CiAg ICAgICAgIHNwaW5fdW5sb2NrX2lycShsb2NrKTsKIAogICAgICAgICBpZiAoIG9sZF9jcHUgIT0g di0+cHJvY2Vzc29yICkKQEAgLTE3MDksNiArMTcxNCwxMyBAQCBzdGF0aWMgdm9pZCBwb2xsX3Rp bWVyX2ZuKHZvaWQgKmRhdGEpCiBzdGF0aWMgaW50IGNwdV9zY2hlZHVsZV91cCh1bnNpZ25lZCBp bnQgY3B1KQogewogICAgIHN0cnVjdCBzY2hlZHVsZV9kYXRhICpzZCA9ICZwZXJfY3B1KHNjaGVk dWxlX2RhdGEsIGNwdSk7CisgICAgc3RydWN0IHNjaGVkX3Jlc291cmNlICpyZXM7CisKKyAgICBy ZXMgPSB4emFsbG9jKHN0cnVjdCBzY2hlZF9yZXNvdXJjZSk7CisgICAgaWYgKCByZXMgPT0gTlVM TCApCisgICAgICAgIHJldHVybiAtRU5PTUVNOworICAgIHJlcy0+bWFzdGVyX2NwdSA9IGNwdTsK KyAgICBzZXRfc2NoZWRfcmVzKGNwdSwgcmVzKTsKIAogICAgIHBlcl9jcHUoc2NoZWR1bGVyLCBj cHUpID0gJnNjaGVkX2lkbGVfb3BzOwogICAgIHNwaW5fbG9ja19pbml0KCZzZC0+X2xvY2spOwpA QCAtMTcyMiw2ICsxNzM0LDggQEAgc3RhdGljIGludCBjcHVfc2NoZWR1bGVfdXAodW5zaWduZWQg aW50IGNwdSkKIAogICAgIGlmICggaWRsZV92Y3B1W2NwdV0gPT0gTlVMTCApCiAgICAgICAgIHZj cHVfY3JlYXRlKGlkbGVfdmNwdVswXS0+ZG9tYWluLCBjcHUsIGNwdSk7CisgICAgZWxzZQorICAg ICAgICBpZGxlX3ZjcHVbY3B1XS0+c2NoZWRfdW5pdC0+cmVzID0gcmVzOwogCiAgICAgaWYgKCBp ZGxlX3ZjcHVbY3B1XSA9PSBOVUxMICkKICAgICAgICAgcmV0dXJuIC1FTk9NRU07CkBAIC0xNzQ0 LDYgKzE3NTgsOSBAQCBzdGF0aWMgdm9pZCBjcHVfc2NoZWR1bGVfZG93bih1bnNpZ25lZCBpbnQg Y3B1KQogICAgIHN0cnVjdCBzY2hlZHVsZV9kYXRhICpzZCA9ICZwZXJfY3B1KHNjaGVkdWxlX2Rh dGEsIGNwdSk7CiAKICAgICBraWxsX3RpbWVyKCZzZC0+c190aW1lcik7CisKKyAgICBzZXRfc2No ZWRfcmVzKGNwdSwgTlVMTCk7CisgICAgeGZyZWUoc2QpOwogfQogCiB2b2lkIHNjaGVkX3JtX2Nw dSh1bnNpZ25lZCBpbnQgY3B1KQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3NjaGVkLWlm LmggYi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQtaWYuaAppbmRleCAwYWY4OWZiZDAyLi5iOWUyOTIw YzY2IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vc2NoZWQtaWYuaAorKysgYi94ZW4vaW5j bHVkZS94ZW4vc2NoZWQtaWYuaApAQCAtNDQsOSArNDQsMjQgQEAgc3RydWN0IHNjaGVkdWxlX2Rh dGEgewogCiAjZGVmaW5lIGN1cnJfb25fY3B1KGMpICAgIChwZXJfY3B1KHNjaGVkdWxlX2RhdGEs IGMpLmN1cnIpCiAKK3N0cnVjdCBzY2hlZF9yZXNvdXJjZSB7CisgICAgdW5zaWduZWQgaW50IG1h c3Rlcl9jcHU7ICAvKiBDcHUgd2l0aCBsb3dlc3QgaWQgaW4gc2NoZWR1bGluZyByZXNvdXJjZS4g Ki8KK307CisKIERFQ0xBUkVfUEVSX0NQVShzdHJ1Y3Qgc2NoZWR1bGVfZGF0YSwgc2NoZWR1bGVf ZGF0YSk7CiBERUNMQVJFX1BFUl9DUFUoc3RydWN0IHNjaGVkdWxlciAqLCBzY2hlZHVsZXIpOwog REVDTEFSRV9QRVJfQ1BVKHN0cnVjdCBjcHVwb29sICosIGNwdXBvb2wpOworREVDTEFSRV9QRVJf Q1BVKHN0cnVjdCBzY2hlZF9yZXNvdXJjZSAqLCBzY2hlZF9yZXMpOworCitzdGF0aWMgaW5saW5l IHN0cnVjdCBzY2hlZF9yZXNvdXJjZSAqZ2V0X3NjaGVkX3Jlcyh1bnNpZ25lZCBpbnQgY3B1KQor eworICAgIHJldHVybiBwZXJfY3B1KHNjaGVkX3JlcywgY3B1KTsKK30KKworc3RhdGljIGlubGlu ZSB2b2lkIHNldF9zY2hlZF9yZXModW5zaWduZWQgaW50IGNwdSwgc3RydWN0IHNjaGVkX3Jlc291 cmNlICpyZXMpCit7CisgICAgcGVyX2NwdShzY2hlZF9yZXMsIGNwdSkgPSByZXM7Cit9CiAKIC8q CiAgKiBTY3JhdGNoIHNwYWNlLCBmb3IgYXZvaWRpbmcgaGF2aW5nIHRvbyBtYW55IGNwdW1hc2tf dCBvbiB0aGUgc3RhY2suCkBAIC0zMzQsNyArMzQ5LDEwIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBz Y2hlZF9taWdyYXRlKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKnMsCiAgICAgaWYgKCBzLT5taWdy YXRlICkKICAgICAgICAgcy0+bWlncmF0ZShzLCB1bml0LCBjcHUpOwogICAgIGVsc2UKKyAgICB7 CiAgICAgICAgIHVuaXQtPnZjcHVfbGlzdC0+cHJvY2Vzc29yID0gY3B1OworICAgICAgICB1bml0 LT5yZXMgPSBnZXRfc2NoZWRfcmVzKGNwdSk7CisgICAgfQogfQogCiBzdGF0aWMgaW5saW5lIGlu dCBzY2hlZF9waWNrX2NwdShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpzLApkaWZmIC0tZ2l0IGEv eGVuL2luY2x1ZGUveGVuL3NjaGVkLmggYi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaAppbmRleCA4 OTAzODMzN2I0Li45OTllNDNlOGNjIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vc2NoZWQu aAorKysgYi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaApAQCAtMjc4LDYgKzI3OCw3IEBAIHN0cnVj dCBzY2hlZF91bml0IHsKICAgICBzdHJ1Y3QgdmNwdSAgICAgICAgICAgKnZjcHVfbGlzdDsKICAg ICB2b2lkICAgICAgICAgICAgICAgICAgKnByaXY7ICAgICAgLyogc2NoZWR1bGVyIHByaXZhdGUg ZGF0YSAqLwogICAgIHN0cnVjdCBzY2hlZF91bml0ICAgICAqbmV4dF9pbl9saXN0OworICAgIHN0 cnVjdCBzY2hlZF9yZXNvdXJjZSAqcmVzOwogICAgIHVuc2lnbmVkIGludCAgICAgICAgICAgdW5p dF9pZDsKIH07CiAKLS0gCjIuMTYuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m by94ZW4tZGV2ZWw=