Re: [PATCH v2 015/110] nilfs2: use PRIino format for i_ino
Viacheslav Dubeyko <[email protected]> Mon, 2 Mar 2026 22:34:45 +0000
| Newsgroups | org.kernel.vger.autofs,dev.linux.lists.fsverity,dev.linux.lists.netfs,dev.linux.lists.ntfs3,dev.linux.lists.nvdimm,dev.linux.lists.ocfs2-devel,dev.linux.lists.v9fs,net.sourceforge.lists.linux-f2fs-devel,org.freedesktop.lists.amd-gfx,org.freedesktop.lists.dri-devel,org.infradead.lists.linux-mtd,org.kernel.vger.audit,org.kernel.vger.bpf,org.kernel.vger.ceph-devel,org.kernel.vger.ecryptfs,org.kernel.vger.linux-bluetooth,org.kernel.vger.linux-can,org.kernel.vger.linux-cifs,org.kernel.vger.linux-ext4,org.kernel.vger.linux-fscrypt,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-hams,org.kernel.vger.linux-integrity,org.kernel.vger.linux-kernel,org.kernel.vger.linux-media,org.kernel.vger.linux-nfs,org.kernel.vger.linux-nilfs,org.kernel.vger.linux-perf-users,org.kernel.vger.linux-sctp,org.kernel.vger.linux-security-module,org.kernel.vger.linux-trace-kernel,org.kernel.vger.linux-unionfs,org.kernel.vger.linux-x25,org.kernel.vger.linux-xfs,org.kernel.vger.netdev,org.kernel.vger.selinux,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
T24gTW9uLCAyMDI2LTAzLTAyIGF0IDE1OjIzIC0wNTAwLCBKZWZmIExheXRvbiB3cm90ZToNCj4g Q29udmVydCBuaWxmczIgaV9pbm8gZm9ybWF0IHN0cmluZ3MgdG8gdXNlIHRoZSBQUklpbm8gZm9y bWF0DQo+IG1hY3JvIGluIHByZXBhcmF0aW9uIGZvciB0aGUgd2lkZW5pbmcgb2YgaV9pbm8gdmlh IGtpbm9fdC4NCj4gDQo+IEluIHRyYWNlIGV2ZW50cywgY2hhbmdlIF9fZmllbGQoaW5vX3QsIC4u LikgdG8gX19maWVsZCh1NjQsIC4uLikNCj4gYW5kIHVwZGF0ZSBUUF9wcmludGsgZm9ybWF0IHN0 cmluZ3MgdG8gJWxsdS8lbGx4IHRvIG1hdGNoIHRoZQ0KPiB3aWRlbmVkIGZpZWxkIHR5cGUuDQo+ IA0KPiBTaWduZWQtb2ZmLWJ5OiBKZWZmIExheXRvbiA8amxheXRvbkBrZXJuZWwub3JnPg0KPiAt LS0NCj4gIGZzL25pbGZzMi9hbGxvYy5jICAgICAgICAgICAgIHwgMTAgKysrKystLS0tLQ0KPiAg ZnMvbmlsZnMyL2JtYXAuYyAgICAgICAgICAgICAgfCAgMiArLQ0KPiAgZnMvbmlsZnMyL2J0bm9k ZS5jICAgICAgICAgICAgfCAgMiArLQ0KPiAgZnMvbmlsZnMyL2J0cmVlLmMgICAgICAgICAgICAg fCAxMiArKysrKystLS0tLS0NCj4gIGZzL25pbGZzMi9kaXIuYyAgICAgICAgICAgICAgIHwgMTIg KysrKysrLS0tLS0tDQo+ICBmcy9uaWxmczIvZGlyZWN0LmMgICAgICAgICAgICB8ICA0ICsrLS0N Cj4gIGZzL25pbGZzMi9nY2lub2RlLmMgICAgICAgICAgIHwgIDIgKy0NCj4gIGZzL25pbGZzMi9p bm9kZS5jICAgICAgICAgICAgIHwgIDggKysrKy0tLS0NCj4gIGZzL25pbGZzMi9tZHQuYyAgICAg ICAgICAgICAgIHwgIDIgKy0NCj4gIGZzL25pbGZzMi9uYW1laS5jICAgICAgICAgICAgIHwgIDIg Ky0NCj4gIGZzL25pbGZzMi9zZWdtZW50LmMgICAgICAgICAgIHwgIDIgKy0NCj4gIGluY2x1ZGUv dHJhY2UvZXZlbnRzL25pbGZzMi5oIHwgMTIgKysrKysrLS0tLS0tDQo+ICAxMiBmaWxlcyBjaGFu Z2VkLCAzNSBpbnNlcnRpb25zKCspLCAzNSBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQg YS9mcy9uaWxmczIvYWxsb2MuYyBiL2ZzL25pbGZzMi9hbGxvYy5jDQo+IGluZGV4IGU3ZWViYjA0 ZjlhNDA4MGEzOWYxN2Q0MTIzZTU4ZWQ3ZGY2YjJmNGIuLmEzYzU1OWM4NmU1YTRjNjNiMWM5ZGQ0 Y2ExMzdmMjQ3NDljM2VlODcgMTAwNjQ0DQo+IC0tLSBhL2ZzL25pbGZzMi9hbGxvYy5jDQo+ICsr KyBiL2ZzL25pbGZzMi9hbGxvYy5jDQo+IEBAIC03MDcsNyArNzA3LDcgQEAgdm9pZCBuaWxmc19w YWxsb2NfY29tbWl0X2ZyZWVfZW50cnkoc3RydWN0IGlub2RlICppbm9kZSwNCj4gIA0KPiAgCWlm ICghbmlsZnNfY2xlYXJfYml0X2F0b21pYyhsb2NrLCBncm91cF9vZmZzZXQsIGJpdG1hcCkpDQo+ ICAJCW5pbGZzX3dhcm4oaW5vZGUtPmlfc2IsDQo+IC0JCQkgICAiJXMgKGlubz0lbHUpOiBlbnRy eSBudW1iZXIgJWxsdSBhbHJlYWR5IGZyZWVkIiwNCj4gKwkJCSAgICIlcyAoaW5vPSUiIFBSSWlu byAidSk6IGVudHJ5IG51bWJlciAlbGx1IGFscmVhZHkgZnJlZWQiLA0KPiAgCQkJICAgX19mdW5j X18sIGlub2RlLT5pX2lubywNCj4gIAkJCSAgICh1bnNpZ25lZCBsb25nIGxvbmcpcmVxLT5wcl9l bnRyeV9ucik7DQo+ICAJZWxzZQ0KPiBAQCAtNzQ4LDcgKzc0OCw3IEBAIHZvaWQgbmlsZnNfcGFs bG9jX2Fib3J0X2FsbG9jX2VudHJ5KHN0cnVjdCBpbm9kZSAqaW5vZGUsDQo+ICANCj4gIAlpZiAo IW5pbGZzX2NsZWFyX2JpdF9hdG9taWMobG9jaywgZ3JvdXBfb2Zmc2V0LCBiaXRtYXApKQ0KPiAg CQluaWxmc193YXJuKGlub2RlLT5pX3NiLA0KPiAtCQkJICAgIiVzIChpbm89JWx1KTogZW50cnkg bnVtYmVyICVsbHUgYWxyZWFkeSBmcmVlZCIsDQo+ICsJCQkgICAiJXMgKGlubz0lIiBQUklpbm8g InUpOiBlbnRyeSBudW1iZXIgJWxsdSBhbHJlYWR5IGZyZWVkIiwNCj4gIAkJCSAgIF9fZnVuY19f LCBpbm9kZS0+aV9pbm8sDQo+ICAJCQkgICAodW5zaWduZWQgbG9uZyBsb25nKXJlcS0+cHJfZW50 cnlfbnIpOw0KPiAgCWVsc2UNCj4gQEAgLTg2MSw3ICs4NjEsNyBAQCBpbnQgbmlsZnNfcGFsbG9j X2ZyZWV2KHN0cnVjdCBpbm9kZSAqaW5vZGUsIF9fdTY0ICplbnRyeV9ucnMsIHNpemVfdCBuaXRl bXMpDQo+ICAJCQlpZiAoIW5pbGZzX2NsZWFyX2JpdF9hdG9taWMobG9jaywgZ3JvdXBfb2Zmc2V0 LA0KPiAgCQkJCQkJICAgIGJpdG1hcCkpIHsNCj4gIAkJCQluaWxmc193YXJuKGlub2RlLT5pX3Ni LA0KPiAtCQkJCQkgICAiJXMgKGlubz0lbHUpOiBlbnRyeSBudW1iZXIgJWxsdSBhbHJlYWR5IGZy ZWVkIiwNCj4gKwkJCQkJICAgIiVzIChpbm89JSIgUFJJaW5vICJ1KTogZW50cnkgbnVtYmVyICVs bHUgYWxyZWFkeSBmcmVlZCIsDQo+ICAJCQkJCSAgIF9fZnVuY19fLCBpbm9kZS0+aV9pbm8sDQo+ ICAJCQkJCSAgICh1bnNpZ25lZCBsb25nIGxvbmcpZW50cnlfbnJzW2pdKTsNCj4gIAkJCX0gZWxz ZSB7DQo+IEBAIC05MDYsNyArOTA2LDcgQEAgaW50IG5pbGZzX3BhbGxvY19mcmVldihzdHJ1Y3Qg aW5vZGUgKmlub2RlLCBfX3U2NCAqZW50cnlfbnJzLCBzaXplX3Qgbml0ZW1zKQ0KPiAgCQkJCQkJ CSAgICAgIGxhc3RfbnJzW2tdKTsNCj4gIAkJCWlmIChyZXQgJiYgcmV0ICE9IC1FTk9FTlQpDQo+ ICAJCQkJbmlsZnNfd2Fybihpbm9kZS0+aV9zYiwNCj4gLQkJCQkJICAgImVycm9yICVkIGRlbGV0 aW5nIGJsb2NrIHRoYXQgb2JqZWN0IChlbnRyeT0lbGx1LCBpbm89JWx1KSBiZWxvbmdzIHRvIiwN Cj4gKwkJCQkJICAgImVycm9yICVkIGRlbGV0aW5nIGJsb2NrIHRoYXQgb2JqZWN0IChlbnRyeT0l bGx1LCBpbm89JSIgUFJJaW5vICJ1KSBiZWxvbmdzIHRvIiwNCj4gIAkJCQkJICAgcmV0LCAodW5z aWduZWQgbG9uZyBsb25nKWxhc3RfbnJzW2tdLA0KPiAgCQkJCQkgICBpbm9kZS0+aV9pbm8pOw0K PiAgCQl9DQo+IEBAIC05MjMsNyArOTIzLDcgQEAgaW50IG5pbGZzX3BhbGxvY19mcmVldihzdHJ1 Y3QgaW5vZGUgKmlub2RlLCBfX3U2NCAqZW50cnlfbnJzLCBzaXplX3Qgbml0ZW1zKQ0KPiAgCQkJ cmV0ID0gbmlsZnNfcGFsbG9jX2RlbGV0ZV9iaXRtYXBfYmxvY2soaW5vZGUsIGdyb3VwKTsNCj4g IAkJCWlmIChyZXQgJiYgcmV0ICE9IC1FTk9FTlQpDQo+ICAJCQkJbmlsZnNfd2Fybihpbm9kZS0+ aV9zYiwNCj4gLQkJCQkJICAgImVycm9yICVkIGRlbGV0aW5nIGJpdG1hcCBibG9jayBvZiBncm91 cD0lbHUsIGlubz0lbHUiLA0KPiArCQkJCQkgICAiZXJyb3IgJWQgZGVsZXRpbmcgYml0bWFwIGJs b2NrIG9mIGdyb3VwPSVsdSwgaW5vPSUiIFBSSWlubyAidSIsDQo+ICAJCQkJCSAgIHJldCwgZ3Jv dXAsIGlub2RlLT5pX2lubyk7DQo+ICAJCX0NCj4gIAl9DQo+IGRpZmYgLS1naXQgYS9mcy9uaWxm czIvYm1hcC5jIGIvZnMvbmlsZnMyL2JtYXAuYw0KPiBpbmRleCBjY2MxYTdhYTUyZDIwNjRkNTZi ODI2MDU4NTU0MjY0YzQ5OGQ1OTJmLi5lMTI5NzliYWMzYzNlZTVlYjdmY2MyYmYxNTZmZTZlNDhm YzY1YTdkIDEwMDY0NA0KPiAtLS0gYS9mcy9uaWxmczIvYm1hcC5jDQo+ICsrKyBiL2ZzL25pbGZz Mi9ibWFwLmMNCj4gQEAgLTMzLDcgKzMzLDcgQEAgc3RhdGljIGludCBuaWxmc19ibWFwX2NvbnZl cnRfZXJyb3Ioc3RydWN0IG5pbGZzX2JtYXAgKmJtYXAsDQo+ICANCj4gIAlpZiAoZXJyID09IC1F SU5WQUwpIHsNCj4gIAkJX19uaWxmc19lcnJvcihpbm9kZS0+aV9zYiwgZm5hbWUsDQo+IC0JCQkg ICAgICAiYnJva2VuIGJtYXAgKGlub2RlIG51bWJlcj0lbHUpIiwgaW5vZGUtPmlfaW5vKTsNCj4g KwkJCSAgICAgICJicm9rZW4gYm1hcCAoaW5vZGUgbnVtYmVyPSUiIFBSSWlubyAidSkiLCBpbm9k ZS0+aV9pbm8pOw0KPiAgCQllcnIgPSAtRUlPOw0KPiAgCX0NCj4gIAlyZXR1cm4gZXJyOw0KPiBk aWZmIC0tZ2l0IGEvZnMvbmlsZnMyL2J0bm9kZS5jIGIvZnMvbmlsZnMyL2J0bm9kZS5jDQo+IGlu ZGV4IDU2ODM2NzEyOTA5MjAxNzc1OTA3NDgzODg3ZThhMDAyMjg1MWJiZWMuLjNkNjRmM2E5MjIz ZTU2MDFkYzIzMzJhZTZlMTAwN2VkZDViNDgyN2IgMTAwNjQ0DQo+IC0tLSBhL2ZzL25pbGZzMi9i dG5vZGUuYw0KPiArKysgYi9mcy9uaWxmczIvYnRub2RlLmMNCj4gQEAgLTY0LDcgKzY0LDcgQEAg bmlsZnNfYnRub2RlX2NyZWF0ZV9ibG9jayhzdHJ1Y3QgYWRkcmVzc19zcGFjZSAqYnRuYywgX191 NjQgYmxvY2tucikNCj4gIAkJICogY2xlYXJpbmcgb2YgYW4gYWJhbmRvbmVkIGItdHJlZSBub2Rl IGlzIG1pc3Npbmcgc29tZXdoZXJlKS4NCj4gIAkJICovDQo+ICAJCW5pbGZzX2Vycm9yKGlub2Rl LT5pX3NiLA0KPiAtCQkJICAgICJzdGF0ZSBpbmNvbnNpc3RlbmN5IHByb2JhYmx5IGR1ZSB0byBk dXBsaWNhdGUgdXNlIG9mIGItdHJlZSBub2RlIGJsb2NrIGFkZHJlc3MgJWxsdSAoaW5vPSVsdSki LA0KPiArCQkJICAgICJzdGF0ZSBpbmNvbnNpc3RlbmN5IHByb2JhYmx5IGR1ZSB0byBkdXBsaWNh dGUgdXNlIG9mIGItdHJlZSBub2RlIGJsb2NrIGFkZHJlc3MgJWxsdSAoaW5vPSUiIFBSSWlubyAi dSkiLA0KPiAgCQkJICAgICh1bnNpZ25lZCBsb25nIGxvbmcpYmxvY2tuciwgaW5vZGUtPmlfaW5v KTsNCj4gIAkJZ290byBmYWlsZWQ7DQo+ICAJfQ0KPiBkaWZmIC0tZ2l0IGEvZnMvbmlsZnMyL2J0 cmVlLmMgYi9mcy9uaWxmczIvYnRyZWUuYw0KPiBpbmRleCBkZDBjOGU1NjBlZjZhMmM5NjUxNTAy NTMyMTkxNGUwZDczZjQxMTQ0Li41NzE2M2U5OTFmYmM0OWUyYmZiYTJmYTU0M2YxYjhkYmQ3Nzcx OGY0IDEwMDY0NA0KPiAtLS0gYS9mcy9uaWxmczIvYnRyZWUuYw0KPiArKysgYi9mcy9uaWxmczIv YnRyZWUuYw0KPiBAQCAtMzUzLDcgKzM1Myw3IEBAIHN0YXRpYyBpbnQgbmlsZnNfYnRyZWVfbm9k ZV9icm9rZW4oY29uc3Qgc3RydWN0IG5pbGZzX2J0cmVlX25vZGUgKm5vZGUsDQo+ICAJCSAgICAg bmNoaWxkcmVuIDw9IDAgfHwNCj4gIAkJICAgICBuY2hpbGRyZW4gPiBOSUxGU19CVFJFRV9OT0RF X05DSElMRFJFTl9NQVgoc2l6ZSkpKSB7DQo+ICAJCW5pbGZzX2NyaXQoaW5vZGUtPmlfc2IsDQo+ IC0JCQkgICAiYmFkIGJ0cmVlIG5vZGUgKGlubz0lbHUsIGJsb2NrbnI9JWxsdSk6IGxldmVsID0g JWQsIGZsYWdzID0gMHgleCwgbmNoaWxkcmVuID0gJWQiLA0KPiArCQkJICAgImJhZCBidHJlZSBu b2RlIChpbm89JSIgUFJJaW5vICJ1LCBibG9ja25yPSVsbHUpOiBsZXZlbCA9ICVkLCBmbGFncyA9 IDB4JXgsIG5jaGlsZHJlbiA9ICVkIiwNCj4gIAkJCSAgIGlub2RlLT5pX2lubywgKHVuc2lnbmVk IGxvbmcgbG9uZylibG9ja25yLCBsZXZlbCwNCj4gIAkJCSAgIGZsYWdzLCBuY2hpbGRyZW4pOw0K PiAgCQlyZXQgPSAxOw0KPiBAQCAtMzg0LDcgKzM4NCw3IEBAIHN0YXRpYyBpbnQgbmlsZnNfYnRy ZWVfcm9vdF9icm9rZW4oY29uc3Qgc3RydWN0IG5pbGZzX2J0cmVlX25vZGUgKm5vZGUsDQo+ICAJ CSAgICAgbmNoaWxkcmVuID4gTklMRlNfQlRSRUVfUk9PVF9OQ0hJTERSRU5fTUFYIHx8DQo+ICAJ CSAgICAgKG5jaGlsZHJlbiA9PSAwICYmIGxldmVsID4gTklMRlNfQlRSRUVfTEVWRUxfTk9ERV9N SU4pKSkgew0KPiAgCQluaWxmc19jcml0KGlub2RlLT5pX3NiLA0KPiAtCQkJICAgImJhZCBidHJl ZSByb290IChpbm89JWx1KTogbGV2ZWwgPSAlZCwgZmxhZ3MgPSAweCV4LCBuY2hpbGRyZW4gPSAl ZCIsDQo+ICsJCQkgICAiYmFkIGJ0cmVlIHJvb3QgKGlubz0lIiBQUklpbm8gInUpOiBsZXZlbCA9 ICVkLCBmbGFncyA9IDB4JXgsIG5jaGlsZHJlbiA9ICVkIiwNCj4gIAkJCSAgIGlub2RlLT5pX2lu bywgbGV2ZWwsIGZsYWdzLCBuY2hpbGRyZW4pOw0KPiAgCQlyZXQgPSAxOw0KPiAgCX0NCj4gQEAg LTQ1Myw3ICs0NTMsNyBAQCBzdGF0aWMgaW50IG5pbGZzX2J0cmVlX2JhZF9ub2RlKGNvbnN0IHN0 cnVjdCBuaWxmc19ibWFwICpidHJlZSwNCj4gIAlpZiAodW5saWtlbHkobmlsZnNfYnRyZWVfbm9k ZV9nZXRfbGV2ZWwobm9kZSkgIT0gbGV2ZWwpKSB7DQo+ICAJCWR1bXBfc3RhY2soKTsNCj4gIAkJ bmlsZnNfY3JpdChidHJlZS0+Yl9pbm9kZS0+aV9zYiwNCj4gLQkJCSAgICJidHJlZSBsZXZlbCBt aXNtYXRjaCAoaW5vPSVsdSk6ICVkICE9ICVkIiwNCj4gKwkJCSAgICJidHJlZSBsZXZlbCBtaXNt YXRjaCAoaW5vPSUiIFBSSWlubyAidSk6ICVkICE9ICVkIiwNCj4gIAkJCSAgIGJ0cmVlLT5iX2lu b2RlLT5pX2lubywNCj4gIAkJCSAgIG5pbGZzX2J0cmVlX25vZGVfZ2V0X2xldmVsKG5vZGUpLCBs ZXZlbCk7DQo+ICAJCXJldHVybiAxOw0KPiBAQCAtNTIxLDcgKzUyMSw3IEBAIHN0YXRpYyBpbnQg X19uaWxmc19idHJlZV9nZXRfYmxvY2soY29uc3Qgc3RydWN0IG5pbGZzX2JtYXAgKmJ0cmVlLCBf X3U2NCBwdHIsDQo+ICAgb3V0X25vX3dhaXQ6DQo+ICAJaWYgKCFidWZmZXJfdXB0b2RhdGUoYmgp KSB7DQo+ICAJCW5pbGZzX2VycihidHJlZS0+Yl9pbm9kZS0+aV9zYiwNCj4gLQkJCSAgIkkvTyBl cnJvciByZWFkaW5nIGItdHJlZSBub2RlIGJsb2NrIChpbm89JWx1LCBibG9ja25yPSVsbHUpIiwN Cj4gKwkJCSAgIkkvTyBlcnJvciByZWFkaW5nIGItdHJlZSBub2RlIGJsb2NrIChpbm89JSIgUFJJ aW5vICJ1LCBibG9ja25yPSVsbHUpIiwNCj4gIAkJCSAgYnRyZWUtPmJfaW5vZGUtPmlfaW5vLCAo dW5zaWduZWQgbG9uZyBsb25nKXB0cik7DQo+ICAJCWJyZWxzZShiaCk7DQo+ICAJCXJldHVybiAt RUlPOw0KPiBAQCAtMjEwNCw3ICsyMTA0LDcgQEAgc3RhdGljIGludCBuaWxmc19idHJlZV9wcm9w YWdhdGUoc3RydWN0IG5pbGZzX2JtYXAgKmJ0cmVlLA0KPiAgCWlmIChyZXQgPCAwKSB7DQo+ICAJ CWlmICh1bmxpa2VseShyZXQgPT0gLUVOT0VOVCkpIHsNCj4gIAkJCW5pbGZzX2NyaXQoYnRyZWUt PmJfaW5vZGUtPmlfc2IsDQo+IC0JCQkJICAgIndyaXRpbmcgbm9kZS9sZWFmIGJsb2NrIGRvZXMg bm90IGFwcGVhciBpbiBiLXRyZWUgKGlubz0lbHUpIGF0IGtleT0lbGx1LCBsZXZlbD0lZCIsDQo+ ICsJCQkJICAgIndyaXRpbmcgbm9kZS9sZWFmIGJsb2NrIGRvZXMgbm90IGFwcGVhciBpbiBiLXRy ZWUgKGlubz0lIiBQUklpbm8gInUpIGF0IGtleT0lbGx1LCBsZXZlbD0lZCIsDQo+ICAJCQkJICAg YnRyZWUtPmJfaW5vZGUtPmlfaW5vLA0KPiAgCQkJCSAgICh1bnNpZ25lZCBsb25nIGxvbmcpa2V5 LCBsZXZlbCk7DQo+ICAJCQlyZXQgPSAtRUlOVkFMOw0KPiBAQCAtMjE0Niw3ICsyMTQ2LDcgQEAg c3RhdGljIHZvaWQgbmlsZnNfYnRyZWVfYWRkX2RpcnR5X2J1ZmZlcihzdHJ1Y3QgbmlsZnNfYm1h cCAqYnRyZWUsDQo+ICAJICAgIGxldmVsID49IE5JTEZTX0JUUkVFX0xFVkVMX01BWCkgew0KPiAg CQlkdW1wX3N0YWNrKCk7DQo+ICAJCW5pbGZzX3dhcm4oYnRyZWUtPmJfaW5vZGUtPmlfc2IsDQo+ IC0JCQkgICAiaW52YWxpZCBidHJlZSBsZXZlbDogJWQgKGtleT0lbGx1LCBpbm89JWx1LCBibG9j a25yPSVsbHUpIiwNCj4gKwkJCSAgICJpbnZhbGlkIGJ0cmVlIGxldmVsOiAlZCAoa2V5PSVsbHUs IGlubz0lIiBQUklpbm8gInUsIGJsb2NrbnI9JWxsdSkiLA0KPiAgCQkJICAgbGV2ZWwsICh1bnNp Z25lZCBsb25nIGxvbmcpa2V5LA0KPiAgCQkJICAgYnRyZWUtPmJfaW5vZGUtPmlfaW5vLA0KPiAg CQkJICAgKHVuc2lnbmVkIGxvbmcgbG9uZyliaC0+Yl9ibG9ja25yKTsNCj4gZGlmZiAtLWdpdCBh L2ZzL25pbGZzMi9kaXIuYyBiL2ZzL25pbGZzMi9kaXIuYw0KPiBpbmRleCBiMjQzMTk5MDM2ZGZh MWFiMjI5OWVmYWFhNWJkZjVkYTJkMTU5ZmYyLi5iMTgyZGEwNzZjNThjNDgxMzE0NWJjM2U1MDFh MWU5YTE4OGJjZTg1IDEwMDY0NA0KPiAtLS0gYS9mcy9uaWxmczIvZGlyLmMNCj4gKysrIGIvZnMv bmlsZnMyL2Rpci5jDQo+IEBAIC0xNTAsNyArMTUwLDcgQEAgc3RhdGljIGJvb2wgbmlsZnNfY2hl Y2tfZm9saW8oc3RydWN0IGZvbGlvICpmb2xpbywgY2hhciAqa2FkZHIpDQo+ICANCj4gIEViYWRz aXplOg0KPiAgCW5pbGZzX2Vycm9yKHNiLA0KPiAtCQkgICAgInNpemUgb2YgZGlyZWN0b3J5ICMl bHUgaXMgbm90IGEgbXVsdGlwbGUgb2YgY2h1bmsgc2l6ZSIsDQo+ICsJCSAgICAic2l6ZSBvZiBk aXJlY3RvcnkgIyUiIFBSSWlubyAidSBpcyBub3QgYSBtdWx0aXBsZSBvZiBjaHVuayBzaXplIiwN Cj4gIAkJICAgIGRpci0+aV9pbm8pOw0KPiAgCWdvdG8gZmFpbDsNCj4gIEVzaG9ydDoNCj4gQEAg LTE2OSw3ICsxNjksNyBAQCBzdGF0aWMgYm9vbCBuaWxmc19jaGVja19mb2xpbyhzdHJ1Y3QgZm9s aW8gKmZvbGlvLCBjaGFyICprYWRkcikNCj4gIAllcnJvciA9ICJkaXNhbGxvd2VkIGlub2RlIG51 bWJlciI7DQo+ICBiYWRfZW50cnk6DQo+ICAJbmlsZnNfZXJyb3Ioc2IsDQo+IC0JCSAgICAiYmFk IGVudHJ5IGluIGRpcmVjdG9yeSAjJWx1OiAlcyAtIG9mZnNldD0lbHUsIGlub2RlPSVsdSwgcmVj X2xlbj0lemQsIG5hbWVfbGVuPSVkIiwNCj4gKwkJICAgICJiYWQgZW50cnkgaW4gZGlyZWN0b3J5 ICMlIiBQUklpbm8gInU6ICVzIC0gb2Zmc2V0PSVsdSwgaW5vZGU9JWx1LCByZWNfbGVuPSV6ZCwg bmFtZV9sZW49JWQiLA0KPiAgCQkgICAgZGlyLT5pX2lubywgZXJyb3IsIChmb2xpby0+aW5kZXgg PDwgUEFHRV9TSElGVCkgKyBvZmZzLA0KPiAgCQkgICAgKHVuc2lnbmVkIGxvbmcpbGU2NF90b19j cHUocC0+aW5vZGUpLA0KPiAgCQkgICAgcmVjX2xlbiwgcC0+bmFtZV9sZW4pOw0KPiBAQCAtMTc3 LDcgKzE3Nyw3IEBAIHN0YXRpYyBib29sIG5pbGZzX2NoZWNrX2ZvbGlvKHN0cnVjdCBmb2xpbyAq Zm9saW8sIGNoYXIgKmthZGRyKQ0KPiAgRWVuZDoNCj4gIAlwID0gKHN0cnVjdCBuaWxmc19kaXJf ZW50cnkgKikoa2FkZHIgKyBvZmZzKTsNCj4gIAluaWxmc19lcnJvcihzYiwNCj4gLQkJICAgICJl bnRyeSBpbiBkaXJlY3RvcnkgIyVsdSBzcGFucyB0aGUgcGFnZSBib3VuZGFyeSBvZmZzZXQ9JWx1 LCBpbm9kZT0lbHUiLA0KPiArCQkgICAgImVudHJ5IGluIGRpcmVjdG9yeSAjJSIgUFJJaW5vICJ1 IHNwYW5zIHRoZSBwYWdlIGJvdW5kYXJ5IG9mZnNldD0lbHUsIGlub2RlPSVsdSIsDQo+ICAJCSAg ICBkaXItPmlfaW5vLCAoZm9saW8tPmluZGV4IDw8IFBBR0VfU0hJRlQpICsgb2ZmcywNCj4gIAkJ ICAgICh1bnNpZ25lZCBsb25nKWxlNjRfdG9fY3B1KHAtPmlub2RlKSk7DQo+ICBmYWlsOg0KPiBA QCAtMjUxLDcgKzI1MSw3IEBAIHN0YXRpYyBpbnQgbmlsZnNfcmVhZGRpcihzdHJ1Y3QgZmlsZSAq ZmlsZSwgc3RydWN0IGRpcl9jb250ZXh0ICpjdHgpDQo+ICANCj4gIAkJa2FkZHIgPSBuaWxmc19n ZXRfZm9saW8oaW5vZGUsIG4sICZmb2xpbyk7DQo+ICAJCWlmIChJU19FUlIoa2FkZHIpKSB7DQo+ IC0JCQluaWxmc19lcnJvcihzYiwgImJhZCBwYWdlIGluICMlbHUiLCBpbm9kZS0+aV9pbm8pOw0K PiArCQkJbmlsZnNfZXJyb3Ioc2IsICJiYWQgcGFnZSBpbiAjJSIgUFJJaW5vICJ1IiwgaW5vZGUt PmlfaW5vKTsNCj4gIAkJCWN0eC0+cG9zICs9IFBBR0VfU0laRSAtIG9mZnNldDsNCj4gIAkJCXJl dHVybiAtRUlPOw0KPiAgCQl9DQo+IEBAIC0zMzYsNyArMzM2LDcgQEAgc3RydWN0IG5pbGZzX2Rp cl9lbnRyeSAqbmlsZnNfZmluZF9lbnRyeShzdHJ1Y3QgaW5vZGUgKmRpciwNCj4gIAkJLyogbmV4 dCBmb2xpbyBpcyBwYXN0IHRoZSBibG9ja3Mgd2UndmUgZ290ICovDQo+ICAJCWlmICh1bmxpa2Vs eShuID4gKGRpci0+aV9ibG9ja3MgPj4gKFBBR0VfU0hJRlQgLSA5KSkpKSB7DQo+ICAJCQluaWxm c19lcnJvcihkaXItPmlfc2IsDQo+IC0JCQkgICAgICAgImRpciAlbHUgc2l6ZSAlbGxkIGV4Y2Vl ZHMgYmxvY2sgY291bnQgJWxsdSIsDQo+ICsJCQkgICAgICAgImRpciAlIiBQUklpbm8gInUgc2l6 ZSAlbGxkIGV4Y2VlZHMgYmxvY2sgY291bnQgJWxsdSIsDQo+ICAJCQkgICAgICAgZGlyLT5pX2lu bywgZGlyLT5pX3NpemUsDQo+ICAJCQkgICAgICAgKHVuc2lnbmVkIGxvbmcgbG9uZylkaXItPmlf YmxvY2tzKTsNCj4gIAkJCWdvdG8gb3V0Ow0KPiBAQCAtMzgyLDcgKzM4Miw3IEBAIHN0cnVjdCBu aWxmc19kaXJfZW50cnkgKm5pbGZzX2RvdGRvdChzdHJ1Y3QgaW5vZGUgKmRpciwgc3RydWN0IGZv bGlvICoqZm9saW9wKQ0KPiAgCXJldHVybiBuZXh0X2RlOw0KPiAgDQo+ICBmYWlsOg0KPiAtCW5p bGZzX2Vycm9yKGRpci0+aV9zYiwgImRpcmVjdG9yeSAjJWx1ICVzIiwgZGlyLT5pX2lubywgbXNn KTsNCj4gKwluaWxmc19lcnJvcihkaXItPmlfc2IsICJkaXJlY3RvcnkgIyUiIFBSSWlubyAidSAl cyIsIGRpci0+aV9pbm8sIG1zZyk7DQo+ICAJZm9saW9fcmVsZWFzZV9rbWFwKGZvbGlvLCBkZSk7 DQo+ICAJcmV0dXJuIE5VTEw7DQo+ICB9DQo+IGRpZmYgLS1naXQgYS9mcy9uaWxmczIvZGlyZWN0 LmMgYi9mcy9uaWxmczIvZGlyZWN0LmMNCj4gaW5kZXggMmQ4ZGM2YjM1YjU0Nzc5NDdjYTEyYTcw Mjg4ZDNhM2NjZTg1OGFhYi4uMTA4NGQ0ZDU4NmUwNzhhYjY4MjUxNjc5NzZkZDJhNzFkNTJiYzhh YSAxMDA2NDQNCj4gLS0tIGEvZnMvbmlsZnMyL2RpcmVjdC5jDQo+ICsrKyBiL2ZzL25pbGZzMi9k aXJlY3QuYw0KPiBAQCAtMzM4LDcgKzMzOCw3IEBAIHN0YXRpYyBpbnQgbmlsZnNfZGlyZWN0X2Fz c2lnbihzdHJ1Y3QgbmlsZnNfYm1hcCAqYm1hcCwNCj4gIAlrZXkgPSBuaWxmc19ibWFwX2RhdGFf Z2V0X2tleShibWFwLCAqYmgpOw0KPiAgCWlmICh1bmxpa2VseShrZXkgPiBOSUxGU19ESVJFQ1Rf S0VZX01BWCkpIHsNCj4gIAkJbmlsZnNfY3JpdChibWFwLT5iX2lub2RlLT5pX3NiLA0KPiAtCQkJ ICAgIiVzIChpbm89JWx1KTogaW52YWxpZCBrZXk6ICVsbHUiLA0KPiArCQkJICAgIiVzIChpbm89 JSIgUFJJaW5vICJ1KTogaW52YWxpZCBrZXk6ICVsbHUiLA0KPiAgCQkJICAgX19mdW5jX18sDQo+ ICAJCQkgICBibWFwLT5iX2lub2RlLT5pX2lubywgKHVuc2lnbmVkIGxvbmcgbG9uZylrZXkpOw0K PiAgCQlyZXR1cm4gLUVJTlZBTDsNCj4gQEAgLTM0Niw3ICszNDYsNyBAQCBzdGF0aWMgaW50IG5p bGZzX2RpcmVjdF9hc3NpZ24oc3RydWN0IG5pbGZzX2JtYXAgKmJtYXAsDQo+ICAJcHRyID0gbmls ZnNfZGlyZWN0X2dldF9wdHIoYm1hcCwga2V5KTsNCj4gIAlpZiAodW5saWtlbHkocHRyID09IE5J TEZTX0JNQVBfSU5WQUxJRF9QVFIpKSB7DQo+ICAJCW5pbGZzX2NyaXQoYm1hcC0+Yl9pbm9kZS0+ aV9zYiwNCj4gLQkJCSAgICIlcyAoaW5vPSVsdSk6IGludmFsaWQgcG9pbnRlcjogJWxsdSIsDQo+ ICsJCQkgICAiJXMgKGlubz0lIiBQUklpbm8gInUpOiBpbnZhbGlkIHBvaW50ZXI6ICVsbHUiLA0K PiAgCQkJICAgX19mdW5jX18sDQo+ICAJCQkgICBibWFwLT5iX2lub2RlLT5pX2lubywgKHVuc2ln bmVkIGxvbmcgbG9uZylwdHIpOw0KPiAgCQlyZXR1cm4gLUVJTlZBTDsNCj4gZGlmZiAtLWdpdCBh L2ZzL25pbGZzMi9nY2lub2RlLmMgYi9mcy9uaWxmczIvZ2Npbm9kZS5jDQo+IGluZGV4IDU2MWMy MjA3OTljN2FlZTg3OWFkODY2ODY1ZTM3Nzc5OWM4ZWU2YmIuLjcxNDk2MmQwMTBkYTRhMjNlOWI1 ZjQwZGU4YWFhY2E4Yjk1YTc0ZGEgMTAwNjQ0DQo+IC0tLSBhL2ZzL25pbGZzMi9nY2lub2RlLmMN Cj4gKysrIGIvZnMvbmlsZnMyL2djaW5vZGUuYw0KPiBAQCAtMTM3LDcgKzEzNyw3IEBAIGludCBu aWxmc19nY2NhY2hlX3dhaXRfYW5kX21hcmtfZGlydHkoc3RydWN0IGJ1ZmZlcl9oZWFkICpiaCkN Cj4gIAkJc3RydWN0IGlub2RlICppbm9kZSA9IGJoLT5iX2ZvbGlvLT5tYXBwaW5nLT5ob3N0Ow0K PiAgDQo+ICAJCW5pbGZzX2Vycihpbm9kZS0+aV9zYiwNCj4gLQkJCSAgIkkvTyBlcnJvciByZWFk aW5nICVzIGJsb2NrIGZvciBHQyAoaW5vPSVsdSwgdmJsb2NrbnI9JWxsdSkiLA0KPiArCQkJICAi SS9PIGVycm9yIHJlYWRpbmcgJXMgYmxvY2sgZm9yIEdDIChpbm89JSIgUFJJaW5vICJ1LCB2Ymxv Y2tucj0lbGx1KSIsDQo+ICAJCQkgIGJ1ZmZlcl9uaWxmc19ub2RlKGJoKSA/ICJub2RlIiA6ICJk YXRhIiwNCj4gIAkJCSAgaW5vZGUtPmlfaW5vLCAodW5zaWduZWQgbG9uZyBsb25nKWJoLT5iX2Js b2NrbnIpOw0KPiAgCQlyZXR1cm4gLUVJTzsNCj4gZGlmZiAtLWdpdCBhL2ZzL25pbGZzMi9pbm9k ZS5jIGIvZnMvbmlsZnMyL2lub2RlLmMNCj4gaW5kZXggNTFiZGU0NWQ1ODY1MDlkZGEzZWYwY2I3 YzQ2ZmFjYjdmYjJjNjFkZC4uMGJjMWM1MTQxZWM1OTZiM2MzMWU3ZDE4ZTRiYTM1NDFiZjYxODQw NiAxMDA2NDQNCj4gLS0tIGEvZnMvbmlsZnMyL2lub2RlLmMNCj4gKysrIGIvZnMvbmlsZnMyL2lu b2RlLmMNCj4gQEAgLTEwOCw3ICsxMDgsNyBAQCBpbnQgbmlsZnNfZ2V0X2Jsb2NrKHN0cnVjdCBp bm9kZSAqaW5vZGUsIHNlY3Rvcl90IGJsa29mZiwNCj4gIAkJCQkgKiBiZSBsb2NrZWQgaW4gdGhp cyBjYXNlLg0KPiAgCQkJCSAqLw0KPiAgCQkJCW5pbGZzX3dhcm4oaW5vZGUtPmlfc2IsDQo+IC0J CQkJCSAgICIlcyAoaW5vPSVsdSk6IGEgcmFjZSBjb25kaXRpb24gd2hpbGUgaW5zZXJ0aW5nIGEg ZGF0YSBibG9jayBhdCBvZmZzZXQ9JWxsdSIsDQo+ICsJCQkJCSAgICIlcyAoaW5vPSUiIFBSSWlu byAidSk6IGEgcmFjZSBjb25kaXRpb24gd2hpbGUgaW5zZXJ0aW5nIGEgZGF0YSBibG9jayBhdCBv ZmZzZXQ9JWxsdSIsDQo+ICAJCQkJCSAgIF9fZnVuY19fLCBpbm9kZS0+aV9pbm8sDQo+ICAJCQkJ CSAgICh1bnNpZ25lZCBsb25nIGxvbmcpYmxrb2ZmKTsNCj4gIAkJCQllcnIgPSAtRUFHQUlOOw0K PiBAQCAtNzg5LDcgKzc4OSw3IEBAIHN0YXRpYyB2b2lkIG5pbGZzX3RydW5jYXRlX2JtYXAoc3Ry dWN0IG5pbGZzX2lub2RlX2luZm8gKmlpLA0KPiAgCQlnb3RvIHJlcGVhdDsNCj4gIA0KPiAgZmFp bGVkOg0KPiAtCW5pbGZzX3dhcm4oaWktPnZmc19pbm9kZS5pX3NiLCAiZXJyb3IgJWQgdHJ1bmNh dGluZyBibWFwIChpbm89JWx1KSIsDQo+ICsJbmlsZnNfd2FybihpaS0+dmZzX2lub2RlLmlfc2Is ICJlcnJvciAlZCB0cnVuY2F0aW5nIGJtYXAgKGlubz0lIiBQUklpbm8gInUpIiwNCj4gIAkJICAg cmV0LCBpaS0+dmZzX2lub2RlLmlfaW5vKTsNCj4gIH0NCj4gIA0KPiBAQCAtMTAyNiw3ICsxMDI2 LDcgQEAgaW50IG5pbGZzX3NldF9maWxlX2RpcnR5KHN0cnVjdCBpbm9kZSAqaW5vZGUsIHVuc2ln bmVkIGludCBucl9kaXJ0eSkNCj4gIAkJCSAqIHRoaXMgaW5vZGUuDQo+ICAJCQkgKi8NCj4gIAkJ CW5pbGZzX3dhcm4oaW5vZGUtPmlfc2IsDQo+IC0JCQkJICAgImNhbm5vdCBzZXQgZmlsZSBkaXJ0 eSAoaW5vPSVsdSk6IHRoZSBmaWxlIGlzIGJlaW5nIGZyZWVkIiwNCj4gKwkJCQkgICAiY2Fubm90 IHNldCBmaWxlIGRpcnR5IChpbm89JSIgUFJJaW5vICJ1KTogdGhlIGZpbGUgaXMgYmVpbmcgZnJl ZWQiLA0KPiAgCQkJCSAgIGlub2RlLT5pX2lubyk7DQo+ICAJCQlzcGluX3VubG9jaygmbmlsZnMt Pm5zX2lub2RlX2xvY2spOw0KPiAgCQkJcmV0dXJuIC1FSU5WQUw7IC8qDQo+IEBAIC0xMDU3LDcg KzEwNTcsNyBAQCBpbnQgX19uaWxmc19tYXJrX2lub2RlX2RpcnR5KHN0cnVjdCBpbm9kZSAqaW5v ZGUsIGludCBmbGFncykNCj4gIAllcnIgPSBuaWxmc19sb2FkX2lub2RlX2Jsb2NrKGlub2RlLCAm aWJoKTsNCj4gIAlpZiAodW5saWtlbHkoZXJyKSkgew0KPiAgCQluaWxmc193YXJuKGlub2RlLT5p X3NiLA0KPiAtCQkJICAgImNhbm5vdCBtYXJrIGlub2RlIGRpcnR5IChpbm89JWx1KTogZXJyb3Ig JWQgbG9hZGluZyBpbm9kZSBibG9jayIsDQo+ICsJCQkgICAiY2Fubm90IG1hcmsgaW5vZGUgZGly dHkgKGlubz0lIiBQUklpbm8gInUpOiBlcnJvciAlZCBsb2FkaW5nIGlub2RlIGJsb2NrIiwNCj4g IAkJCSAgIGlub2RlLT5pX2lubywgZXJyKTsNCj4gIAkJcmV0dXJuIGVycjsNCj4gIAl9DQo+IGRp ZmYgLS1naXQgYS9mcy9uaWxmczIvbWR0LmMgYi9mcy9uaWxmczIvbWR0LmMNCj4gaW5kZXggOTQ2 YjBkMzUzNGE1ZjIyZjM0YWM0NGE5MWZiMTIxNTQxODgxYzU0OC4uODYyOWM3MmI2MmRiMzMyMTdk NDc0NzEyNDg4NWI2ZjcyN2YxODJiZSAxMDA2NDQNCj4gLS0tIGEvZnMvbmlsZnMyL21kdC5jDQo+ ICsrKyBiL2ZzL25pbGZzMi9tZHQuYw0KPiBAQCAtMjAzLDcgKzIwMyw3IEBAIHN0YXRpYyBpbnQg bmlsZnNfbWR0X3JlYWRfYmxvY2soc3RydWN0IGlub2RlICppbm9kZSwgdW5zaWduZWQgbG9uZyBi bG9jaywNCj4gIAllcnIgPSAtRUlPOw0KPiAgCWlmICghYnVmZmVyX3VwdG9kYXRlKGZpcnN0X2Jo KSkgew0KPiAgCQluaWxmc19lcnIoaW5vZGUtPmlfc2IsDQo+IC0JCQkgICJJL08gZXJyb3IgcmVh ZGluZyBtZXRhLWRhdGEgZmlsZSAoaW5vPSVsdSwgYmxvY2stb2Zmc2V0PSVsdSkiLA0KPiArCQkJ ICAiSS9PIGVycm9yIHJlYWRpbmcgbWV0YS1kYXRhIGZpbGUgKGlubz0lIiBQUklpbm8gInUsIGJs b2NrLW9mZnNldD0lbHUpIiwNCj4gIAkJCSAgaW5vZGUtPmlfaW5vLCBibG9jayk7DQo+ICAJCWdv dG8gZmFpbGVkX2JoOw0KPiAgCX0NCj4gZGlmZiAtLWdpdCBhL2ZzL25pbGZzMi9uYW1laS5jIGIv ZnMvbmlsZnMyL25hbWVpLmMNCj4gaW5kZXggNDBmNGIxYTI4NzA1YjZlMGViOGYwOTc4Y2YzYWMx OGI0M2FhMTMzMS4uMjllZGI4NGEwNjYzY2FhNGIyOWZhNDg4YzA0OTVmYzUzMzU4Y2EwMCAxMDA2 NDQNCj4gLS0tIGEvZnMvbmlsZnMyL25hbWVpLmMNCj4gKysrIGIvZnMvbmlsZnMyL25hbWVpLmMN Cj4gQEAgLTI5Miw3ICsyOTIsNyBAQCBzdGF0aWMgaW50IG5pbGZzX2RvX3VubGluayhzdHJ1Y3Qg aW5vZGUgKmRpciwgc3RydWN0IGRlbnRyeSAqZGVudHJ5KQ0KPiAgDQo+ICAJaWYgKCFpbm9kZS0+ aV9ubGluaykgew0KPiAgCQluaWxmc193YXJuKGlub2RlLT5pX3NiLA0KPiAtCQkJICAgImRlbGV0 aW5nIG5vbmV4aXN0ZW50IGZpbGUgKGlubz0lbHUpLCAlZCIsDQo+ICsJCQkgICAiZGVsZXRpbmcg bm9uZXhpc3RlbnQgZmlsZSAoaW5vPSUiIFBSSWlubyAidSksICVkIiwNCj4gIAkJCSAgIGlub2Rl LT5pX2lubywgaW5vZGUtPmlfbmxpbmspOw0KPiAgCQlzZXRfbmxpbmsoaW5vZGUsIDEpOw0KPiAg CX0NCj4gZGlmZiAtLWdpdCBhL2ZzL25pbGZzMi9zZWdtZW50LmMgYi9mcy9uaWxmczIvc2VnbWVu dC5jDQo+IGluZGV4IDA5OGEzYmQxMDNlMDRjZDA5YjA2ODlmZTIwMTczODBkNzQ2NjQ0OTYuLjlh OGJjM2ZhMzVjZTliNDQ3YWJiYzJmYjU2Y2JkMmIwY2M1Zjc2ZGUgMTAwNjQ0DQo+IC0tLSBhL2Zz L25pbGZzMi9zZWdtZW50LmMNCj4gKysrIGIvZnMvbmlsZnMyL3NlZ21lbnQuYw0KPiBAQCAtMjAy NCw3ICsyMDI0LDcgQEAgc3RhdGljIGludCBuaWxmc19zZWdjdG9yX2NvbGxlY3RfZGlydHlfZmls ZXMoc3RydWN0IG5pbGZzX3NjX2luZm8gKnNjaSwNCj4gIAkJCQlpZmlsZSwgaWktPnZmc19pbm9k ZS5pX2lubywgJmliaCk7DQo+ICAJCQlpZiAodW5saWtlbHkoZXJyKSkgew0KPiAgCQkJCW5pbGZz X3dhcm4oc2NpLT5zY19zdXBlciwNCj4gLQkJCQkJICAgImxvZyB3cml0ZXI6IGVycm9yICVkIGdl dHRpbmcgaW5vZGUgYmxvY2sgKGlubz0lbHUpIiwNCj4gKwkJCQkJICAgImxvZyB3cml0ZXI6IGVy cm9yICVkIGdldHRpbmcgaW5vZGUgYmxvY2sgKGlubz0lIiBQUklpbm8gInUpIiwNCj4gIAkJCQkJ ICAgZXJyLCBpaS0+dmZzX2lub2RlLmlfaW5vKTsNCj4gIAkJCQlyZXR1cm4gZXJyOw0KPiAgCQkJ fQ0KPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS90cmFjZS9ldmVudHMvbmlsZnMyLmggYi9pbmNsdWRl L3RyYWNlL2V2ZW50cy9uaWxmczIuaA0KPiBpbmRleCA4ODgwYzExNzMzZGQzMDdjMjIzY2M2MmVl MzRlYmVmZjY1MGVjYjEyLi44NmEwMDExYzllZWFmMDMxY2ZhMGI3OTg3NWIyYjEwNmVmOGI3Y2Zk IDEwMDY0NA0KPiAtLS0gYS9pbmNsdWRlL3RyYWNlL2V2ZW50cy9uaWxmczIuaA0KPiArKysgYi9p bmNsdWRlL3RyYWNlL2V2ZW50cy9uaWxmczIuaA0KPiBAQCAtMTY1LDE0ICsxNjUsMTQgQEAgVFJB Q0VfRVZFTlQobmlsZnMyX3NlZ21lbnRfdXNhZ2VfZnJlZWQsDQo+ICANCj4gIFRSQUNFX0VWRU5U KG5pbGZzMl9tZHRfaW5zZXJ0X25ld19ibG9jaywNCj4gIAkgICAgVFBfUFJPVE8oc3RydWN0IGlu b2RlICppbm9kZSwNCj4gLQkJICAgICB1bnNpZ25lZCBsb25nIGlubywNCj4gKwkJICAgICB1NjQg aW5vLA0KPiAgCQkgICAgIHVuc2lnbmVkIGxvbmcgYmxvY2spLA0KPiAgDQo+ICAJICAgIFRQX0FS R1MoaW5vZGUsIGlubywgYmxvY2spLA0KPiAgDQo+ICAJICAgIFRQX1NUUlVDVF9fZW50cnkoDQo+ ICAJCSAgICBfX2ZpZWxkKHN0cnVjdCBpbm9kZSAqLCBpbm9kZSkNCj4gLQkJICAgIF9fZmllbGQo dW5zaWduZWQgbG9uZywgaW5vKQ0KPiArCQkgICAgX19maWVsZCh1NjQsIGlubykNCj4gIAkJICAg IF9fZmllbGQodW5zaWduZWQgbG9uZywgYmxvY2spDQo+ICAJICAgICksDQo+ICANCj4gQEAgLTE4 Miw3ICsxODIsNyBAQCBUUkFDRV9FVkVOVChuaWxmczJfbWR0X2luc2VydF9uZXdfYmxvY2ssDQo+ ICAJCSAgICBfX2VudHJ5LT5ibG9jayA9IGJsb2NrOw0KPiAgCQkgICAgKSwNCj4gIA0KPiAtCSAg ICBUUF9wcmludGsoImlub2RlID0gJXAgaW5vID0gJWx1IGJsb2NrID0gJWx1IiwNCj4gKwkgICAg VFBfcHJpbnRrKCJpbm9kZSA9ICVwIGlubyA9ICVsbHUgYmxvY2sgPSAlbHUiLA0KPiAgCQkgICAg ICBfX2VudHJ5LT5pbm9kZSwNCj4gIAkJICAgICAgX19lbnRyeS0+aW5vLA0KPiAgCQkgICAgICBf X2VudHJ5LT5ibG9jaykNCj4gQEAgLTE5MCw3ICsxOTAsNyBAQCBUUkFDRV9FVkVOVChuaWxmczJf bWR0X2luc2VydF9uZXdfYmxvY2ssDQo+ICANCj4gIFRSQUNFX0VWRU5UKG5pbGZzMl9tZHRfc3Vi bWl0X2Jsb2NrLA0KPiAgCSAgICBUUF9QUk9UTyhzdHJ1Y3QgaW5vZGUgKmlub2RlLA0KPiAtCQkg ICAgIHVuc2lnbmVkIGxvbmcgaW5vLA0KPiArCQkgICAgIHU2NCBpbm8sDQo+ICAJCSAgICAgdW5z aWduZWQgbG9uZyBibGtvZmYsDQo+ICAJCSAgICAgZW51bSByZXFfb3AgbW9kZSksDQo+ICANCj4g QEAgLTE5OCw3ICsxOTgsNyBAQCBUUkFDRV9FVkVOVChuaWxmczJfbWR0X3N1Ym1pdF9ibG9jaywN Cj4gIA0KPiAgCSAgICBUUF9TVFJVQ1RfX2VudHJ5KA0KPiAgCQkgICAgX19maWVsZChzdHJ1Y3Qg aW5vZGUgKiwgaW5vZGUpDQo+IC0JCSAgICBfX2ZpZWxkKHVuc2lnbmVkIGxvbmcsIGlubykNCj4g KwkJICAgIF9fZmllbGQodTY0LCBpbm8pDQo+ICAJCSAgICBfX2ZpZWxkKHVuc2lnbmVkIGxvbmcs IGJsa29mZikNCj4gIAkJICAgIC8qDQo+ICAJCSAgICAgKiBVc2UgZmllbGRfc3RydWN0KCkgdG8g YXZvaWQgaXNfc2lnbmVkX3R5cGUoKSBvbiB0aGUNCj4gQEAgLTIxNCw3ICsyMTQsNyBAQCBUUkFD RV9FVkVOVChuaWxmczJfbWR0X3N1Ym1pdF9ibG9jaywNCj4gIAkJICAgIF9fZW50cnktPm1vZGUg PSBtb2RlOw0KPiAgCQkgICAgKSwNCj4gIA0KPiAtCSAgICBUUF9wcmludGsoImlub2RlID0gJXAg aW5vID0gJWx1IGJsa29mZiA9ICVsdSBtb2RlID0gJXgiLA0KPiArCSAgICBUUF9wcmludGsoImlu b2RlID0gJXAgaW5vID0gJWxsdSBibGtvZmYgPSAlbHUgbW9kZSA9ICV4IiwNCj4gIAkJICAgICAg X19lbnRyeS0+aW5vZGUsDQo+ICAJCSAgICAgIF9fZW50cnktPmlubywNCj4gIAkJICAgICAgX19l bnRyeS0+Ymxrb2ZmLA0KDQpSZXZpZXdlZC1ieTogVmlhY2hlc2xhdiBEdWJleWtvIDxzbGF2YUBk dWJleWtvLmNvbT4NCg0KVGhhbmtzLA0KU2xhdmEuDQo=