From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Dunlap Subject: Re: [PATCH RESEND 1/4] xen: sched: introduce 'adjust_affinity' hook. Date: Wed, 21 Mar 2018 15:24:57 +0000 Message-ID: <60dfdba5-aeb8-2864-2c01-d7e68ca803ed@citrix.com> References: <152113809162.10025.17478920051714635122.stgit@Palanthas.fritz.box> <152113893521.10025.13747386307686765655.stgit@Palanthas.fritz.box> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1eyfhv-0003i5-Fx for xen-devel@lists.xenproject.org; Wed, 21 Mar 2018 15:31:19 +0000 In-Reply-To: <152113893521.10025.13747386307686765655.stgit@Palanthas.fritz.box> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Dario Faggioli , xen-devel@lists.xenproject.org Cc: Dario Faggioli , Anshul Makkar List-Id: xen-devel@lists.xenproject.org T24gMDMvMTUvMjAxOCAwNjozNSBQTSwgRGFyaW8gRmFnZ2lvbGkgd3JvdGU6Cj4gRnJvbTogRGFy aW8gRmFnZ2lvbGkgPHJhaXN0bGluQGxpbnV4Lml0Pgo+IAo+IEZvciBub3csIGp1c3QgYXMgYSB3 YXkgdG8gZ2l2ZSBhIHNjaGVkdWxlciBhbiAiaGVhZHMgdXAiLAo+IGFib3V0IHRoZSBmYWN0IHRo YXQgdGhlIGFmZmluaXR5IGNoYW5nZWQuCj4gCj4gVGhpcyBlbmFibGVzIHNvbWUgb3B0aW1pemF0 aW9ucywgc3VjaCBhcyBwcmUtY29tcHV0aW5nCj4gYW5kIHN0b3JpbmcgKGUuZy4sIGluIGZsYWdz KSBmYWN0cyBsaWtlIGEgdmNwdSBiZWluZwo+IGV4Y2x1c2l2ZWx5IHBpbm5lZCB0byBhIHBjcHUs IG9yIGhhdmluZyBvciBub3QgYQo+IHNvZnQgYWZmaW5pdHkuIEkuZS4sIGNvbmRpdGlvbnMgdGhh dCwgZGVzcGl0ZSB0aGUgZmFjdAo+IHRoYXQgdGhleSByYXJlbHkgY2hhbmdlLCBhcmUgcmlnaHQg bm93IGNoZWNrZWQgdmVyeQo+IGZyZXF1ZW50bHksIGV2ZW4gaW4gaG90IHBhdGhzLgo+IAo+IE5v dGUgdGhhdCwgYXMgd2UgZXhwZWN0IG1hbnkgc2NoZWR1bGVyIHNwZWNpZmljCj4gaW1wbGVtZW50 YXRpb25zIG9mIHRoZSBhZGp1c3RfYWZmaW5pdHkgaG9vayB0byBkbwo+IHNvbWV0aGluZyB3aXRo IHRoZSBwZXItc2NoZWR1bGVyIHZDUFUgcHJpdmF0ZSBkYXRhLAo+IHRoaXMgY29tbWl0IG1vdmVz IHRoZSBjYWxscyB0byBzY2hlZF9zZXRfYWZmaW5pdHkoKQo+IGFmdGVyIHRoYXQgaXMgYWxsb2Nh dGVkIChpbiBzY2hlZF9pbml0X3ZjcHUoKSkuCj4gCj4gTm90ZSBhbHNvIHRoYXQgdGhpcywgaW4g ZnV0dXJlLCBtYXkgdHVybiBvdXQgYXMgYSB1c2VmdWwKPiBtZWFuIGZvciwgZS5nLiwgaGF2aW5n IHRoZSBzY2hlZHVsZXJzIHZldCwgYWNrIG9yIG5hY2sKPiB0aGUgY2hhbmdlcyB0aGVtc2VsdmVz Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IERhcmlvIEZhZ2dpb2xpIDxyYWlzdGxpbkBsaW51eC5pdD4K ClJldmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNpdHJpeC5jb20+CgpB cyBJIHNhaWQsIEkgY2FuIGNoYW5nZSBhbGwgdGhlc2Ugb24gY2hlY2staW4uCgogLUdlb3JnZQoK PiAtLS0KPiBDYzogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjaXRyaXguY29tPgo+IENj OiBBbnNodWwgTWFra2FyIDxhbnNodWxtYWtrYXJAZ21haWwuY29tPgo+IC0tLQo+IENoYW5nZXMg ZnJvbSBsYXN0IHBvc3Rpbmc6Cj4gLSByZWJhc2VkIG9uIHN0YWdpbmcuCj4gCj4gQ2hhbmdlcyBm cm9tIHYyOgo+IC0gZml4IHNjaGVkX3NldF9hZmZpbml0eSgpIG5vdCB0byB1c2UgYWx3YXlzIGhh cmRfYWZmaW5pdHk7Cj4gLSBtb3ZlIGNhbGxzIHRvIHNjaGVkX3NldF9hZmZpbml0eSgpIGJlbG93 IHBlci1zY2hlZHVsZXIgdkNQVSBkYXRhIGFsbG9jYXRpb24uCj4gLS0tCj4gIHhlbi9hcmNoL3g4 Ni9kb20wX2J1aWxkLmMgIHwgICAgNyArKy0tCj4gIHhlbi9jb21tb24vc2NoZWR1bGUuYyAgICAg IHwgICA3NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQo+ICB4 ZW4vaW5jbHVkZS94ZW4vc2NoZWQtaWYuaCB8ICAgIDMgKysKPiAgeGVuL2luY2x1ZGUveGVuL3Nj aGVkLmggICAgfCAgICAzICsrCj4gIDQgZmlsZXMgY2hhbmdlZCwgNjMgaW5zZXJ0aW9ucygrKSwg MjUgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9kb20wX2J1aWxk LmMgYi94ZW4vYXJjaC94ODYvZG9tMF9idWlsZC5jCj4gaW5kZXggNTU1NjYwYjg1My4uYjc0NDc5 MWMzOCAxMDA2NDQKPiAtLS0gYS94ZW4vYXJjaC94ODYvZG9tMF9idWlsZC5jCj4gKysrIGIveGVu L2FyY2gveDg2L2RvbTBfYnVpbGQuYwo+IEBAIC0xNDAsMTQgKzE0MCwxMyBAQCBzdHJ1Y3QgdmNw dSAqX19pbml0IGRvbTBfc2V0dXBfdmNwdShzdHJ1Y3QgZG9tYWluICpkLAo+ICAgICAgewo+ICAg ICAgICAgIGlmICggcHZfc2hpbSApCj4gICAgICAgICAgewo+IC0gICAgICAgICAgICBfX2NwdW1h c2tfc2V0X2NwdSh2Y3B1X2lkLCB2LT5jcHVfaGFyZF9hZmZpbml0eSk7Cj4gLSAgICAgICAgICAg IF9fY3B1bWFza19zZXRfY3B1KHZjcHVfaWQsIHYtPmNwdV9zb2Z0X2FmZmluaXR5KTsKPiArICAg ICAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYsIGNwdW1hc2tfb2YodmNwdV9pZCksIGNwdW1h c2tfb2YodmNwdV9pZCkpOwo+ICAgICAgICAgIH0KPiAgICAgICAgICBlbHNlCj4gICAgICAgICAg ewo+ICAgICAgICAgICAgICBpZiAoICFkLT5pc19waW5uZWQgJiYgIWRvbTBfYWZmaW5pdHlfcmVs YXhlZCApCj4gLSAgICAgICAgICAgICAgICBjcHVtYXNrX2NvcHkodi0+Y3B1X2hhcmRfYWZmaW5p dHksICZkb20wX2NwdXMpOwo+IC0gICAgICAgICAgICBjcHVtYXNrX2NvcHkodi0+Y3B1X3NvZnRf YWZmaW5pdHksICZkb20wX2NwdXMpOwo+ICsgICAgICAgICAgICAgICAgc2NoZWRfc2V0X2FmZmlu aXR5KHYsICZkb20wX2NwdXMsIE5VTEwpOwo+ICsgICAgICAgICAgICBzY2hlZF9zZXRfYWZmaW5p dHkodiwgTlVMTCwgJmRvbTBfY3B1cyk7Cj4gICAgICAgICAgfQo+ICAgICAgfQo+ICAKPiBkaWZm IC0tZ2l0IGEveGVuL2NvbW1vbi9zY2hlZHVsZS5jIGIveGVuL2NvbW1vbi9zY2hlZHVsZS5jCj4g aW5kZXggNjQ1MjRmNGRhNy4uZjQzZDk0Mzc2NSAxMDA2NDQKPiAtLS0gYS94ZW4vY29tbW9uL3Nj aGVkdWxlLmMKPiArKysgYi94ZW4vY29tbW9uL3NjaGVkdWxlLmMKPiBAQCAtMjU2LDE4ICsyNTYs MTEgQEAgc3RhdGljIHZvaWQgc2NoZWRfc3Bpbl91bmxvY2tfZG91YmxlKHNwaW5sb2NrX3QgKmxv Y2sxLCBzcGlubG9ja190ICpsb2NrMiwKPiAgaW50IHNjaGVkX2luaXRfdmNwdShzdHJ1Y3QgdmNw dSAqdiwgdW5zaWduZWQgaW50IHByb2Nlc3NvcikgCj4gIHsKPiAgICAgIHN0cnVjdCBkb21haW4g KmQgPSB2LT5kb21haW47Cj4gKyAgICBjcHVtYXNrX3QgYWxsY3B1czsKPiAgCj4gLSAgICAvKgo+ IC0gICAgICogSW5pdGlhbGl6ZSBwcm9jZXNzb3IgYW5kIGFmZmluaXR5IHNldHRpbmdzLiBUaGUg aWRsZXIsIGFuZCBwb3RlbnRpYWxseQo+IC0gICAgICogZG9tYWluLTAgVkNQVXMsIGFyZSBwaW5u ZWQgb250byB0aGVpciByZXNwZWN0aXZlIHBoeXNpY2FsIENQVXMuCj4gLSAgICAgKi8KPiAtICAg IHYtPnByb2Nlc3NvciA9IHByb2Nlc3NvcjsKPiAtICAgIGlmICggaXNfaWRsZV9kb21haW4oZCkg fHwgZC0+aXNfcGlubmVkICkKPiAtICAgICAgICBjcHVtYXNrX2NvcHkodi0+Y3B1X2hhcmRfYWZm aW5pdHksIGNwdW1hc2tfb2YocHJvY2Vzc29yKSk7Cj4gLSAgICBlbHNlCj4gLSAgICAgICAgY3B1 bWFza19zZXRhbGwodi0+Y3B1X2hhcmRfYWZmaW5pdHkpOwo+ICsgICAgY3B1bWFza19zZXRhbGwo JmFsbGNwdXMpOwo+ICAKPiAtICAgIGNwdW1hc2tfc2V0YWxsKHYtPmNwdV9zb2Z0X2FmZmluaXR5 KTsKPiArICAgIHYtPnByb2Nlc3NvciA9IHByb2Nlc3NvcjsKPiAgCj4gICAgICAvKiBJbml0aWFs aXNlIHRoZSBwZXItdmNwdSB0aW1lcnMuICovCj4gICAgICBpbml0X3RpbWVyKCZ2LT5wZXJpb2Rp Y190aW1lciwgdmNwdV9wZXJpb2RpY190aW1lcl9mbiwKPiBAQCAtMjgyLDYgKzI3NSwxNSBAQCBp bnQgc2NoZWRfaW5pdF92Y3B1KHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBpbnQgcHJvY2Vzc29y KQo+ICAgICAgaWYgKCB2LT5zY2hlZF9wcml2ID09IE5VTEwgKQo+ICAgICAgICAgIHJldHVybiAx Owo+ICAKPiArICAgIC8qCj4gKyAgICAgKiBJbml0aWFsaXplIGFmZmluaXR5IHNldHRpbmdzLiBU aGUgaWRsZXIsIGFuZCBwb3RlbnRpYWxseQo+ICsgICAgICogZG9tYWluLTAgVkNQVXMsIGFyZSBw aW5uZWQgb250byB0aGVpciByZXNwZWN0aXZlIHBoeXNpY2FsIENQVXMuCj4gKyAgICAgKi8KPiAr ICAgIGlmICggaXNfaWRsZV9kb21haW4oZCkgfHwgZC0+aXNfcGlubmVkICkKPiArICAgICAgICBz Y2hlZF9zZXRfYWZmaW5pdHkodiwgY3B1bWFza19vZihwcm9jZXNzb3IpLCAmYWxsY3B1cyk7Cj4g KyAgICBlbHNlCj4gKyAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYsICZhbGxjcHVzLCAmYWxs Y3B1cyk7Cj4gKwo+ICAgICAgLyogSWRsZSBWQ1BVcyBhcmUgc2NoZWR1bGVkIGltbWVkaWF0ZWx5 LCBzbyBkb24ndCBwdXQgdGhlbSBpbiBydW5xdWV1ZS4gKi8KPiAgICAgIGlmICggaXNfaWRsZV9k b21haW4oZCkgKQo+ICAgICAgewo+IEBAIC0zNTksNiArMzYxLDcgQEAgaW50IHNjaGVkX21vdmVf ZG9tYWluKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBjcHVwb29sICpjKQo+ICAgICAgZm9yX2Vh Y2hfdmNwdSAoIGQsIHYgKQo+ICAgICAgewo+ICAgICAgICAgIHNwaW5sb2NrX3QgKmxvY2s7Cj4g KyAgICAgICAgY3B1bWFza190IGFsbGNwdXM7Cj4gIAo+ICAgICAgICAgIHZjcHVkYXRhID0gdi0+ c2NoZWRfcHJpdjsKPiAgCj4gQEAgLTM2NiwxMCArMzY5LDEyIEBAIGludCBzY2hlZF9tb3ZlX2Rv bWFpbihzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgY3B1cG9vbCAqYykKPiAgICAgICAgICBtaWdy YXRlX3RpbWVyKCZ2LT5zaW5nbGVzaG90X3RpbWVyLCBuZXdfcCk7Cj4gICAgICAgICAgbWlncmF0 ZV90aW1lcigmdi0+cG9sbF90aW1lciwgbmV3X3ApOwo+ICAKPiAtICAgICAgICBjcHVtYXNrX3Nl dGFsbCh2LT5jcHVfaGFyZF9hZmZpbml0eSk7Cj4gLSAgICAgICAgY3B1bWFza19zZXRhbGwodi0+ Y3B1X3NvZnRfYWZmaW5pdHkpOwo+ICsgICAgICAgIGNwdW1hc2tfc2V0YWxsKCZhbGxjcHVzKTsK PiAgCj4gICAgICAgICAgbG9jayA9IHZjcHVfc2NoZWR1bGVfbG9ja19pcnEodik7Cj4gKwo+ICsg ICAgICAgIHNjaGVkX3NldF9hZmZpbml0eSh2LCAmYWxsY3B1cywgJmFsbGNwdXMpOwo+ICsKPiAg ICAgICAgICB2LT5wcm9jZXNzb3IgPSBuZXdfcDsKPiAgICAgICAgICAvKgo+ICAgICAgICAgICAq IFdpdGggdi0+cHJvY2Vzc29yIG1vZGlmaWVkIHdlIG11c3Qgbm90Cj4gQEAgLTY5NCw3ICs2OTks NyBAQCB2b2lkIHJlc3RvcmVfdmNwdV9hZmZpbml0eShzdHJ1Y3QgZG9tYWluICpkKQo+ICAKPiAg ICAgICAgICBpZiAoIHYtPmFmZmluaXR5X2Jyb2tlbiApCj4gICAgICAgICAgewo+IC0gICAgICAg ICAgICBjcHVtYXNrX2NvcHkodi0+Y3B1X2hhcmRfYWZmaW5pdHksIHYtPmNwdV9oYXJkX2FmZmlu aXR5X3NhdmVkKTsKPiArICAgICAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYsIHYtPmNwdV9o YXJkX2FmZmluaXR5X3NhdmVkLCBOVUxMKTsKPiAgICAgICAgICAgICAgdi0+YWZmaW5pdHlfYnJv a2VuID0gMDsKPiAgCj4gICAgICAgICAgfQo+IEBAIC03NTgsNiArNzYzLDggQEAgaW50IGNwdV9k aXNhYmxlX3NjaGVkdWxlcih1bnNpZ25lZCBpbnQgY3B1KQo+ICAgICAgICAgICAgICBpZiAoIGNw dW1hc2tfZW1wdHkoJm9ubGluZV9hZmZpbml0eSkgJiYKPiAgICAgICAgICAgICAgICAgICBjcHVt YXNrX3Rlc3RfY3B1KGNwdSwgdi0+Y3B1X2hhcmRfYWZmaW5pdHkpICkKPiAgICAgICAgICAgICAg ewo+ICsgICAgICAgICAgICAgICAgY3B1bWFza190IGFsbGNwdXM7Cj4gKwo+ICAgICAgICAgICAg ICAgICAgaWYgKCB2LT5hZmZpbml0eV9icm9rZW4gKQo+ICAgICAgICAgICAgICAgICAgewo+ICAg ICAgICAgICAgICAgICAgICAgIC8qIFRoZSB2Y3B1IGlzIHRlbXBvcmFyaWx5IHBpbm5lZCwgY2Fu J3QgbW92ZSBpdC4gKi8KPiBAQCAtNzc1LDcgKzc4Miw4IEBAIGludCBjcHVfZGlzYWJsZV9zY2hl ZHVsZXIodW5zaWduZWQgaW50IGNwdSkKPiAgICAgICAgICAgICAgICAgIGVsc2UKPiAgICAgICAg ICAgICAgICAgICAgICBwcmludGsoWEVOTE9HX0RFQlVHICJCcmVha2luZyBhZmZpbml0eSBmb3Ig JXB2XG4iLCB2KTsKPiAgCj4gLSAgICAgICAgICAgICAgICBjcHVtYXNrX3NldGFsbCh2LT5jcHVf aGFyZF9hZmZpbml0eSk7Cj4gKyAgICAgICAgICAgICAgICBjcHVtYXNrX3NldGFsbCgmYWxsY3B1 cyk7Cj4gKyAgICAgICAgICAgICAgICBzY2hlZF9zZXRfYWZmaW5pdHkodiwgJmFsbGNwdXMsIE5V TEwpOwo+ICAgICAgICAgICAgICB9Cj4gIAo+ICAgICAgICAgICAgICBpZiAoIHYtPnByb2Nlc3Nv ciAhPSBjcHUgKQo+IEBAIC04NDUsOCArODUzLDI2IEBAIGludCBjcHVfZGlzYWJsZV9zY2hlZHVs ZXIodW5zaWduZWQgaW50IGNwdSkKPiAgICAgIHJldHVybiByZXQ7Cj4gIH0KPiAgCj4gKy8qCj4g KyAqIEluIGdlbmVyYWwsIHRoaXMgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgc2NoZWR1bGVyIGxv Y2sgaGVsZCwgYmVjYXVzZSB0aGUKPiArICogYWRqdXN0X2FmZmluaXR5IGhvb2sgbWF5IHdhbnQg dG8gbW9kaWZ5IHRoZSB2Q1BVIHN0YXRlLiBIb3dldmVyLCB3aGVuIHRoZQo+ICsgKiB2Q1BVIGlz IGJlaW5nIGluaXRpYWxpemVkIChlaXRoZXIgZm9yIGRvbTAgb3IgZG9tVSkgdGhlcmUgaXMgbm8g cmlzayBvZgo+ICsgKiByYWNlcywgYW5kIGl0J3MgZmluZSB0byBub3QgdGFrZSB0aGUgbG9vayAo d2UncmUgdGFsa2luZyBhYm91dAo+ICsgKiBkb20wX3NldHVwX3ZjcHUoKSBhbiBzY2hlZF9pbml0 X3ZjcHUoKSkuCj4gKyAqLwo+ICt2b2lkIHNjaGVkX3NldF9hZmZpbml0eSgKPiArICAgIHN0cnVj dCB2Y3B1ICp2LCBjb25zdCBjcHVtYXNrX3QgKmhhcmQsIGNvbnN0IGNwdW1hc2tfdCAqc29mdCkK PiArewo+ICsgICAgU0NIRURfT1AoZG9tX3NjaGVkdWxlcih2LT5kb21haW4pLCBhZGp1c3RfYWZm aW5pdHksIHYsIGhhcmQsIHNvZnQpOwo+ICsKPiArICAgIGlmICggaGFyZCApCj4gKyAgICAgICAg Y3B1bWFza19jb3B5KHYtPmNwdV9oYXJkX2FmZmluaXR5LCBoYXJkKTsKPiArICAgIGlmICggc29m dCApCj4gKyAgICAgICAgY3B1bWFza19jb3B5KHYtPmNwdV9zb2Z0X2FmZmluaXR5LCBzb2Z0KTsK PiArfQo+ICsKPiAgc3RhdGljIGludCB2Y3B1X3NldF9hZmZpbml0eSgKPiAtICAgIHN0cnVjdCB2 Y3B1ICp2LCBjb25zdCBjcHVtYXNrX3QgKmFmZmluaXR5LCBjcHVtYXNrX3QgKndoaWNoKQo+ICsg ICAgc3RydWN0IHZjcHUgKnYsIGNvbnN0IGNwdW1hc2tfdCAqYWZmaW5pdHksIGNvbnN0IGNwdW1h c2tfdCAqd2hpY2gpCj4gIHsKPiAgICAgIHNwaW5sb2NrX3QgKmxvY2s7Cj4gICAgICBpbnQgcmV0 ID0gMDsKPiBAQCAtODU3LDEyICs4ODMsMTkgQEAgc3RhdGljIGludCB2Y3B1X3NldF9hZmZpbml0 eSgKPiAgICAgICAgICByZXQgPSAtRUJVU1k7Cj4gICAgICBlbHNlCj4gICAgICB7Cj4gLSAgICAg ICAgY3B1bWFza19jb3B5KHdoaWNoLCBhZmZpbml0eSk7Cj4gLQo+ICAgICAgICAgIC8qCj4gLSAg ICAgICAgICogQWx3YXlzIGFzayB0aGUgc2NoZWR1bGVyIHRvIHJlLWV2YWx1YXRlIHBsYWNlbWVu dAo+IC0gICAgICAgICAqIHdoZW4gY2hhbmdpbmcgdGhlIGFmZmluaXR5Lgo+ICsgICAgICAgICAq IFRlbGwgdGhlIHNjaGVkdWxlciB3ZSBjaGFuZ2VzIHNvbWV0aGluZyBhYm91dCBhZmZpbml0eSwK PiArICAgICAgICAgKiBhbmQgYXNrIHRvIHJlLWV2YWx1YXRlIHZjcHUgcGxhY2VtZW50Lgo+ICAg ICAgICAgICAqLwo+ICsgICAgICAgIGlmICggd2hpY2ggPT0gdi0+Y3B1X2hhcmRfYWZmaW5pdHkg KQo+ICsgICAgICAgIHsKPiArICAgICAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYsIGFmZmlu aXR5LCBOVUxMKTsKPiArICAgICAgICB9Cj4gKyAgICAgICAgZWxzZQo+ICsgICAgICAgIHsKPiAr ICAgICAgICAgICAgQVNTRVJUKHdoaWNoID09IHYtPmNwdV9zb2Z0X2FmZmluaXR5KTsKPiArICAg ICAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYsIE5VTEwsIGFmZmluaXR5KTsKPiArICAgICAg ICB9Cj4gICAgICAgICAgc2V0X2JpdChfVlBGX21pZ3JhdGluZywgJnYtPnBhdXNlX2ZsYWdzKTsK PiAgICAgIH0KPiAgCj4gQEAgLTExMDAsNyArMTEzMyw3IEBAIGludCB2Y3B1X3Bpbl9vdmVycmlk ZShzdHJ1Y3QgdmNwdSAqdiwgaW50IGNwdSkKPiAgICAgIHsKPiAgICAgICAgICBpZiAoIHYtPmFm ZmluaXR5X2Jyb2tlbiApCj4gICAgICAgICAgewo+IC0gICAgICAgICAgICBjcHVtYXNrX2NvcHko di0+Y3B1X2hhcmRfYWZmaW5pdHksIHYtPmNwdV9oYXJkX2FmZmluaXR5X3NhdmVkKTsKPiArICAg ICAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYsIHYtPmNwdV9oYXJkX2FmZmluaXR5X3NhdmVk LCBOVUxMKTsKPiAgICAgICAgICAgICAgdi0+YWZmaW5pdHlfYnJva2VuID0gMDsKPiAgICAgICAg ICAgICAgc2V0X2JpdChfVlBGX21pZ3JhdGluZywgJnYtPnBhdXNlX2ZsYWdzKTsKPiAgICAgICAg ICAgICAgcmV0ID0gMDsKPiBAQCAtMTExNCw3ICsxMTQ3LDcgQEAgaW50IHZjcHVfcGluX292ZXJy aWRlKHN0cnVjdCB2Y3B1ICp2LCBpbnQgY3B1KQo+ICAgICAgICAgIHsKPiAgICAgICAgICAgICAg Y3B1bWFza19jb3B5KHYtPmNwdV9oYXJkX2FmZmluaXR5X3NhdmVkLCB2LT5jcHVfaGFyZF9hZmZp bml0eSk7Cj4gICAgICAgICAgICAgIHYtPmFmZmluaXR5X2Jyb2tlbiA9IDE7Cj4gLSAgICAgICAg ICAgIGNwdW1hc2tfY29weSh2LT5jcHVfaGFyZF9hZmZpbml0eSwgY3B1bWFza19vZihjcHUpKTsK PiArICAgICAgICAgICAgc2NoZWRfc2V0X2FmZmluaXR5KHYsIGNwdW1hc2tfb2YoY3B1KSwgTlVM TCk7Cj4gICAgICAgICAgICAgIHNldF9iaXQoX1ZQRl9taWdyYXRpbmcsICZ2LT5wYXVzZV9mbGFn cyk7Cj4gICAgICAgICAgICAgIHJldCA9IDA7Cj4gICAgICAgICAgfQo+IGRpZmYgLS1naXQgYS94 ZW4vaW5jbHVkZS94ZW4vc2NoZWQtaWYuaCBiL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC1pZi5oCj4g aW5kZXggYzVkZDQzZWQ5Yy4uOTI2ZDA2M2NjZiAxMDA2NDQKPiAtLS0gYS94ZW4vaW5jbHVkZS94 ZW4vc2NoZWQtaWYuaAo+ICsrKyBiL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC1pZi5oCj4gQEAgLTE3 Myw2ICsxNzMsOSBAQCBzdHJ1Y3Qgc2NoZWR1bGVyIHsKPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KTsKPiAgICAgIGludCAgICAgICAgICAoKmFkanVz dCkgICAgICAgICAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLCBzdHJ1Y3QgZG9tYWluICosCj4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB4ZW5fZG9tY3RsX3Nj aGVkdWxlcl9vcCAqKTsKPiArICAgIHZvaWQgICAgICAgICAoKmFkanVzdF9hZmZpbml0eSkoY29u c3Qgc3RydWN0IHNjaGVkdWxlciAqLCBzdHJ1Y3QgdmNwdSAqLAo+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgY3B1bWFzayAqLAo+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgY3B1bWFzayAqKTsKPiAgICAg IGludCAgICAgICAgICAoKmFkanVzdF9nbG9iYWwpICAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAq LAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGVuX3N5c2N0 bF9zY2hlZHVsZXJfb3AgKik7Cj4gICAgICB2b2lkICAgICAgICAgKCpkdW1wX3NldHRpbmdzKSAg KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKik7Cj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hl bi9zY2hlZC5oIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLmgKPiBpbmRleCAzOWY5Mzg2NDRhLi5h ZGU0ZDdiOWFhIDEwMDY0NAo+IC0tLSBhL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC5oCj4gKysrIGIv eGVuL2luY2x1ZGUveGVuL3NjaGVkLmgKPiBAQCAtODQ2LDYgKzg0Niw5IEBAIHZvaWQgc2NoZWR1 bGVyX2ZyZWUoc3RydWN0IHNjaGVkdWxlciAqc2NoZWQpOwo+ICBpbnQgc2NoZWR1bGVfY3B1X3N3 aXRjaCh1bnNpZ25lZCBpbnQgY3B1LCBzdHJ1Y3QgY3B1cG9vbCAqYyk7Cj4gIHZvaWQgdmNwdV9m b3JjZV9yZXNjaGVkdWxlKHN0cnVjdCB2Y3B1ICp2KTsKPiAgaW50IGNwdV9kaXNhYmxlX3NjaGVk dWxlcih1bnNpZ25lZCBpbnQgY3B1KTsKPiArLyogV2UgbmVlZCBpdCBpbiBkb20wX3NldHVwX3Zj cHUgKi8KPiArdm9pZCBzY2hlZF9zZXRfYWZmaW5pdHkoc3RydWN0IHZjcHUgKnYsIGNvbnN0IGNw dW1hc2tfdCAqaGFyZCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY3B1bWFza190 ICpzb2Z0KTsKPiAgaW50IHZjcHVfc2V0X2hhcmRfYWZmaW5pdHkoc3RydWN0IHZjcHUgKnYsIGNv bnN0IGNwdW1hc2tfdCAqYWZmaW5pdHkpOwo+ICBpbnQgdmNwdV9zZXRfc29mdF9hZmZpbml0eShz dHJ1Y3QgdmNwdSAqdiwgY29uc3QgY3B1bWFza190ICphZmZpbml0eSk7Cj4gIHZvaWQgcmVzdG9y ZV92Y3B1X2FmZmluaXR5KHN0cnVjdCBkb21haW4gKmQpOwo+IAoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv bWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=