Patching Linux Kernel 5.5.7 to Add Support for AUFS Filesystem
Turritopsis Dohrnii Teo En Ming <[email protected]> Mon, 16 Mar 2020 00:07:40 +0800
| Newsgroups | gmane.linux.lfs.general |
|---|---|
| Message-ID | <[email protected]> |
U3ViamVjdCBvZiBIaW50OiBQYXRjaGluZyBMaW51eCBLZXJuZWwgNS41LjcgdG8gQWRkIFN1cHBv cnQgZm9yIEFVRlMgCkZpbGVzeXN0ZW0KCk9SSUdJTkFMIEFVVEhPUjogSklNTVkgQU5ERVJTT04K T1JJR0lOQUwgREFURTogMjAxMy0wMS0yMAoKRURJVEVEIEJZOiBUVVJSSVRPUFNJUyBET0hSTklJ IFRFTyBFTiBNSU5HLCBTSU5HQVBPUkUKRURJVCBEQVRFOiAxNSBNQVIgMjAyMCBTVU5EQVkKCk1B TkRBVE9SWSBQUkVSRVFVSVNJVEVTCj09PT09PT09PT09PT09PT09PT09PT09CgpZb3UgKk1VU1Qq IGZvbGxvdyB0aGUgZ3VpZGUvaGludCBoZXJlIGZpcnN0IChDT01QVUxTT1JZKToKCmh0dHA6Ly9s aXN0cy5saW51eGZyb21zY3JhdGNoLm9yZy9waXBlcm1haWwvaGludHMvMjAyMC1NYXJjaC8wMDMz MzQuaHRtbAoKSElOVAo9PT09CgpUbyBvYnRhaW4gdGhlIGF1ZnM1IGtlcm5lbCBwYXRjaGVzLCBk byB0aGUgZm9sbG93aW5nOgoKJCBzdWRvIGFwdCBpbnN0YWxsIGdpdAoKIy0tLS0tLS0tLS0tLSBD dXQgYW5kIFBhc3RlIHN0YXJ0CmNkICRMRlMvc291cmNlcwpnaXQgY2xvbmUgZ2l0Oi8vZ2l0aHVi LmNvbS9zZmpyby9hdWZzNS1zdGFuZGFsb25lLmdpdCBcCglhdWZzNS1zdGFuZGFsb25lLmdpdApj ZCBhdWZzNS1zdGFuZGFsb25lLmdpdApnaXQgY2hlY2tvdXQgLWIgb3JpZ2luL2F1ZnM1LjUKY3Ag YXVmczUtKi5wYXRjaCAuLgpybSAtZiBpbmNsdWRlL3VhcGkvbGludXgvS2J1aWxkCnRhciBjdmZ6 ICRMRlMvc291cmNlcy9hdWZzNS50YXIuZ3ogRG9jdW1lbnRhdGlvbiBmcyBpbmNsdWRlCmNkIC4u CnJtIC1yZiBhdWZzNS1zdGFuZGFsb25lLmdpdAojLS0tLS0tLS0tLS0tIEN1dCBhbmQgUGFzdGUg ZW5kCgpSZWJ1aWxkaW5nIHlvdXIga2VybmVsCj09PT09PT09PT09PT09PT09PT09PT0KCiAgICBG b2xsb3cgdGhlIGluc3RydWN0aW9ucyBpbiB0aGUgTEZTL0JMRlMgYm9vayBhbmQgYnVpbGQgeW91 ciBMRlMgCnN5c3RlbQphcyB5b3Ugbm9ybWFsbHkgd291bGQgZXhjZXB0IHRoYXQgZHVyaW5nIHRo ZSBrZXJuZWwgYnVpbGQsIGFmdGVyIAp1bnBhY2tpbmcKdGhlIHNvdXJjZSBhbmQgY2QnaW5nIGlu dG8gdGhlIGxpbnV4IGRpcmVjdG9yeSwgeW91IGFwcGx5IGVpdGhlcgp0aGUgdW5pb25mcyBvciB0 aGUgYXVmcyBwYXRjaGVzLgoKClRvIGFwcGx5IGF1ZnMgcGF0Y2hlczoKIy0tLS0tLS0tLS0tLSBD dXQgYW5kIFBhc3RlIHN0YXJ0CmNhdCAuLi9hdWZzNS1iYXNlLnBhdGNoICB8cGF0Y2ggLU5wMQpj YXQgLi4vYXVmczUta2J1aWxkLnBhdGNoICB8cGF0Y2ggLU5wMQpjYXQgLi4vYXVmczUtbW1hcC5w YXRjaCAgfHBhdGNoIC1OcDEKY2F0IC4uL2F1ZnM1LXN0YW5kYWxvbmUucGF0Y2ggIHxwYXRjaCAt TnAxCnRhciB4dmYgLi4vYXVmczUudGFyLmd6CiMtLS0tLS0tLS0tLS0gQ3V0IGFuZCBQYXN0ZSBl bmQKCldoZW4geW91IGNvbmZpZ3VyZSB0aGUga2VybmVsLCBtYWtlIHN1cmUgdGhlIGZvbGxvd2lu ZyBhcmUgZW5hYmxlZAphcyBidWlsdGlucyAobm90IGFzIG1vZHVsZXMpOgoKICAgIFNRVUFTSEZT IHN1cHBvcnQgKGFuZCBzdXBwb3J0IGZvciBTUVVBU0hGUyBYWiBjb21wcmVzc2VkIGZpbGUgCnN5 c3RlbXMpLgogICAgVU5JT05GUyBvciBBVUZTIHN1cHBvcnQgKENPTkZJR19BVUZTX0ZTPXkpCiAg ICBDRFJPTSBzdXBwb3J0IChJU085NjYwKS4KICAgIERFVlRNUEZTIHN1cHBvcnQuCgpUaGVuIGJ1 aWxkIGFuZCBpbnN0YWxsIGFzIG5vcm1hbDoKIy0tLS0tLS0tLS0tLSBDdXQgYW5kIFBhc3RlIHN0 YXJ0Cm1ha2UKbWFrZSBtb2R1bGVzX2luc3RhbGwKY3AgYXJjaC94ODYvYm9vdC9iekltYWdlIAov Ym9vdC92bWxpbnV6LTUuNS43LXR1cnJpdG9wc2lzLmRvaHJuaWkudGVvLmVuLm1pbmcKY3AgLmNv bmZpZyAvYm9vdC9jb25maWctNS41LjcgICAgICAgICAgICAqKipWRVJZIFZFUlkgSU1QT1JUQU5U IFRPIEhBVkUgCkEgQkFDS1VQIE9GIFlPVVIgS0VSTkVMIENPTkZJR1VSQVRJT04qKioKIy0tLS0t LS0tLS0tLSBDdXQgYW5kIFBhc3RlIGVuZAoKU3RhcnQgY29tcGlsaW5nIExpbnV4IEtlcm5lbCA1 LjUuNzogOC4yMCBQTQpFbmQgY29tcGlsaW5nIExpbnV4IEtlcm5lbCA1LjUuNzogOC4zOSBQTQpE dXJhdGlvbjogMTkgbWlucyBvbiBhbiBBTUQgUnl6ZW4gMyAzMjAwRyBwcm9jZXNzb3Igd2l0aCBS YWRlb24gVmVnYSA4IApncmFwaGljcywKR2lnYWJ5dGUgQjQ1ME0gRFMzSCBtb3RoZXJib2FyZCB3 aXRoIEJJT1MgdmVyc2lvbiBGNDEsIGFuZCAzMiBHQiAKVHJhbnNjZW5kIEREUjQtMjY2NiBSQU0u CgpSZW1ha2UgYSBzcXVhc2hlZCB2ZXJzaW9uIG9mIHlvdXIgTEZTLgo9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQoKRXhpdCB0aGUgY2hyb290IGFuZCB1bm1vdW50IGFueSBm aWxlc3lzdGVtcyB0aGF0IGFyZSBhc3NvY2lhdGVkIHdpdGgKdGhlICRMRlMgZGlyZWN0b3J5LiAg IEF0IHRoaXMgcG9pbnQsIGl0IGlzIGEgZ29vZCBpZGVhIHRvIGRvIGEgc3lzdGVtCnNodXRkb3du IGFuZCByZXN0YXJ0IHRvIGVuc3VyZSB0aGF0IHRoZSBMRlMgZGlyZWN0b3J5IGlzIHVudXNlZCBh bmQKaW4gYSBxdWllc2NlbnQgc3RhdGUuICAgTWFrZSBzdXJlIExGUyBpcyBzZXQgYWdhaW4gYWZ0 ZXIgdGhlIHJlYm9vdC4KCiMtLS0tLS0tLS0tLS0gQ3V0IGFuZCBQYXN0ZSBzdGFydAojIFNldCBM RlMgdmFsdWUgYXMgbmVlZGVkLi4uCmV4cG9ydCBMRlM9L21udC9sZnMKY2QgL2hvbWUvdGVvLWVu LW1pbmcKZWNobyAkTEZTCnJtIC1mIHJvb3Quc2ZzCnN1ZG8gbXYgL21udC9sZnMvc291cmNlcy8g L2hvbWUvdGVvLWVuLW1pbmcvCnN1ZG8gbWtzcXVhc2hmcyAkTEZTIHJvb3Quc2ZzIC1jb21wIHh6 CiMtLS0tLS0tLS0tLS0gQ3V0IGFuZCBQYXN0ZSBlbmQKCihvbWl0IHRoZSAtY29tcCB4eiBpZiB5 b3VyIHNxdWFzaGZzIHRvb2xzIGRvbid0IHN1cHBvcnQgeHogY29tcHJlc3Npb24pLgoKTU9ESUZZ IFRIRSBMSVZFIENEL0RWRCBJTUFHRQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpjZCAv aG9tZS90ZW8tZW4tbWluZy9Eb3dubG9hZHMKY3AgLXYgL2hvbWUvdGVvLWVuLW1pbmcvcm9vdC5z ZnMgbGl2ZS9ib290LyQodW5hbWUgLW0pCmNwIC12ICRMRlMvYm9vdC92bWxpbnV6LTUuNS43LXR1 cnJpdG9wc2lzLmRvaHJuaWkudGVvLmVuLm1pbmcgCmxpdmUvYm9vdC8kKHVuYW1lIC1tKS92bWxp bnV6CgpDcmVhdGUgdGhlIGxpdmUgQ0QvRFZEIGlzbyBpbWFnZSB1c2luZyB3aGF0ZXZlciBpc28g Y3JlYXRpb24gdG9vbCB5b3UKaGF2ZS4gICBJbiB0aGlzIGV4YW1wbGUsIGl0IGlzICdnZW5pc29p bWFnZSc6CgojLS0tLS0tLS0tLS0tIEN1dCBhbmQgUGFzdGUgc3RhcnQKZ2VuaXNvaW1hZ2UgLW8g dGVvLWVuLW1pbmctbGludXgtMjAyMC4wMy1maW5hbC1saXZlLWNkLWR2ZC5pc28gICAgIFwKICAg ICAgICAgIC1iIGJvb3QvaXNvbGludXgvaXNvbGludXguYmluIFwKICAgICAgICAgIC1jIGJvb3Qu Y2F0ICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgIC1uby1lbXVsLWJvb3QgICAgICAgICAg ICAgICAgIFwKICAgICAgICAgIC1ib290LWxvYWQtc2l6ZSA0ICAgICAgICAgICAgIFwKICAgICAg ICAgIC1ib290LWluZm8tdGFibGUgICAgICAgICAgICAgIFwKICAgICAgICAgIC1qb2xpZXQgLWwg LVIgICAgICAgICAgICAgICAgIFwKICAgICAgICAgIGxpdmUKCnJtIC1yZiBsaXZlICAgICAgICAg ICAjIyMgT1BUSU9OQUwKIy0tLS0tLS0tLS0tLSBDdXQgYW5kIFBhc3RlIGVuZAoKTElWRSBDRC9E VkQgQk9PVFMgV0lUSCBLRVJORUwgUEFOSUMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KCkFmdGVyIHBhdGNoaW5nIExpbnV4IEtlcm5lbCA1LjUuNyB0byBhZGQgc3VwcG9ydCBm b3IgQVVGUyBmaWxlc3lzdGVtLCAKdGhlIGdlbmVyYXRlZCBMaXZlIENEL0RWRCBzdGlsbCBib290 cwp3aXRoIGEga2VybmVsIHBhbmljLgoKVGhlIGVycm9yIG1lc3NhZ2UgaXMgYXMgZm9sbG93czoK CiJlbmQgS2VybmVsIHBhbmljIC0gbm90IHN5bmNpbmc6IEF0dGVtcHRlZCB0byBraWxsIGluaXQh IGV4aXQgCmNvZGU9MHgwMDAwMDIwMCIKCkFmdGVyIGhvdXJzIG9mIHRyb3VibGVzaG9vdGluZywg SSB0aGluayB0aGF0IHRoZSBwcm9ibGVtIG1heSBsaWUgd2l0aCAKdGhlIGluaXRyYW1mcyAoYnVz eWJveCBiYXNlZCByYW1kaXNrKSBvciB0aGUgZm9sbG93aW5nCnNjcmlwdCBpbml0LnNoLiBUaGUg Zm9sbG93aW5nIHNjcmlwdCBpbml0LnNoIG1heSBuZWVkIHRvIGJlIG1vZGlmaWVkIHRvIAphbGxv dyB0aGUgTGl2ZSBDRC9EVkQgdG8gYm9vdCBzdWNjZXNzZnVsbHkuCgpJIGhvcGUgdGhhdCB0aGUg TEZTIGNvbW11bml0eSB3b3VsZCBiZSBhYmxlIHRvIHNwZW5kIHNvbWUgdGltZSBsb29raW5nIAph dCBpbml0LnNoIGFuZCBtb2RpZnkgaXQgc28gdGhhdCB0aGUgcmVzdWx0YW50IExpdmUgQ0QvRFZE CndpbGwgYmUgYWJsZSB0byBib290IHN1Y2Nlc3NmdWxseS4KCkkgd291bGQgbGlrZSB0byB0aGFu ayBhbGwgb2YgeW91IGluIGFkdmFuY2UuCgpUaGUgb3JpZ2luYWwgc2NyaXB0IGluaXQuc2ggKDgg eWVhcnMgYWdvKSBpcyByZXByb2R1Y2VkIGFzIGZvbGxvd3M6CgpBRERFTkRVTTogdiBDdXQgYW5k IHNhdmUgdGhlIHJlbWFpbmRlciBvZiB0aGlzIGZpbGUgYXMgCiRMRlMvc291cmNlcy9pbml0LnNo IHYKIyEvYmluL2J1c3lib3ggc2gKIwojIFRoaXMgZmlsZSBpcyBhIG1vZGlmaWVkIHZlcnNpb24g b2Y6CiMKIyBJbml0cmFtZnMgYm9vdCBzY3JpcHQgMS4zLjEgKDIwMTItMDItMDkpCiMgQ29weXJp Z2h0IChjKSAyMDEwLTIwMTIgICBNYXJjZWwgdmFuIGRlbiBCb2VyCiMKIyBQZXJtaXNzaW9uIGlz IGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcg CmEgY29weQojIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBm aWxlcyAodGhlICJTb2Z0d2FyZSIpLCAKdG8KIyBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0 IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIAp0aGUKIyByaWdodHMg dG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNl bnNlLCAKYW5kL29yCiMgc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0 IHBlcnNvbnMgdG8gd2hvbSB0aGUgClNvZnR3YXJlIGlzCiMgZnVybmlzaGVkIHRvIGRvIHNvLCBz dWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKIwojIFRoZSBhYm92ZSBjb3B5cmln aHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIAppbmNsdWRlZCBp bgojIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoj CiMgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0Yg QU5ZIEtJTkQsIApFWFBSRVNTIE9SCiMgSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRF RCBUTyBUSEUgV0FSUkFOVElFUyBPRiAKTUVSQ0hBTlRBQklMSVRZLAojIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIApTSEFM TCBUSEUKIyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENM QUlNLCBEQU1BR0VTIE9SIE9USEVSCiMgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBP RiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIApBUklTSU5HCiMgRlJPTSwgT1VUIE9GIE9S IElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiAKREVB TElOR1MKIyBJTiBUSEUgU09GVFdBUkUuCgojIEZTIGxheW91dCBhdCB0aGUgc3RhcnQgb2YgdGhp cyBzY3JpcHQ6CiMgLSAvYm9vdC9pZF9sYWJlbAojIC0gL2Jpbi9idXN5Ym94CiMgLSAvZGV2L2Nv bnNvbGUgKGNyZWF0ZWQgYnkga2VybmVsKQojIC0gL2luaXQgKHRoaXMgZmlsZSkKCnNldCAtZQoK QVJDSD0iPEFSQ0g+IgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj Iwpjb3B5QmluZE1vdW50KCkgeyAjIENPUFkvQklORCBMSVZFQ0QgTU9ERSAjCiMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMgVGhpcyBmdW5jdGlvbiBiaW5kLW1v dW50cyBkaXJlY3RvcmllcyB3aGljaCBhcmUgZGVzaWduZWQgdG8gYmUgY2FwYWJsZSAKb2YKIyBy ZWFkLW9ubHkgYWNjZXNzIGFuZCBjb3BpZXMgdGhlIHJlbWFpbmluZyBkaXJlY3RvcmllcyB0byBh IHRtcGZzLgojCiMgVGhlIGRvd25zaWRlIG9mIHRoaXMgbWV0aG9kIGlzIHRoYXQgdGhlIHJlc3Vs dGluZyByb290IGZpbGVzeXN0ZW0gaXMgCm5vdAojIGZ1bGx5IHdyaXRhYmxlLiBTbywgZm9yIGV4 YW1wbGUsIGluc3RhbGxhdGlvbiBvZiBuZXcgcHJvZ3JhbXMgd2lsbCBub3QgCmJlCiMgcG9zc2li bGUuCiMKIyBIb3dldmVyLCB0aGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHdpdGhvdXQgYW55IG1v ZGlmaWNhdGlvbiB0byB0aGUgCmtlcm5lbCBhbmQKIyBpcyB0aGVyZWZvcmUgcGVyZmVjdCBmb3Ig dXNlIGFzIGEgZmFsbGJhY2sgaWYgb3RoZXIgb3B0aW9ucyBhcmUgbm90IAphdmFpbGFibGUuCgoj IE1vdW50IGEgdG1wZnMgd2hlcmUgdGhlIG5ldyByb290ZnMgd2lsbCBiZS4KbW91bnQgLXQgdG1w ZnMgdG1wZnMgJHtST09UfSAjIEFsbG93cyByZW1vdW50aW5nIHJvb3QgaW4gdGhlIGJvb3RzY3Jp cHRzCgojIEJpbmQgbW91bnQgcmVhZC1vbmx5IGZpbGVzeXN0ZW1zLCBjb3B5IHRoZSByZXN0CmNk IC9tbnQvc3lzdGVtCmZvciBkaXIgaW4gJChscyAtMSk7IGRvCiAgICAgY2FzZSAke2Rpcn0gaW4K ICAgICAgICAgbG9zdCtmb3VuZCkKICAgICAgICAgICAgIDs7CiAgICAgICAgIGJpbiB8IGJvb3Qg fCBsaWIgfCBvcHQgfCBzYmluIHwgdXNyKQogICAgICAgICAgICAgbWtkaXIgJHtST09UfS8ke2Rp cn0KICAgICAgICAgICAgIG1vdW50IC0tYmluZCAke2Rpcn0gJHtST09UfS8ke2Rpcn0KICAgICAg ICAgICAgIDs7CiAgICAgICAgICopCiAgICAgICAgICAgICBjcCAtUiAke2Rpcn0gJHtST09UfQog ICAgICAgICAgICAgOzsKICAgICBlc2FjCmRvbmUKY2QgLwoKIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwp9OyB1bmlvbk1vdW50KCkgeyAjIFVOSU9ORlMvQVVG UyBMSVZFQ0QgTU9ERSAjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMKCiMgQSB1bmlvbiBtb3VudCB0YWtlcyBvbmUgb3IgbW9yZSBkaXJlY3RvcmllcyBhbmQg Y29tYmluZXMgdGhlbSAKdHJhbnNwYXJhbnRseQojIGluIGEgdGhpcmQuIFRoaXMgZnVuY3Rpb24g Y3JlYXRlcyBhIHdyaXRhYmxlIGRpcmVjdG9yeSBpbiBtZW1vcnkgCih0bXBmcykgYW5kCiMgdXNl cyBpdCB0byBvdmVybGF5IHRoZSByZWFkLW9ubHkgc3lzdGVtIGltYWdlLCByZXN1bHRpbmcgaW4g YSBmdWxseSAKd3JpdGFibGUKIyByb290IGZpbGUgc3lzdGVtLgojCiMgVGhlIG9ubHkgZG93bnNp ZGUgdG8gdGhpcyBtZXRob2QgaXMgdGhhdCBpdCByZXF1aXJlcyBhIHVuaW9uIHR5cGUgCmZpbGVz eXN0ZW0KIyBpbiB0aGUga2VybmVsLCB3aGljaCBjYW4gb25seSBiZSBhY2NvbXBsaXNoZWQgYnkg cGF0Y2hpbmcgdGhlIGtlcm5lbCAKYXMgdGhlcmUKIyBpcyBubyBzdWNoIGZlYXR1cmUgaW4gYSB2 YW5pbGxhIGtlcm5lbC4KCm1rZGlyIC1wIC9tbnQvd3JpdGFibGUKbW91bnQgLXQgdG1wZnMgLW8g cncgdG1wZnMgL21udC93cml0YWJsZQoKVU5JT05GU09QVD0iL21udC93cml0YWJsZT1ydzovbW50 L3N5c3RlbT1ybyIKQVVGU09QVD0iL21udC93cml0YWJsZT1ydzovbW50L3N5c3RlbT1ybyIKbW91 bnQgLXQgdW5pb25mcyAtbyBkaXJzPSR7VU5JT05GU09QVH0gdW5pb25mcyAke1JPT1R9IDI+IC9k ZXYvbnVsbCB8fCBcCm1vdW50IC10IGF1ZnMgLW8gYnI9JHtBVUZTT1BUfSBub25lICR7Uk9PVH0g Mj4gL2Rldi9udWxsIHx8IFwKewogICAgICMgSWYgVW5pb25GUyBmYWlscywgZmFsbCBiYWNrIHRv IGNvcHkvYmluZCBtb3VudGluZwogICAgIGNvcHlCaW5kTW91bnQKfQoKIyMjIyMjIyMjIyMjIyMj IyMjIyMjIwp9ICMgRU5EIE9GIEZVTkNUSU9OUyAjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMg TWFrZSByZXF1aXJlZCBhcHBsZXRzIGVhc2llciB0byBhY2Nlc3MKZm9yIGFwcGxldCBpbiBjYXQg Y2htb2QgY3AgY3V0IGdyZXAgbHMgbWtkaXIgbWtub2QgbW91bnQgdW1vdW50IApzd2l0Y2hfcm9v dCBcCiAgICAgcm0gbXYgdmkgY3BpbyB0YXIgbWtlMmZzIHN5bmMgZmRpc2sgZGQgOyBkbwogICAg IC9iaW4vYnVzeWJveCBsbiAvYmluL2J1c3lib3ggL2Jpbi8ke2FwcGxldH0KZG9uZQoKIyBDbGVh ciB0aGUgc2NyZWVuCiNjbGVhciAjIERvbid0ISBUaGlzIHdpbGwgY2xlYXIgdGhlIExpbnV4IGJv b3QgbG9nbyB3aGVuIHVzaW5nIGEgCmZyYW1lYnVmZmVyLgogICAgICAgICMgSWYgeW91IHdhbnQg dG8gY2xlYXIgdGhlIHNjcmVlbiBvbiBib290IGFkZCB0aGUgImNsZWFyIiBjb21tYW5kIAp0bwog ICAgICAgICMgJy91c3Ivc2hhcmUvbGl2ZS9zZWNfaW5pdC5zaCcgaW4gdGhlIHN5c3RlbSBpbWFn ZS4KCiMgQ3JlYXRlIGRldmljZSBub2RlcyByZXF1aXJlZCB0byBydW4gdGhpcyBzY3JpcHQKIyBO b3RlOiAvZGV2L2NvbnNvbGUgd2lsbCBhbHJlYWR5IGJlIGF2YWlsYWJsZSBpbiB0aGUgcmFtZnMK bWtub2QgL2Rldi9udWxsIGMgIDEgIDMKCm1rbm9kIC9kZXYvc2NkMCBiIDExICAwICAjICstLS0t LS0tLQpta25vZCAvZGV2L3NjZDEgYiAxMSAgMSAgIyB8Cm1rbm9kIC9kZXYvc2NkMiBiIDExICAy ICAjIHwKbWtub2QgL2Rldi9zY2QzIGIgMTEgIDMgICMgfAogICAgICAgICAgICAgICAgICAgICAg ICAgICMgfApta25vZCAvZGV2L2hkYyAgYiAyMiAgMCAgIyB8CiAgICAgICAgICAgICAgICAgICAg ICAgICAgIyB8Cm1rbm9kIC9kZXYvc2RhICBiICA4ICAwICAjIHwKbWtub2QgL2Rldi9zZGExIGIg IDggIDEgICMgfApta25vZCAvZGV2L3NkYTIgYiAgOCAgMiAgIyB8Cm1rbm9kIC9kZXYvc2RhMyBi ICA4ICAzICAjIHwKbWtub2QgL2Rldi9zZGE0IGIgIDggIDQgICMgfAogICAgICAgICAgICAgICAg ICAgICAgICAgICMgfApta25vZCAvZGV2L3NkYiAgYiAgOCAxNiAgIyB8ICAgIDwtLS0tCm1rbm9k IC9kZXYvc2RiMSBiICA4IDE3ICAjIHwgICAgICAgIERldmljZXMgd2hpY2ggY291bGQgYmUgb3Ig Y29udGFpbiAKdGhlCm1rbm9kIC9kZXYvc2RiMiBiICA4IDE4ICAjIHwgICAgICAgIGJvb3QgbWVk aXVtLi4uCm1rbm9kIC9kZXYvc2RiMyBiICA4IDE5ICAjIHwKbWtub2QgL2Rldi9zZGI0IGIgIDgg MjAgICMgfAogICAgICAgICAgICAgICAgICAgICAgICAgICMgfApta25vZCAvZGV2L3NkYyAgYiAg OCAzMiAgIyB8Cm1rbm9kIC9kZXYvc2RjMSBiICA4IDMzICAjIHwKbWtub2QgL2Rldi9zZGMyIGIg IDggMzQgICMgfApta25vZCAvZGV2L3NkYzMgYiAgOCAzNSAgIyB8Cm1rbm9kIC9kZXYvc2RjNCBi ICA4IDM2ICAjIHwKICAgICAgICAgICAgICAgICAgICAgICAgICAjIHwKbWtub2QgL2Rldi9zZGQg IGIgIDggNDggICMgfApta25vZCAvZGV2L3NkZDEgYiAgOCA0OSAgIyB8Cm1rbm9kIC9kZXYvc2Rk MiBiICA4IDUwICAjIHwKbWtub2QgL2Rldi9zZGQzIGIgIDggNTEgICMgfApta25vZCAvZGV2L3Nk ZDQgYiAgOCA1MiAgIyArLS0tLS0tLS0KCiMgQ3JlYXRlIG1vdW50IHBvaW50cyBmb3IgZmlsZXN5 c3RlbXMKbWtkaXIgLXAgL21udC9tZWRpdW0KbWtkaXIgLXAgL21udC9zeXN0ZW0KbWtkaXIgLXAg L21udC9yb290ZnMKCiMgTW91bnQgdGhlIC9wcm9jIGZpbGVzeXN0ZW0gKGVuYWJsZXMgZmlsZXN5 c3RlbSBkZXRlY3Rpb24gZm9yICdtb3VudCcpCm1rZGlyIC9wcm9jCm1vdW50IC10IHByb2MgcHJv YyAvcHJvYwoKIyBJbnZva2UgYnVzeWJveCBpZiByZXF1ZXN0ZWQgdmlhIHRoZSBrZXJuZWwgY29t bWFuZCBsaW5lLgppZiBbIGBncmVwIC1jICJidXN5Ym94IiAvcHJvYy9jbWRsaW5lYCAtbmUgIjAi IF07IHRoZW4KICAgICBlY2hvICJCdXN5Ym94IHJlcXVlc3RlZCI7CiAgICAgYnVzeWJveCBzaApm aQoKIyBTZWFyY2ggZm9yLCBhbmQgbW91bnQgdGhlIGJvb3QgbWVkaXVtCkxBQkVMPSIkKGNhdCAv Ym9vdC9pZF9sYWJlbCkiCmZvciBkZXZpY2UgaW4gJChscyAvZGV2KTsgZG8KICAgICBbICIke2Rl dmljZX0iID09ICJjb25zb2xlIiBdICYmIGNvbnRpbnVlCiAgICAgWyAiJHtkZXZpY2V9IiA9PSAi bnVsbCIgICAgXSAmJiBjb250aW51ZQoKICAgICBtb3VudCAtbyBybyAvZGV2LyR7ZGV2aWNlfSAv bW50L21lZGl1bSAyPiAvZGV2L251bGwgJiYgXAogICAgIGlmIFsgIiQoY2F0IC9tbnQvbWVkaXVt L2Jvb3QvJHtBUkNIfS9pZF9sYWJlbCkiICE9ICIke0xBQkVMfSIgXTsgCnRoZW4KICAgICAgICAg dW1vdW50IC9tbnQvbWVkaXVtCiAgICAgZWxzZQogICAgICAgICBERVZJQ0U9IiR7ZGV2aWNlfSIK ICAgICAgICAgYnJlYWsKICAgICBmaQpkb25lCgppZiBbICIke0RFVklDRX0iID09ICIiIF07IHRo ZW4KICAgICBlY2hvICJGQVRBTDogQm9vdCBtZWRpdW0gbm90IGZvdW5kLiIKICAgICAvYmluL2J1 c3lib3ggc2gKZmkKCiMgTW91bnQgdGhlIHN5c3RlbSBpbWFnZQptb3VudCAtdCBzcXVhc2hmcyAt byBybyxsb29wIC9tbnQvbWVkaXVtL2Jvb3QvJHtBUkNIfS9yb290LnNmcyAKL21udC9zeXN0ZW0g fHwgewogICAgIGVjaG8gIkZBVEFMOiBCb290IG1lZGl1bSBmb3VuZCwgYnV0IHN5c3RlbSBpbWFn ZSBpcyBtaXNzaW5nLiIKICAgICAvYmluL2J1c3lib3ggc2gKfQoKIyBEZWZpbmUgd2hlcmUgdGhl IG5ldyByb290IGZpbGVzeXN0ZW0gd2lsbCBiZQpST09UPSIvbW50L3Jvb3RmcyIgIyBBbHNvIG5l ZWRlZCBmb3IgL3Vzci9zaGFyZS9saXZlL3NlY19pbml0LnNoCgojIFJ1biBpbiBib290YWJsZSBj ZCBtb2RlIGlmIHJlcXVlc3RlZCB2aWEgdGhlIGtlcm5lbCBjb21tYW5kIGxpbmUuCmlmIFsgYGdy ZXAgLWMgImJvb3RjZCIgL3Byb2MvY21kbGluZWAgLW5lICIwIiBdOyB0aGVuCiAgICAgZWNobyAi Qm9vdGNkIG1vZGUgKGJpbmQgbW91bnQpIHJlcXVlc3RlZCI7CiAgICAgY29weUJpbmRNb3VudApl bHNlCiAgICAgIyBTZWxlY3QgTGl2ZUNEIG1vZGUKICAgICB1bmlvbk1vdW50ICMgTWlnaHQgZmFs bCBiYWNrIHRvIGNvcHlCaW5kTW91bnQKZmkKCiMgVGVsbCBMRlMgdG8gc2tpcCBmc2NrIGR1cmlu ZyBzdGFydHVwOgo+ICRST09UL2Zhc3Rib290CgojIEdldCByaWQgb2YgLyBtYW5pcHVsYXRpb25z IGluIG1vdW50ZnMgc2NyaXB0OgpncmVwIC12ICcgXC8gJyAkUk9PVC9ldGMvcmMuZC9pbml0LmQv bW91bnRmcyA+ICRST09UL3RtcC9tb3VudGZzCnJtIC1mICRST09UL2V0Yy9yYy5kL2luaXQuZC9t b3VudGZzCm12ICRST09UL3RtcC9tb3VudGZzICRST09UL2V0Yy9yYy5kL2luaXQuZC9tb3VudGZz CmNobW9kICt4ICRST09UL2V0Yy9yYy5kL2luaXQuZC9tb3VudGZzCgojIE1vdmUgY3VycmVudCBt b3VudHMgdG8gZGlyZWN0b3JpZXMgYWNjZXNzaWJsZSBpbiB0aGUgbmV3IHJvb3QKY2QgL21udApm b3IgZGlyIGluICQobHMgLTEpOyBkbwogICAgIGlmIFsgIiR7ZGlyfSIgIT0gInJvb3RmcyIgXTsg dGhlbgogICAgICAgICBta2RpciAtcCAke1JPT1R9L21udC8uYm9vdC8ke2Rpcn0KICAgICAgICAg bW91bnQgLS1tb3ZlIC9tbnQvJHtkaXJ9ICR7Uk9PVH0vbW50Ly5ib290LyR7ZGlyfQogICAgIGZp CmRvbmUKY2QgLwoKIyBSdW4gc2Vjb25kYXJ5IGluaXRpYWxpemF0aW9uIChpZiB0aGUgc3lzdGVt IHByb3ZpZGVzIGl0KQppZiBbIC14ICR7Uk9PVH0vdXNyL3NoYXJlL2xpdmUvc2VjX2luaXQuc2gg XTsgdGhlbgogICAgIC4gJHtST09UfS91c3Ivc2hhcmUvbGl2ZS9zZWNfaW5pdC5zaApmaQoKIyBD bGVhbiB1cAp1bW91bnQgL3Byb2MKCiMgU3dpdGNoIHRvIHRoZSBuZXcgcm9vdCBhbmQgbGF1bmNo IElOSVQhCmV4ZWMgc3dpdGNoX3Jvb3QgLWMgL2Rldi9jb25zb2xlICR7Uk9PVH0gL3NiaW4vaW5p dAoKCgoKCgoKLS0gCi0tLS0tQkVHSU4gRU1BSUwgU0lHTkFUVVJFLS0tLS0KClRoZSBHb3NwZWwg Zm9yIGFsbCBUYXJnZXRlZCBJbmRpdmlkdWFscyAoVElzKToKCltUaGUgTmV3IFlvcmsgVGltZXNd IE1pY3Jvd2F2ZSBXZWFwb25zIEFyZSBQcmltZSBTdXNwZWN0IGluIElsbHMgb2YKVS5TLiBFbWJh c3N5IFdvcmtlcnMKCkxpbms6IApodHRwczovL3d3dy5ueXRpbWVzLmNvbS8yMDE4LzA5LzAxL3Nj aWVuY2Uvc29uaWMtYXR0YWNrLWN1YmEtbWljcm93YXZlLmh0bWwKCioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqCgpTaW5nYXBvcmVhbiBNci4gVHVycml0b3BzaXMgRG9ocm5paSBU ZW8gRW4gTWluZydzIEFjYWRlbWljClF1YWxpZmljYXRpb25zIGFzIGF0IDE0IEZlYiAyMDE5IGFu ZCByZWZ1Z2VlIHNlZWtpbmcgYXR0ZW1wdHMgYXQgdGhlIApVbml0ZWQgTmF0aW9ucyBSZWZ1Z2Vl IEFnZW5jeSBCYW5na29rICgyMSBNYXIgMjAxNyksIGluIFRhaXdhbiAoNSBBdWcgCjIwMTkpIGFu ZCBBdXN0cmFsaWEgKDI1IERlYyAyMDE5IHRvIDkgSmFuIDIwMjApOgoKWzFdIGh0dHBzOi8vdGR0 ZW1jZXJ0cy53b3JkcHJlc3MuY29tLwoKWzJdIGh0dHBzOi8vdGR0ZW1jZXJ0cy5ibG9nc3BvdC5z Zy8KClszXSBodHRwczovL3d3dy5zY3JpYmQuY29tL3VzZXIvMjcwMTI1MDQ5L1Rlby1Fbi1NaW5n CgotLS0tLUVORCBFTUFJTCBTSUdOQVRVUkUtLS0tLQotLSAKaHR0cDovL2xpc3RzLmxpbnV4ZnJv bXNjcmF0Y2gub3JnL2xpc3RpbmZvL2xmcy1jaGF0CkZBUTogaHR0cDovL3d3dy5saW51eGZyb21z Y3JhdGNoLm9yZy9ibGZzL2ZhcS5odG1sClVuc3Vic2NyaWJlOiBTZWUgdGhlIGFib3ZlIGluZm9y bWF0aW9uIHBhZ2UK