From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Allan Webber Subject: bug#22274: GuixSD resets hardware clock (on Lenovo x200 with libreboot) Date: Thu, 14 Jan 2016 10:55:31 -0800 Message-ID: <87a8o8yoja.fsf@dustycloud.org> References: <87ege42bg6.fsf@dustycloud.org> <87oad5jp4e.fsf@gnu.org> <87io3aypk7.fsf@dustycloud.org> <87r3hxbd7b.fsf@gnu.org> <87fuycyqpm.fsf@dustycloud.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:34598) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aJn8t-0006Xb-C1 for bug-guix@gnu.org; Thu, 14 Jan 2016 14:01:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aJn8p-0005tl-3o for bug-guix@gnu.org; Thu, 14 Jan 2016 14:01:07 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:32966) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aJn8p-0005tc-0K for bug-guix@gnu.org; Thu, 14 Jan 2016 14:01:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1aJn8o-0003JH-IS for bug-guix@gnu.org; Thu, 14 Jan 2016 14:01:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-reply-to: <87fuycyqpm.fsf@dustycloud.org> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 22274@debbugs.gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Christopher Allan Webber writes: >>> When I'm not on a train I can try building the "current" system with >>> Linux-Libre 4.2.5 and see if it's really the kernel. >> >> Yes, that would be helpful! It would be nice to check with other X200 >> users too. >> >> Thanks for investigating! >> >> Ludo’. > > Okay, I'll try all these things as soon as I'm not tethering from a > phone :) Well it took me a bit longer than I said, but I finally tried it :) My config is attached. Hackily, I copy-pasta'ed the kernel packages entirely from guix v0.9.0's release. I can confirm that this can read the hardware clock just fine, whereas the other version of the kernel can't... so it does indeed look like between Linux-Libre 4.2.5 and Linux-Libre 4.3.3 we have some sort of regression that leads to this problem on x200 Minifree Libreboot-enabled laptops, at least. - Chris --=-=-= Content-Type: application/octet-stream Content-Disposition: inline; filename=config-new-with-old-kernel.scm Content-Transfer-Encoding: base64 OzsgVGhpcyBpcyBhbiBvcGVyYXRpbmcgc3lzdGVtIGNvbmZpZ3VyYXRpb24gdGVtcGxhdGUKOzsg Zm9yIGEgImRlc2t0b3AiIHNldHVwIHdpdGggWDExLgoKKHVzZS1tb2R1bGVzIChnbnUpIChnbnUg c3lzdGVtIG5zcykKICAgICAgICAgICAgIDs7IGR1bXAgaW4gdGhlIHN0dWZmIGZyb20gKGdudSBw YWNrYWdlcyBsaW51eCkKICAgICAgICAgICAgICgoZ3VpeCBsaWNlbnNlcykKICAgICAgICAgICAg ICAjOmhpZGUgKHpsaWIpKQogICAgICAgICAgICAgKGdudSBwYWNrYWdlcykKICAgICAgICAgICAg IChnbnUgcGFja2FnZXMgY29tcHJlc3Npb24pCiAgICAgICAgICAgICAoZ251IHBhY2thZ2VzIGdj YykKICAgICAgICAgICAgIChnbnUgcGFja2FnZXMgZmxleCkKICAgICAgICAgICAgIChnbnUgcGFj a2FnZXMgYmlzb24pCiAgICAgICAgICAgICAoZ251IHBhY2thZ2VzIGFkbWluKQogICAgICAgICAg ICAgKGdudSBwYWNrYWdlcyBncGVyZikKICAgICAgICAgICAgIChnbnUgcGFja2FnZXMgbGlidXNi KQogICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBuY3Vyc2VzKQogICAgICAgICAgICAgKGdudSBw YWNrYWdlcyBwY2l1dGlscykKICAgICAgICAgICAgIChnbnUgcGFja2FnZXMgZGF0YWJhc2VzKQog ICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBwZXJsKQogICAgICAgICAgICAgKGdudSBwYWNrYWdl cyBwa2ctY29uZmlnKQogICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBweXRob24pCiAgICAgICAg ICAgICAoZ251IHBhY2thZ2VzIHNsYW5nKQogICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBhbGdl YnJhKQogICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBnZXR0ZXh0KQogICAgICAgICAgICAgKGdu dSBwYWNrYWdlcyBnbGliKQogICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBwdWxzZWF1ZGlvKQog ICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBhdHRyKQogICAgICAgICAgICAgKGdudSBwYWNrYWdl cyB4bWwpCiAgICAgICAgICAgICAoZ251IHBhY2thZ2VzIGF1dG90b29scykKICAgICAgICAgICAg IChnbnUgcGFja2FnZXMgdGV4aW5mbykKICAgICAgICAgICAgIChnbnUgcGFja2FnZXMgY2hlY2sp CiAgICAgICAgICAgICAoZ251IHBhY2thZ2VzIG1hdGhzKQogICAgICAgICAgICAgKGdudSBwYWNr YWdlcyBiYXNlKQogICAgICAgICAgICAgKGdudSBwYWNrYWdlcyBycmR0b29sKQogICAgICAgICAg ICAgKGdudSBwYWNrYWdlcyBlbGYpCiAgICAgICAgICAgICAoZ251IHBhY2thZ2VzIGd0aykKICAg ICAgICAgICAgIChnbnUgcGFja2FnZXMgZG9jYm9vaykKICAgICAgICAgICAgIChnbnUgcGFja2Fn ZXMgYXNjaWlkb2MpCiAgICAgICAgICAgICAoZ251IHBhY2thZ2VzIHJlYWRsaW5lKQogICAgICAg ICAgICAgKGdudSBwYWNrYWdlcyBjYWxlbmRhcikKICAgICAgICAgICAgIChndWl4IHBhY2thZ2Vz KQogICAgICAgICAgICAgKGd1aXggZG93bmxvYWQpCiAgICAgICAgICAgICAoZ3VpeCB1dGlscykK ICAgICAgICAgICAgIChndWl4IGJ1aWxkLXN5c3RlbSBnbnUpCiAgICAgICAgICAgICAoZ3VpeCBi dWlsZC1zeXN0ZW0gY21ha2UpCiAgICAgICAgICAgICAoZ3VpeCBidWlsZC1zeXN0ZW0gcHl0aG9u KQogICAgICAgICAgICAgKGd1aXggYnVpbGQtc3lzdGVtIHRyaXZpYWwpCiAgICAgICAgICAgICAo c3JmaSBzcmZpLTI2KQogICAgICAgICAgICAgKGljZS05IG1hdGNoKSkKKHVzZS1zZXJ2aWNlLW1v ZHVsZXMgZGVza3RvcCkKKHVzZS1wYWNrYWdlLW1vZHVsZXMgeGZjZSByYXRwb2lzb24gY2VydHMp CgooZGVmaW5lLXB1YmxpYyAoc3lzdGVtLT5saW51eC1hcmNoaXRlY3R1cmUgYXJjaCkKICAiUmV0 dXJuIHRoZSBMaW51eCBhcmNoaXRlY3R1cmUgbmFtZSBmb3IgQVJDSCwgYSBHdWl4IHN5c3RlbSBu YW1lIHN1Y2ggYXMKXCJ4ODZfNjQtbGludXhcIi4iCiAgKGxldCAoKGFyY2ggKGNhciAoc3RyaW5n LXNwbGl0IGFyY2ggI1wtKSkpKQogICAgKGNvbmQgKChzdHJpbmc9PyBhcmNoICJpNjg2IikgImkz ODYiKQogICAgICAgICAgKChzdHJpbmctcHJlZml4PyAibWlwcyIgYXJjaCkgIm1pcHMiKQogICAg ICAgICAgKChzdHJpbmctcHJlZml4PyAiYXJtIiBhcmNoKSAiYXJtIikKICAgICAgICAgIChlbHNl IGFyY2gpKSkpCgooZGVmaW5lIChsaW51eC1saWJyZS11cmxzIHZlcnNpb24pCiAgIlJldHVybiBh IGxpc3Qgb2YgVVJMcyBmb3IgTGludXgtTGlicmUgVkVSU0lPTi4iCiAgKGxpc3QgKHN0cmluZy1h cHBlbmQKICAgICAgICAgImh0dHA6Ly9saW51eC1saWJyZS5mc2ZsYS5vcmcvcHViL2xpbnV4LWxp YnJlL3JlbGVhc2VzLyIKICAgICAgICAgdmVyc2lvbiAiLWdudS9saW51eC1saWJyZS0iIHZlcnNp b24gIi1nbnUudGFyLnh6IikKCiAgICAgICAgOzsgWFhYOiBXb3JrIGFyb3VuZCA8aHR0cDovL2J1 Z3MuZ251Lm9yZy8xNDg1MT4uCiAgICAgICAgKHN0cmluZy1hcHBlbmQKICAgICAgICAgImZ0cDov L2FscGhhLmdudS5vcmcvZ251L2d1aXgvbWlycm9yL2xpbnV4LWxpYnJlLSIKICAgICAgICAgdmVy c2lvbiAiLWdudS50YXIueHoiKQoKICAgICAgICA7OyBNYXliZSB0aGlzIFVSTCB3aWxsIGJlY29t ZSB2YWxpZCBldmVudHVhbGx5LgogICAgICAgIChzdHJpbmctYXBwZW5kCiAgICAgICAgICJtaXJy b3I6Ly9nbnUvbGludXgtbGlicmUvIiB2ZXJzaW9uICItZ251L2xpbnV4LWxpYnJlLSIKICAgICAg ICAgdmVyc2lvbiAiLWdudS50YXIueHoiKSkpCgoKKGRlZmluZS1wdWJsaWMgbW9kdWxlLWluaXQt dG9vbHMKICAocGFja2FnZQogICAgKG5hbWUgIm1vZHVsZS1pbml0LXRvb2xzIikKICAgICh2ZXJz aW9uICIzLjE2IikKICAgIChzb3VyY2UgKG9yaWdpbgogICAgICAgICAgICAgKG1ldGhvZCB1cmwt ZmV0Y2gpCiAgICAgICAgICAgICAodXJpIChzdHJpbmctYXBwZW5kCiAgICAgICAgICAgICAgICAg ICAibWlycm9yOi8va2VybmVsLm9yZy9saW51eC91dGlscy9rZXJuZWwvbW9kdWxlLWluaXQtdG9v bHMvbW9kdWxlLWluaXQtdG9vbHMtIgogICAgICAgICAgICAgICAgICAgdmVyc2lvbiAiLnRhci5i ejIiKSkKICAgICAgICAgICAgIChzaGEyNTYKICAgICAgICAgICAgICAoYmFzZTMyCiAgICAgICAg ICAgICAgICIwanhuejlhaGZpYzc5cnA5M2w1d3hjYmdoNHBrdjg1bXduamxidjFnejNqYXd2NWN2 d3AxIikpCiAgICAgICAgICAgICAocGF0Y2hlcwogICAgICAgICAgICAgIChsaXN0IChzZWFyY2gt cGF0Y2ggIm1vZHVsZS1pbml0LXRvb2xzLW1vZHVsZWRpci5wYXRjaCIpKSkpKQogICAgKGJ1aWxk LXN5c3RlbSBnbnUtYnVpbGQtc3lzdGVtKQogICAgKGFyZ3VtZW50cwogICAgIDs7IEZJWE1FOiBU aGUgdXBzdHJlYW0gdGFyYmFsbCBsYWNrcyBtYW4gcGFnZXMsIGFuZCBidWlsZGluZyB0aGVtIHdv dWxkCiAgICAgOzsgcmVxdWlyZSBEb2NCb29rICYgY28uICBXZSB1c2VkIHRvIHVzZSBHZW50b28n cyBwcmUtYnVpbHQgbWFuIHBhZ2VzLAogICAgIDs7IGJ1dCB0aGV5IHZhbmlzaGVkLiAgSW4gdGhl IG1lYW50aW1lLCBmYWtlIGl0LgogICAgICcoIzpwaGFzZXMgKGFsaXN0LWNvbnMtYmVmb3JlCiAg ICAgICAgICAgICAgICAgJ2NvbmZpZ3VyZSAnZmFrZS1kb2Nib29rCiAgICAgICAgICAgICAgICAg KGxhbWJkYSBfCiAgICAgICAgICAgICAgICAgICAoc3Vic3RpdHV0ZSogIk1ha2VmaWxlLmluIgog ICAgICAgICAgICAgICAgICAgICAoKCJeRE9DQk9PS1RPTUFOLiokIikKICAgICAgICAgICAgICAg ICAgICAgICJET0NCT09LVE9NQU4gPSB0cnVlXG4iKSkpCiAgICAgICAgICAgICAgICAgJXN0YW5k YXJkLXBoYXNlcykpKQogICAgKGhvbWUtcGFnZSAiaHR0cDovL3d3dy5rZXJuZWwub3JnL3B1Yi9s aW51eC91dGlscy9rZXJuZWwvbW9kdWxlLWluaXQtdG9vbHMvIikKICAgIChzeW5vcHNpcyAiVG9v bHMgZm9yIGxvYWRpbmcgYW5kIG1hbmFnaW5nIExpbnV4IGtlcm5lbCBtb2R1bGVzIikKICAgIChk ZXNjcmlwdGlvbgogICAgICJUb29scyBmb3IgbG9hZGluZyBhbmQgbWFuYWdpbmcgTGludXgga2Vy bmVsIG1vZHVsZXMsIHN1Y2ggYXMgYG1vZHByb2JlJywKYGluc21vZCcsIGBsc21vZCcsIGFuZCBt b3JlLiIpCiAgICAobGljZW5zZSBncGwyKykpKQoKKGRlZmluZSAlYm9vdC1sb2dvLXBhdGNoCiAg OzsgTGludXgtTGlicmUgYm9vdCBsb2dvIGZlYXR1cmluZyBGcmVlZG8gYW5kIGEgZ251LgogIChv cmlnaW4KICAgIChtZXRob2QgdXJsLWZldGNoKQogICAgKHVyaSAoc3RyaW5nLWFwcGVuZCAiaHR0 cDovL3d3dy5mc2ZsYS5vcmcvc3ZuL2ZzZmxhL3NvZnR3YXJlL2xpbnV4LWxpYnJlLyIKICAgICAg ICAgICAgICAgICAgICAgICAgImxlbW90ZS9nbmV3c2Vuc2UvYnJhbmNoZXMvMy4xNi8xMDBnbnUr ZnJlZWRvLnBhdGNoIikpCiAgICAoc2hhMjU2CiAgICAgKGJhc2UzMgogICAgICAiMWhrOXN3eHhj ODBibW4yemQycXI1Y2NyanJrMjh4a3lwd2hsNHowcXg0aGJpdmo3cW0wNiIpKSkpCgooZGVmaW5l IChrZXJuZWwtY29uZmlnIHN5c3RlbSkKICAiUmV0dXJuIHRoZSBhYnNvbHV0ZSBmaWxlIG5hbWUg b2YgdGhlIExpbnV4LUxpYnJlIGJ1aWxkIGNvbmZpZ3VyYXRpb24gZmlsZQpmb3IgU1lTVEVNLCBv ciAjZiBpZiB0aGVyZSBpcyBubyBjb25maWd1cmF0aW9uIGZvciBTWVNURU0uIgogIChkZWZpbmUg KGxvb2t1cCBmaWxlKQogICAgKGxldCAoKGZpbGUgKHN0cmluZy1hcHBlbmQgImdudS9wYWNrYWdl cy8iIGZpbGUpKSkKICAgICAgKHNlYXJjaC1wYXRoICVsb2FkLXBhdGggZmlsZSkpKQoKICAobWF0 Y2ggc3lzdGVtCiAgICAoImk2ODYtbGludXgiCiAgICAgKGxvb2t1cCAibGludXgtbGlicmUtaTY4 Ni5jb25mIikpCiAgICAoIng4Nl82NC1saW51eCIKICAgICAobG9va3VwICJsaW51eC1saWJyZS14 ODZfNjQuY29uZiIpKQogICAgKF8KICAgICAjZikpKQoKCgooZGVmaW5lLXB1YmxpYyBsaW51eC1s aWJyZQogIChsZXQqICgodmVyc2lvbiAiNC4yLjUiKQogICAgICAgICAoYnVpbGQtcGhhc2UKICAg ICAgICAgICcobGFtYmRhKiAoIzprZXkgc3lzdGVtIGlucHV0cyAjOmFsbG93LW90aGVyLWtleXMg IzpyZXN0IGFyZ3MpCiAgICAgICAgICAgICA7OyBBcHBseSB0aGUgbmVhdCBwYXRjaC4KICAgICAg ICAgICAgIChzeXN0ZW0qICJwYXRjaCIgIi1wMSIgIi0tZm9yY2UiCiAgICAgICAgICAgICAgICAg ICAgICAiLWkiIChhc3NvYy1yZWYgaW5wdXRzICJwYXRjaC9mcmVlZG8rZ251IikpCgogICAgICAg ICAgICAgKGxldCAoKGFyY2ggKGNhciAoc3RyaW5nLXNwbGl0IHN5c3RlbSAjXC0pKSkpCiAgICAg ICAgICAgICAgIChzZXRlbnYgIkFSQ0giCiAgICAgICAgICAgICAgICAgICAgICAgKGNvbmQgKChz dHJpbmc9PyBhcmNoICJpNjg2IikgImkzODYiKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICgoc3RyaW5nPT8gYXJjaCAibWlwczY0ZWwiKSAibWlwcyIpCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKGVsc2UgYXJjaCkpKQogICAgICAgICAgICAgICAoZm9ybWF0ICN0ICJgQVJDSCcg c2V0IHRvIGB+YSd+JSIgKGdldGVudiAiQVJDSCIpKSkKCiAgICAgICAgICAgICAobGV0ICgoYnVp bGQgIChhc3NvYy1yZWYgJXN0YW5kYXJkLXBoYXNlcyAnYnVpbGQpKQogICAgICAgICAgICAgICAg ICAgKGNvbmZpZyAoYXNzb2MtcmVmIGlucHV0cyAia2NvbmZpZyIpKSkKCiAgICAgICAgICAgICAg IDs7IFVzZSB0aGUgYXJjaGl0ZWN0dXJlLXNwZWNpZmljIGNvbmZpZyBpZiBhdmFpbGFibGUsIGFu ZAogICAgICAgICAgICAgICA7OyAnZGVmY29uZmlnJyBvdGhlcndpc2UuCiAgICAgICAgICAgICAg IChpZiBjb25maWcKICAgICAgICAgICAgICAgICAgIChiZWdpbgogICAgICAgICAgICAgICAgICAg ICAoY29weS1maWxlIGNvbmZpZyAiLmNvbmZpZyIpCiAgICAgICAgICAgICAgICAgICAgIChjaG1v ZCAiLmNvbmZpZyIgI282NjYpKQogICAgICAgICAgICAgICAgICAgKHN5c3RlbSogIm1ha2UiICJk ZWZjb25maWciKSkKCiAgICAgICAgICAgICAgIDs7IEFwcGVuZGluZyB3b3JrcyBldmVuIHdoZW4g dGhlIG9wdGlvbiB3YXNuJ3QgaW4gdGhlCiAgICAgICAgICAgICAgIDs7IGZpbGUuICBUaGUgbGFz dCBvbmUgcHJldmFpbHMgaWYgZHVwbGljYXRlZC4KICAgICAgICAgICAgICAgKGxldCAoKHBvcnQg KG9wZW4tZmlsZSAiLmNvbmZpZyIgImEiKSkpCiAgICAgICAgICAgICAgICAgKGRpc3BsYXkgKHN0 cmluZy1hcHBlbmQgIkNPTkZJR19ORVRfOVA9bVxuIgogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJDT05GSUdfTkVUXzlQX1ZJUlRJTz1tXG4iCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNPTkZJR19WSVJUSU9fQkxLPW1cbiIKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ09ORklHX1ZJUlRJT19ORVQ9bVxu IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDs7IGh0dHBzOi8vbGlz dHMuZ251Lm9yZy9hcmNoaXZlL2h0bWwvZ3VpeC1kZXZlbC8yMDE0LTA0L21zZzAwMDM5Lmh0bWwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ09ORklHX0RFVlBUU19N VUxUSVBMRV9JTlNUQU5DRVM9eVxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJDT05GSUdfVklSVElPX1BDST1tXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIkNPTkZJR19WSVJUSU9fQkFMTE9PTj1tXG4iCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNPTkZJR19WSVJUSU9fTU1JTz1tXG4iCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNPTkZJR19GVVNFX0ZTPW1cbiIK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ09ORklHX0NJRlM9bVxu IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJDT05GSUdfOVBfRlM9 bVxuIikKICAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0KQogICAgICAgICAgICAgICAgIChj bG9zZS1wb3J0IHBvcnQpKQoKICAgICAgICAgICAgICAgKHplcm8/IChzeXN0ZW0qICJtYWtlIiAi b2xkY29uZmlnIikpCgogICAgICAgICAgICAgICA7OyBDYWxsIHRoZSBkZWZhdWx0IGBidWlsZCcg cGhhc2Ugc28gYC1qJyBpcyBjb3JyZWN0bHkKICAgICAgICAgICAgICAgOzsgcGFzc2VkLgogICAg ICAgICAgICAgICAoYXBwbHkgYnVpbGQgIzptYWtlLWZsYWdzICJhbGwiIGFyZ3MpKSkpCiAgICAg ICAgIChpbnN0YWxsLXBoYXNlCiAgICAgICAgICBgKGxhbWJkYSogKCM6a2V5IGlucHV0cyBvdXRw dXRzICM6YWxsb3ctb3RoZXIta2V5cykKICAgICAgICAgICAgIChsZXQqICgob3V0ICAgIChhc3Nv Yy1yZWYgb3V0cHV0cyAib3V0IikpCiAgICAgICAgICAgICAgICAgICAgKG1vZGRpciAoc3RyaW5n LWFwcGVuZCBvdXQgIi9saWIvbW9kdWxlcyIpKQogICAgICAgICAgICAgICAgICAgIChtaXQgICAg KGFzc29jLXJlZiBpbnB1dHMgIm1vZHVsZS1pbml0LXRvb2xzIikpKQogICAgICAgICAgICAgICAo bWtkaXItcCBtb2RkaXIpCiAgICAgICAgICAgICAgIChmb3ItZWFjaCAobGFtYmRhIChmaWxlKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAoY29weS1maWxlIGZpbGUKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAoc3RyaW5nLWFwcGVuZCBvdXQgIi8iIChiYXNlbmFtZSBm aWxlKSkpKQogICAgICAgICAgICAgICAgICAgICAgICAgKGZpbmQtZmlsZXMgIi4iICJeKGJ6SW1h Z2V8dm1saW51enxTeXN0ZW1cXC5tYXApJCIpKQogICAgICAgICAgICAgICAoY29weS1maWxlICIu Y29uZmlnIiAoc3RyaW5nLWFwcGVuZCBvdXQgIi9jb25maWciKSkKICAgICAgICAgICAgICAgKHpl cm8/IChzeXN0ZW0qICJtYWtlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmlu Zy1hcHBlbmQgIkRFUE1PRD0iIG1pdCAiL3NiaW4vZGVwbW9kIikKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChzdHJpbmctYXBwZW5kICJNT0RVTEVfRElSPSIgbW9kZGlyKQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgIklOU1RBTExfUEFUSD0iIG91 dCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmctYXBwZW5kICJJTlNUQUxM X01PRF9QQVRIPSIgb3V0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIklOU1RBTExf TU9EX1NUUklQPTEiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibW9kdWxlc19pbnN0 YWxsIikpKSkpKQogICAocGFja2FnZQogICAgKG5hbWUgImxpbnV4LWxpYnJlIikKICAgICh2ZXJz aW9uIHZlcnNpb24pCiAgICAoc291cmNlIChvcmlnaW4KICAgICAgICAgICAgIChtZXRob2QgdXJs LWZldGNoKQogICAgICAgICAgICAgKHVyaSAobGludXgtbGlicmUtdXJscyB2ZXJzaW9uKSkKICAg ICAgICAgICAgIChzaGEyNTYKICAgICAgICAgICAgICAoYmFzZTMyCiAgICAgICAgICAgICAgICIx M2FyOXNnaG0yZzV3MmttOXgyZDA3cTNsaDgxcnoyODZkNnNsa2x2NTZxYW5tMjRjaHp4IikpKSkK ICAgIChidWlsZC1zeXN0ZW0gZ251LWJ1aWxkLXN5c3RlbSkKICAgIChzdXBwb3J0ZWQtc3lzdGVt cyAnKCJ4ODZfNjQtbGludXgiICJpNjg2LWxpbnV4IikpCiAgICAobmF0aXZlLWlucHV0cyBgKCgi cGVybCIgLHBlcmwpCiAgICAgICAgICAgICAgICAgICAgICgiYmMiICxiYykKICAgICAgICAgICAg ICAgICAgICAgKCJtb2R1bGUtaW5pdC10b29scyIgLG1vZHVsZS1pbml0LXRvb2xzKQogICAgICAg ICAgICAgICAgICAgICAoInBhdGNoL2ZyZWVkbytnbnUiICwlYm9vdC1sb2dvLXBhdGNoKQoKICAg ICAgICAgICAgICAgICAgICAgLEAobGV0ICgoY29uZiAoa2VybmVsLWNvbmZpZyAob3IgKCVjdXJy ZW50LXRhcmdldC1zeXN0ZW0pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICglY3VycmVudC1zeXN0ZW0pKSkpKQogICAgICAgICAgICAgICAgICAg ICAgICAgKGlmIGNvbmYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgKCgia2NvbmZpZyIg LGNvbmYpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoKSkpKSkKICAgIChhcmd1bWVu dHMKICAgICBgKCM6bW9kdWxlcyAoKGd1aXggYnVpbGQgZ251LWJ1aWxkLXN5c3RlbSkKICAgICAg ICAgICAgICAgICAgKGd1aXggYnVpbGQgdXRpbHMpCiAgICAgICAgICAgICAgICAgIChzcmZpIHNy ZmktMSkKICAgICAgICAgICAgICAgICAgKGljZS05IG1hdGNoKSkKICAgICAgICM6cGhhc2VzIChh bGlzdC1yZXBsYWNlCiAgICAgICAgICAgICAgICAgJ2J1aWxkICxidWlsZC1waGFzZQogICAgICAg ICAgICAgICAgIChhbGlzdC1yZXBsYWNlCiAgICAgICAgICAgICAgICAgICdpbnN0YWxsICxpbnN0 YWxsLXBoYXNlCiAgICAgICAgICAgICAgICAgIChhbGlzdC1kZWxldGUgJ2NvbmZpZ3VyZSAlc3Rh bmRhcmQtcGhhc2VzKSkpCiAgICAgICAjOnRlc3RzPyAjZikpCiAgICAoc3lub3BzaXMgIjEwMCUg ZnJlZSByZWRpc3RyaWJ1dGlvbiBvZiBhIGNsZWFuZWQgTGludXgga2VybmVsIikKICAgIChkZXNj cmlwdGlvbgogICAgICJHTlUgTGludXgtTGlicmUgaXMgYSBmcmVlIChhcyBpbiBmcmVlZG9tKSB2 YXJpYW50IG9mIHRoZSBMaW51eCBrZXJuZWwuCkl0IGhhcyBiZWVuIG1vZGlmaWVkIHRvIHJlbW92 ZSBhbGwgbm9uLWZyZWUgYmluYXJ5IGJsb2JzLiIpCiAgICAobGljZW5zZSBncGwyKQogICAgKGhv bWUtcGFnZSAiaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2xpbnV4LWxpYnJlLyIpKSkpCgoK KG9wZXJhdGluZy1zeXN0ZW0KICAoaG9zdC1uYW1lICJvb2xvbmciKQogICh0aW1lem9uZSAiQW1l cmljYS9DaGljYWdvIikKICAobG9jYWxlICJlbl9VUy5VVEYtOCIpCgogIChrZXJuZWwgbGludXgt bGlicmUpCgogIDs7IEFzc3VtaW5nIC9kZXYvc2RYIGlzIHRoZSB0YXJnZXQgaGFyZCBkaXNrLCBh bmQgInJvb3QiIGlzCiAgOzsgdGhlIGxhYmVsIG9mIHRoZSB0YXJnZXQgcm9vdCBmaWxlIHN5c3Rl bS4KICAoYm9vdGxvYWRlciAoZ3J1Yi1jb25maWd1cmF0aW9uCgkgICAgICAgKGRldmljZSAiL2Rl di9zZGEiKSkpCiAgKG1hcHBlZC1kZXZpY2VzIChsaXN0IChtYXBwZWQtZGV2aWNlCgkJCSAoc291 cmNlICIvZGV2L3NkYTgiKQoJCQkgKHRhcmdldCAiaG9tZS1sdWtzIikKCQkJICh0eXBlIGx1a3Mt ZGV2aWNlLW1hcHBpbmcpKSkpCiAgKGZpbGUtc3lzdGVtcyBgKCwoZmlsZS1zeXN0ZW0KICAgICAg ICAgICAgICAgICAgICAgICAgKGRldmljZSAiZ3VpeCIpCiAgICAgICAgICAgICAgICAgICAgICAg ICh0aXRsZSAnbGFiZWwpCiAgICAgICAgICAgICAgICAgICAgICAgIChtb3VudC1wb2ludCAiLyIp CiAgICAgICAgICAgICAgICAgICAgICAgICh0eXBlICJleHQ0IikpCiAgICAgICAgICAgICAgICAg ICwoZmlsZS1zeXN0ZW0KICAgICAgICAgICAgICAgICAgICAgKGRldmljZSAiL2Rldi9tYXBwZXIv aG9tZS1sdWtzIikKICAgICAgICAgICAgICAgICAgICAgKG1vdW50LXBvaW50ICIvaG9tZSIpCiAg ICAgICAgICAgICAgICAgICAgICh0eXBlICJleHQ0IikpCiAgICAgICAgICAgICAgICAgICxAJWJh c2UtZmlsZS1zeXN0ZW1zKSkKCiAgKHVzZXJzIChjb25zICh1c2VyLWFjY291bnQKICAgICAgICAg ICAgICAgIChuYW1lICJjd2ViYmVyIikKCQkodWlkIDEwMDApCiAgICAgICAgICAgICAgICAoY29t bWVudCAiQ2hyaXN0b3BoZXIgQWxsYW4gV2ViYmVyIikKICAgICAgICAgICAgICAgIChncm91cCAi Y3dlYmJlciIpCiAgICAgICAgICAgICAgICAoc3VwcGxlbWVudGFyeS1ncm91cHMgJygidXNlcnMi CgkJCQkJIndoZWVsIiAibmV0ZGV2IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgImF1ZGlvIiAidmlkZW8iKSkKICAgICAgICAgICAgICAgIChob21lLWRpcmVjdG9yeSAi L2hvbWUvY3dlYmJlciIpKQogICAgICAgICAgICAgICAlYmFzZS11c2VyLWFjY291bnRzKSkKCiAg KGdyb3VwcyAoY29ucyAodXNlci1ncm91cAoJCSAobmFtZSAiY3dlYmJlciIpCgkJIChpZCAxMDAw KSkKCQklYmFzZS1ncm91cHMpKQoKICA7OyBBZGQgWGZjZSBhbmQgUmF0cG9pc29uOyB0aGF0IGFs bG93cyB1cyB0byBjaG9vc2UKICA7OyBzZXNzaW9ucyB1c2luZyBlaXRoZXIgb2YgdGhlc2UgYXQg dGhlIGxvZy1pbiBzY3JlZW4uCiAgKHBhY2thZ2VzIChjb25zKiB4ZmNlIHJhdHBvaXNvbiAgICA7 ZGVza3RvcCBlbnZpcm9ubWVudHMKICAgICAgICAgICAgICAgICAgIG5zcy1jZXJ0cyAgICAgICAg IDtmb3IgSFRUUFMgYWNjZXNzCiAgICAgICAgICAgICAgICAgICAlYmFzZS1wYWNrYWdlcykpCgog IDs7IFVzZSB0aGUgImRlc2t0b3AiIHNlcnZpY2VzLCB3aGljaCBpbmNsdWRlIHRoZSBYMTEKICA7 OyBsb2ctaW4gc2VydmljZSwgbmV0d29ya2luZyB3aXRoIFdpY2QsIGFuZCBtb3JlLgogIChzZXJ2 aWNlcyAlZGVza3RvcC1zZXJ2aWNlcykKCiAgOzsgQWxsb3cgcmVzb2x1dGlvbiBvZiAnLmxvY2Fs JyBob3N0IG5hbWVzIHdpdGggbUROUy4KICAobmFtZS1zZXJ2aWNlLXN3aXRjaCAlbWRucy1ob3N0 LWxvb2t1cC1uc3MpKQo= --=-=-=--