From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Dunlap Subject: [PATCH v2 for-4.10] x86/mm: Make PV linear pagetables optional Date: Wed, 18 Oct 2017 11:51:59 +0100 Message-ID: <20171018105159.9582-1-george.dunlap@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e4lxO-0008IN-Ir for xen-devel@lists.xenproject.org; Wed, 18 Oct 2017 10:52:14 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Wei Liu , Konrad Wilk , Andrew Cooper , George Dunlap , Julien Grall , Jan Beulich , Ian Jackson List-Id: xen-devel@lists.xenproject.org QWxsb3dpbmcgcGFnZXRhYmxlcyB0byBwb2ludCB0byBvdGhlciBwYWdldGFibGVzIG9mIHRoZSBz YW1lIGxldmVsCihvZnRlbiBjYWxsZWQgJ2xpbmVhciBwYWdldGFibGVzJykgaGFzIGJlZW4gaW5j bHVkZWQgaW4gWGVuIHNpbmNlIGl0cwppbmNlcHRpb247IGJ1dCByZWNlbnRseSBpdCBoYXMgYmVl biB0aGUgc291cmNlIG9mIGEgbnVtYmVyIG9mIHN1YnRsZQpyZWZlcmVuY2UtY291bnRpbmcgYnVn cy4KCkl0IGlzIG5vdCB1c2VkIGJ5IExpbnV4IG9yIE1pbmlPUzsgYnV0IGl0IHVzZWQgdXNlZCBi eSBOZXRCU0QgYW5kCk5vdmVsbCBOZXR3YXJlLiAgVGhlcmUgYXJlIHNpZ25pZmljYW50IG51bWJl cnMgb2YgcGVvcGxlIHdobyBhcmUgbmV2ZXIKZ29pbmcgdG8gdXNlIHRoZSBmZWF0dXJlLCBhbG9u ZyB3aXRoIHNpZ25pZmljYW50IG51bWJlcnMgd2hvIG5lZWQgdGhlCmZlYXR1cmUuCgpBZGQgYSBL Y29uZmlnIG9wdGlvbiBmb3IgdGhlIGZlYXR1cmUgKGRlZmF1bHQgdG8gJ3knKS4gIEFsc28gYWRk IGEKY29tbWFuZC1saW5lIG9wdGlvbiB0byBjb250cm9sIHdoZXRoZXIgUFYgbGluZWFyIHBhZ2V0 YWJsZXMgYXJlCmFsbG93ZWQgKGRlZmF1bHQgdG8gJ3RydWUnKS4KCk5CIHRoYXQgd2UgbGVhdmUg bGluZWFyX3B0X2NvdW50IGluIHRoZSBwYWdlIHN0cnVjdC4gIEl0J3MgaW4gYSB1bmlvbiwKc28g aXRzIHByZXNlbmNlIGRvZXNuJ3QgaW5jcmVhc2UgdGhlIHNpemUgb2YgdGhlIGRhdGEgc3RydWN0 LgpDaGFuZ2luZyB0aGUgbGF5b3V0IG9mIHRoZSBvdGhlciBlbGVtZW50cyBiYXNlZCBvbiBjb25m aWd1cmF0aW9uCm9wdGlvbnMgaXMgYXNraW5nIGZvciB0cm91YmxlIGhvd2V2ZXI7IHNvIHdlJ2xs IGp1c3QgbGVhdmUgaXQgdGhlcmUKYW5kIEFTU0VSVCB0aGF0IGl0J3MgemVyby4KClJlcG9ydGVk LWJ5OiBKYW5uIEhvcm4gPGphbm5oQGdvb2dsZS5jb20+ClNpZ25lZC1vZmYtYnk6IEdlb3JnZSBE dW5sYXAgPGdlb3JnZS5kdW5sYXBAY2l0cml4LmNvbT4KLS0tCkNoYW5nZXMgc2luY2UgdjEKLSBS ZW1vdmUgc3RyYXkgYmxhbmsgbGluZXMgYWRkZWQgZnJvbSBwcmV2aW91cyBwYXRjaAotIExlYXZl IHBnLT5saW5lYXJfcHRfY291bnQgcHJlc2VudCwgYXNzZXJ0IGl0J3MgMAotIFJlbmFtZSB2YXJp YWJsZSB0byBvcHRfcHZfbGluZWFyX3B0Ci0gQWRkIHNwYWNlcyBhcm91bmQgI2lmZGVmLyNlbHNl LyNlbmRpZiBmb3IgbGFyZ2UgY29kZSBibG9jawotIEFkZCAvKiBDT05GSUdfTElORUFSX1BWX1BU ICovIGFmdGVyICNlbHNlLyNlbmRpZiBmb3IgY2xhcml0eQotIENvcnJlY3QgZG9jdW1lbnRlZCBk ZWZhdWx0IHZhbHVlCi0gTWVudGlvbiBpbiBkb2N1bWVudGF0aW9uIHRoYXQgdGhlIG9wdGlvbiBp cyBvbmx5IGF2YWlsYWJsZSBpZiBjb25maWd1cmVkCi0gTW92ZSBjb25maWcgb3B0aW9uIHRvIGJl bG93IFBWIChmb3IgdGhlIGRheSB3aGVuIHdlIG1ha2UgdGhhdCBzZWxlY3RhYmxlKQoKQ2hhbmdl cyBzaW5jZSBYU0EKLSBBZGQgYSBLY29uZmlnIG9wdGlvbgotIERlZmF1bHQgdG8gJ29uJyAocmF0 aGVyIHRoYW4gJ29mZicpLgoKUmVsZWFzZSBqdXN0aWZpY2F0aW9uOiBUaGlzIHdhcyBvcmlnaW5h bGx5IHBhcnQgb2YgYSBzZWN1cml0eSBmaXgKZW1iYXJnb2VkIHVudGlsIGFmdGVyIHRoZSBmcmVl emUgZGF0ZTsgaXQgd2Fzbid0IGNoZWNrZWQgaW4gd2l0aCB0aGUKb3RoZXIgc2VjdXJpdHkgcGF0 Y2hlcyBpbiBvcmRlciB0byBhbGxvdyBhIGRpc2N1c3Npb24gYWJvdXQgdGhlCmRlZmF1bHQuCgpD QzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGNpdHJpeC5jb20+CkNDOiBXZWkgTGl1IDx3ZWku bGl1MkBjaXRyaXguY29tPgpDQzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4 LmNvbT4KQ0M6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQ0M6IFN0ZWZhbm8gU3Rh YmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4KQ0M6IEtvbnJhZCBXaWxrIDxrb25yYWQu d2lsa0BvcmFjbGUuY29tPgpDQzogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4K LS0tCiBkb2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5tYXJrZG93biB8IDE5ICsrKysrKysrKysr KysrKysrKysKIHhlbi9hcmNoL3g4Ni9LY29uZmlnICAgICAgICAgICAgICAgIHwgMjAgKysrKysr KysrKysrKysrKysrKysKIHhlbi9hcmNoL3g4Ni9tbS5jICAgICAgICAgICAgICAgICAgIHwgMzcg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA3 NiBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZG9jcy9taXNjL3hlbi1jb21tYW5kLWxpbmUu bWFya2Rvd24gYi9kb2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5tYXJrZG93bgppbmRleCBlYjQ5 OTVlNjhiLi43ODExMTBkNGIyIDEwMDY0NAotLS0gYS9kb2NzL21pc2MveGVuLWNvbW1hbmQtbGlu ZS5tYXJrZG93bgorKysgYi9kb2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5tYXJrZG93bgpAQCAt MTQyMiw2ICsxNDIyLDI1IEBAIFRoZSBmb2xsb3dpbmcgcmVzb3VyY2VzIGFyZSBhdmFpbGFibGU6 CiAgICAgQ0RQLCBvbmUgQ09TIHdpbGwgY29yZXNwb25kIHR3byBDQk1zIG90aGVyIHRoYW4gb25l IHdpdGggQ0FULCBkdWUgdG8gdGhlCiAgICAgc3VtIG9mIENCTXMgaXMgZml4ZWQsIHRoYXQgbWVh bnMgYWN0dWFsIGBjb3NfbWF4YCBpbiB1c2Ugd2lsbCBhdXRvbWF0aWNhbGx5CiAgICAgcmVkdWNl IHRvIGhhbGYgd2hlbiBDRFAgaXMgZW5hYmxlZC4KKwkKKyMjIyBwdi1saW5lYXItcHQKKz4gYD0g PGJvb2xlYW4+YAorCis+IERlZmF1bHQ6IGB0cnVlYAorCitPbmx5IGF2YWlsYWJsZSBpZiBYZW4g aXMgY29tcGlsZWQgd2l0aCBDT05GSUdcX1BWXF9MSU5FQVJcX1BUIHN1cHBvcnQKK2VuYWJsZWQu CisKK0FsbG93IFBWIGd1ZXN0cyB0byBoYXZlIHBhZ2V0YWJsZSBlbnRyaWVzIHBvaW50aW5nIHRv IG90aGVyIHBhZ2V0YWJsZXMKK29mIHRoZSBzYW1lIGxldmVsIChpLmUuLCBhbGxvd2luZyBMMiBQ VEVzIHRvIHBvaW50IHRvIG90aGVyIEwyIHBhZ2VzKS4KK1RoaXMgdGVjaG5pcXVlIGlzIG9mdGVu IGNhbGxlZCAibGluZWFyIHBhZ2V0YWJsZXMiLCBhbmQgaXMgc29tZXRpbWVzCit1c2VkIHRvIGFs bG93IG9wZXJhdGluZyBzeXN0ZW1zIGEgc2ltcGxlIHdheSB0byBjb25zaXN0ZW50bHkgbWFwIHRo ZQorY3VycmVudCBwcm9jZXNzJ3MgcGFnZXRhYmxlcyBpbnRvIGl0cyBvd24gdmlydHVhbCBhZGRy ZXNzIHNwYWNlLgorCitMaW51eCBhbmQgTWluaU9TIGRvbid0IHVzZSB0aGlzIHRlY2huaXF1ZS4g IE5ldEJTRCBhbmQgTm92ZWxsIE5ldHdhcmUKK2RvOyB0aGVyZSBtYXkgYmUgb3RoZXIgY3VzdG9t IG9wZXJhdGluZyBzeXN0ZW1zIHdoaWNoIGRvLiAgSWYgeW91J3JlCitjZXJ0YWluIHlvdSBkb24n dCBwbGFuIG9uIGhhdmluZyBQViBndWVzdHMgd2hpY2ggdXNlIHRoaXMgZmVhdHVyZSwKK3R1cm5p bmcgaXQgb2ZmIGNhbiByZWR1Y2UgdGhlIGF0dGFjayBzdXJmYWNlLgogCiAjIyMgcmN1LWlkbGUt dGltZXItcGVyaW9kLW1zCiA+IGA9IDxpbnRlZ2VyPmAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4 Ni9LY29uZmlnIGIveGVuL2FyY2gveDg2L0tjb25maWcKaW5kZXggNjQ5NTVkYzAxNy4uYThiYmFh NjUyYiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L0tjb25maWcKKysrIGIveGVuL2FyY2gveDg2 L0tjb25maWcKQEAgLTM3LDYgKzM3LDI2IEBAIHNvdXJjZSAiYXJjaC9LY29uZmlnIgogY29uZmln IFBWCiAJZGVmX2Jvb2wgeQogCitjb25maWcgUFZfTElORUFSX1BUCisgICAgICAgYm9vbCAiU3Vw cG9ydCBmb3IgUFYgbGluZWFyIHBhZ2V0YWJsZXMiCisgICAgICAgZGVwZW5kcyBvbiBQVgorICAg ICAgIGRlZmF1bHQgeQorICAgICAgIC0tLWhlbHAtLS0KKyAgICAgICAgIExpbmVhciBwYWdldGFi bGVzIChhbHNvIGNhbGxlZCAicmVjdXJzaXZlIHBhZ2V0YWJsZXMiKSByZWZlcnMKKyAgICAgICAg IHRvIHRoZSBwcmFjdGljZSBvZiBhIGd1ZXN0IG9wZXJhdGluZyBzeXN0ZW0gaGF2aW5nIHBhZ2V0 YWJsZQorICAgICAgICAgZW50cmllcyBwb2ludGluZyB0byBvdGhlciBwYWdldGFibGVzIG9mIHRo ZSBzYW1lIGxldmVsIChpLmUuLAorICAgICAgICAgYWxsb3dpbmcgTDIgUFRFcyB0byBwb2ludCB0 byBvdGhlciBMMiBwYWdlcykuICBTb21lIG9wZXJhdGluZworICAgICAgICAgc3lzdGVtcyB1c2Ug aXQgYXMgYSBzaW1wbGUgd2F5IHRvIGNvbnNpc2VudGx5IG1hcCB0aGUgY3VycmVudAorICAgICAg ICAgcHJvY2VzcydzIHBhZ2V0YWJsZXMgaW50byBpdHMgb3duIHZpcnR1YWwgYWRkcmVzcyBzcGFj ZS4KKworICAgICAgICAgTGludXggYW5kIE1pbmlPUyBkb24ndCB1c2UgdGhpcyB0ZWNobmlxdWUu ICBOZXRCU0QgYW5kIE5vdmVsbAorICAgICAgICAgTmV0d2FyZSBkbzsgdGhlcmUgbWF5IGJlIG90 aGVyIGN1c3RvbSBvcGVyYXRpbmcgc3lzdGVtcyB3aGljaAorICAgICAgICAgZG8uICBJZiB5b3Un cmUgY2VydGFpbiB5b3UgZG9uJ3QgcGxhbiBvbiBoYXZpbmcgUFYgZ3Vlc3RzCisgICAgICAgICB3 aGljaCB1c2UgdGhpcyBmZWF0dXJlLCB0dXJuaW5nIGl0IG9mZiBjYW4gcmVkdWNlIHRoZSBhdHRh Y2sKKyAgICAgICAgIHN1cmZhY2UuCisKKyAgICAgICAgIElmIHVuc3VyZSwgc2F5IFkuCisKIGNv bmZpZyBIVk0KIAlkZWZfYm9vbCB5CiAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tbS5jIGIv eGVuL2FyY2gveDg2L21tLmMKaW5kZXggNjJkMzEzZTNmNS4uMmY5ZmViZDFlZSAxMDA2NDQKLS0t IGEveGVuL2FyY2gveDg2L21tLmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTU4Nyw2ICs1 ODcsOCBAQCBzdGF0aWMgdm9pZCBwdXRfZGF0YV9wYWdlKAogICAgICAgICBwdXRfcGFnZShwYWdl KTsKIH0KIAorI2lmZGVmIENPTkZJR19QVl9MSU5FQVJfUFQKKwogc3RhdGljIGJvb2wgaW5jX2xp bmVhcl9lbnRyaWVzKHN0cnVjdCBwYWdlX2luZm8gKnBnKQogewogICAgIHR5cGVvZihwZy0+bGlu ZWFyX3B0X2NvdW50KSBuYyA9IHJlYWRfYXRvbWljKCZwZy0+bGluZWFyX3B0X2NvdW50KSwgb2M7 CkBAIC02NTQsNiArNjU2LDkgQEAgc3RhdGljIHZvaWQgZGVjX2xpbmVhcl91c2VzKHN0cnVjdCBw YWdlX2luZm8gKnBnKQogICogICAgIGZyYW1lIGlmIGl0IGlzIG1hcHBlZCBieSBhIGRpZmZlcmVu dCByb290IHRhYmxlLiBUaGlzIGlzIHN1ZmZpY2llbnQgYW5kCiAgKiAgICAgYWxzbyBuZWNlc3Nh cnkgdG8gYWxsb3cgdmFsaWRhdGlvbiBvZiBhIHJvb3QgdGFibGUgbWFwcGluZyBpdHNlbGYuCiAg Ki8KK3N0YXRpYyBib29sIF9fcmVhZF9tb3N0bHkgb3B0X3B2X2xpbmVhcl9wdCA9IHRydWU7Citi b29sZWFuX3BhcmFtKCJwdi1saW5lYXItcHQiLCBvcHRfcHZfbGluZWFyX3B0KTsKKwogI2RlZmlu ZSBkZWZpbmVfZ2V0X2xpbmVhcl9wYWdldGFibGUobGV2ZWwpICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKIHN0YXRpYyBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiBnZXRfIyNsZXZlbCMjX2xpbmVh cl9wYWdldGFibGUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XApAQCAtNjYzLDYgKzY2OCwxMyBAQCBnZXRfIyNsZXZlbCMjX2xpbmVhcl9wYWdldGFibGUoICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIHN0cnVjdCBw YWdlX2luZm8gKnBhZ2U7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKICAgICB1bnNpZ25lZCBsb25nIHBmbjsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg IGlmICggIW9wdF9wdl9saW5lYXJfcHQgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGdkcHJpbnRr KFhFTkxPR19XQVJOSU5HLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXAorICAgICAgICAgICAgICAgICAiQXR0ZW1wdCB0byBjcmVhdGUgbGluZWFyIHAudC4gKGZl YXR1cmUgZGlzYWJsZWQpXG4iKTsgICAgIFwKKyAgICAgICAgcmV0dXJuIDA7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICBpZiAoIChsZXZlbCMjZV9n ZXRfZmxhZ3MocGRlKSAmIF9QQUdFX1JXKSApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc CiAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBnZHByaW50ayhYRU5MT0dfV0FSTklORywg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKQEAgLTcyMCw2ICs3 MzIsMjcgQEAgZ2V0XyMjbGV2ZWwjI19saW5lYXJfcGFnZXRhYmxlKCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICByZXR1cm4gMTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiB9CiAK KyNlbHNlIC8qIENPTkZJR19QVl9MSU5FQVJfUFQgKi8KKworI2RlZmluZSBkZWZpbmVfZ2V0X2xp bmVhcl9wYWdldGFibGUobGV2ZWwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorc3Rh dGljIGludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAorZ2V0XyMjbGV2ZWwjI19saW5lYXJfcGFnZXRhYmxlKCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBsZXZlbCMjX3BnZW50cnlf dCBwZGUsIHVuc2lnbmVkIGxvbmcgcGRlX3Bmbiwgc3RydWN0IGRvbWFpbiAqZCkgXAoreyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAorICAgICAgICByZXR1cm4gMDsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorfQorCitzdGF0aWMgdm9pZCBkZWNfbGluZWFy X3VzZXMoc3RydWN0IHBhZ2VfaW5mbyAqcGcpCit7CisgICAgQVNTRVJUKHBnLT5saW5lYXJfcHRf Y291bnQgPT0gMCk7Cit9CisKK3N0YXRpYyB2b2lkIGRlY19saW5lYXJfZW50cmllcyhzdHJ1Y3Qg cGFnZV9pbmZvICpwZykKK3sKKyAgICBBU1NFUlQocGctPmxpbmVhcl9wdF9jb3VudCA9PSAwKTsK K30KKworI2VuZGlmIC8qIENPTkZJR19QVl9MSU5FQVJfUFQgKi8KIAogYm9vbCBpc19pb21lbV9w YWdlKG1mbl90IG1mbikKIHsKQEAgLTIzMjAsNiArMjM1Myw3IEBAIHN0YXRpYyBpbnQgX3B1dF9w YWdlX3R5cGUoc3RydWN0IHBhZ2VfaW5mbyAqcGFnZSwgYm9vbCBwcmVlbXB0aWJsZSwKICAgICAg ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KIAorI2lmZGVmIENPTkZJR19QVl9MSU5F QVJfUFQKICAgICAgICAgICAgIGlmICggcHRwZyAmJiBQR1RfdHlwZV9lcXVhbCh4LCBwdHBnLT51 LmludXNlLnR5cGVfaW5mbykgKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIC8qCkBA IC0yMzM0LDYgKzIzNjgsOSBAQCBzdGF0aWMgaW50IF9wdXRfcGFnZV90eXBlKHN0cnVjdCBwYWdl X2luZm8gKnBhZ2UsIGJvb2wgcHJlZW1wdGlibGUsCiAgICAgICAgICAgICAgICAgQVNTRVJUKHB0 cGctPmxpbmVhcl9wdF9jb3VudCA+IDApOwogICAgICAgICAgICAgICAgIHB0cGcgPSBOVUxMOwog ICAgICAgICAgICAgfQorI2Vsc2UgLyogQ09ORklHX1BWX0xJTkVBUl9QVCAqLworICAgICAgICAg ICAgQlVHX09OKHB0cGcgJiYgUEdUX3R5cGVfZXF1YWwoeCwgcHRwZy0+dS5pbnVzZS50eXBlX2lu Zm8pKTsKKyNlbmRpZgogCiAgICAgICAgICAgICBzZXRfdGxiZmx1c2hfdGltZXN0YW1wKHBhZ2Up OwogICAgICAgICB9Ci0tIAoyLjE0LjIKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK