From mboxrd@z Thu Jan 1 00:00:00 1970 From: Saeed Mahameed Subject: [PATCH mlx5-next 12/18] net/mlx5: Handle host PF vport mac/guid for ECPF Date: Fri, 28 Jun 2019 22:36:13 +0000 Message-ID: <20190628223516.9368-13-saeedm@mellanox.com> References: <20190628223516.9368-1-saeedm@mellanox.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190628223516.9368-1-saeedm@mellanox.com> Content-Language: en-US Sender: netdev-owner@vger.kernel.org To: Saeed Mahameed , Leon Romanovsky Cc: "netdev@vger.kernel.org" , "linux-rdma@vger.kernel.org" , Bodong Wang List-Id: linux-rdma@vger.kernel.org RnJvbTogQm9kb25nIFdhbmcgPGJvZG9uZ0BtZWxsYW5veC5jb20+DQoNCldoZW4gRUNQRiBpcyBl c3dpdGNoIG1hbmFnZXIsIGl0IGhhcyB0aGUgcHJpdmlsZWdlIHRvIHF1ZXJ5IGFuZA0KY29uZmln dXJlIHRoZSBtYWMgYW5kIG5vZGUgZ3VpZCBvZiBob3N0IFBGLg0KDQpXaGlsZSB2cG9ydCBudW1i ZXIgb2YgaG9zdCBQRiBpcyAwLCB0aGUgdnBvcnQgY29tbWFuZCBzaG91bGQgYmUNCmlzc3VlZCB3 aXRoIG90aGVyX3Zwb3J0IHNldCBpbiB0aGlzIGNhc2UgYXMgdGhlIGNtZCBpcyBpc3N1ZWQgYnkN CkVDUEYgdnBvcnQoMHhmZmZlKS4NCg0KQWRkIGEgc3BlY2lmaWMgZnVuY3Rpb24gdG8gcXVlcnkg b3duIHZwb3J0IG1hYy4gTG93IGxldmVsIGZ1bmN0aW9ucw0KYXJlIHVzZWQgYnkgdnBvcnQgbWFu YWdlciB0byBxdWVyeS9tb2RpZnkgYW55IHZwb3J0IG1hYyBhbmQgbm9kZSBndWlkLg0KDQpTaWdu ZWQtb2ZmLWJ5OiBCb2RvbmcgV2FuZyA8Ym9kb25nQG1lbGxhbm94LmNvbT4NClNpZ25lZC1vZmYt Ynk6IFNhZWVkIE1haGFtZWVkIDxzYWVlZG1AbWVsbGFub3guY29tPg0KLS0tDQogLi4uL2V0aGVy bmV0L21lbGxhbm94L21seDUvY29yZS9lbl9kY2JubC5jICAgIHwgIDIgKy0NCiAuLi4vbmV0L2V0 aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lbl9tYWluLmMgfCAgMiArLQ0KIC4uLi9uZXQvZXRo ZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2VuX3JlcC5jICB8ICAyICstDQogLi4uL25ldC9ldGhl cm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZXN3aXRjaC5jIHwgIDIgKy0NCiAuLi4vbWVsbGFub3gv bWx4NS9jb3JlL2Vzd2l0Y2hfb2ZmbG9hZHMuYyAgICAgfCAgMiArLQ0KIC4uLi9ldGhlcm5ldC9t ZWxsYW5veC9tbHg1L2NvcmUvZnBnYS9jb25uLmMgICB8ICAyICstDQogLi4uL25ldC9ldGhlcm5l dC9tZWxsYW5veC9tbHg1L2NvcmUvcmRtYS5jICAgIHwgIDIgKy0NCiAuLi4vbmV0L2V0aGVybmV0 L21lbGxhbm94L21seDUvY29yZS92cG9ydC5jICAgfCAyOCArKysrKysrKysrKystLS0tLS0tDQog aW5jbHVkZS9saW51eC9tbHg1L3Zwb3J0LmggICAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCiA5 IGZpbGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQ0KDQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2VuX2RjYm5s LmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZW5fZGNibmwuYw0K aW5kZXggNTU0NjcyZWRmOGMzLi44ZGQzMWI1Yzc0MGMgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25l dC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZW5fZGNibmwuYw0KKysrIGIvZHJpdmVycy9u ZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2VuX2RjYm5sLmMNCkBAIC02ODAsNyArNjgw LDcgQEAgc3RhdGljIHZvaWQgbWx4NWVfZGNibmxfZ2V0cGVybWh3YWRkcihzdHJ1Y3QgbmV0X2Rl dmljZSAqbmV0ZGV2LA0KIA0KIAltZW1zZXQocGVybV9hZGRyLCAweGZmLCBNQVhfQUREUl9MRU4p Ow0KIA0KLQltbHg1X3F1ZXJ5X25pY192cG9ydF9tYWNfYWRkcmVzcyhwcml2LT5tZGV2LCAwLCBw ZXJtX2FkZHIpOw0KKwltbHg1X3F1ZXJ5X21hY19hZGRyZXNzKHByaXYtPm1kZXYsIHBlcm1fYWRk cik7DQogfQ0KIA0KIHN0YXRpYyB2b2lkIG1seDVlX2RjYm5sX3NldHBndGNjZmd0eChzdHJ1Y3Qg bmV0X2RldmljZSAqbmV0ZGV2LA0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21l bGxhbm94L21seDUvY29yZS9lbl9tYWluLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5v eC9tbHg1L2NvcmUvZW5fbWFpbi5jDQppbmRleCA0NTdjYzM5NDIzZjIuLmJjOTE1MGYxODExNiAx MDA2NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lbl9t YWluLmMNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lbl9t YWluLmMNCkBAIC00NTgxLDcgKzQ1ODEsNyBAQCBzdGF0aWMgdm9pZCBtbHg1ZV9zZXRfbmV0ZGV2 X2Rldl9hZGRyKHN0cnVjdCBuZXRfZGV2aWNlICpuZXRkZXYpDQogew0KIAlzdHJ1Y3QgbWx4NWVf cHJpdiAqcHJpdiA9IG5ldGRldl9wcml2KG5ldGRldik7DQogDQotCW1seDVfcXVlcnlfbmljX3Zw b3J0X21hY19hZGRyZXNzKHByaXYtPm1kZXYsIDAsIG5ldGRldi0+ZGV2X2FkZHIpOw0KKwltbHg1 X3F1ZXJ5X21hY19hZGRyZXNzKHByaXYtPm1kZXYsIG5ldGRldi0+ZGV2X2FkZHIpOw0KIAlpZiAo aXNfemVyb19ldGhlcl9hZGRyKG5ldGRldi0+ZGV2X2FkZHIpICYmDQogCSAgICAhTUxYNV9DQVBf R0VOKHByaXYtPm1kZXYsIHZwb3J0X2dyb3VwX21hbmFnZXIpKSB7DQogCQlldGhfaHdfYWRkcl9y YW5kb20obmV0ZGV2KTsNCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5v eC9tbHg1L2NvcmUvZW5fcmVwLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1 L2NvcmUvZW5fcmVwLmMNCmluZGV4IDMzZjhmOTk2ODFhNS4uYWJlODU0MGQ2ODc5IDEwMDY0NA0K LS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2VuX3JlcC5jDQor KysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZW5fcmVwLmMNCkBA IC0xMzk0LDcgKzEzOTQsNyBAQCBzdGF0aWMgdm9pZCBtbHg1ZV9idWlsZF9yZXBfbmV0ZGV2KHN0 cnVjdCBuZXRfZGV2aWNlICpuZXRkZXYpDQogCQlTRVRfTkVUREVWX0RFVihuZXRkZXYsIG1kZXYt PmRldmljZSk7DQogCQluZXRkZXYtPm5ldGRldl9vcHMgPSAmbWx4NWVfbmV0ZGV2X29wc191cGxp bmtfcmVwOw0KIAkJLyogd2Ugd2FudCBhIHBlcnNpc3RlbnQgbWFjIGZvciB0aGUgdXBsaW5rIHJl cCAqLw0KLQkJbWx4NV9xdWVyeV9uaWNfdnBvcnRfbWFjX2FkZHJlc3MobWRldiwgMCwgbmV0ZGV2 LT5kZXZfYWRkcik7DQorCQltbHg1X3F1ZXJ5X21hY19hZGRyZXNzKG1kZXYsIG5ldGRldi0+ZGV2 X2FkZHIpOw0KIAkJbmV0ZGV2LT5ldGh0b29sX29wcyA9ICZtbHg1ZV91cGxpbmtfcmVwX2V0aHRv b2xfb3BzOw0KICNpZmRlZiBDT05GSUdfTUxYNV9DT1JFX0VOX0RDQg0KIAkJaWYgKE1MWDVfQ0FQ X0dFTihtZGV2LCBxb3MpKQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxh bm94L21seDUvY29yZS9lc3dpdGNoLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9t bHg1L2NvcmUvZXN3aXRjaC5jDQppbmRleCAwYzc1MjE5ZDkxYjUuLmE3NTg3NTVkN2EwOCAxMDA2 NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lc3dpdGNo LmMNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lc3dpdGNo LmMNCkBAIC04OTcsNyArODk3LDcgQEAgc3RhdGljIHZvaWQgZXN3X3Zwb3J0X2NoYW5nZV9oYW5k bGVfbG9ja2VkKHN0cnVjdCBtbHg1X3Zwb3J0ICp2cG9ydCkNCiAJc3RydWN0IG1seDVfZXN3aXRj aCAqZXN3ID0gZGV2LT5wcml2LmVzd2l0Y2g7DQogCXU4IG1hY1tFVEhfQUxFTl07DQogDQotCW1s eDVfcXVlcnlfbmljX3Zwb3J0X21hY19hZGRyZXNzKGRldiwgdnBvcnQtPnZwb3J0LCBtYWMpOw0K KwltbHg1X3F1ZXJ5X25pY192cG9ydF9tYWNfYWRkcmVzcyhkZXYsIHZwb3J0LT52cG9ydCwgdHJ1 ZSwgbWFjKTsNCiAJZXN3X2RlYnVnKGRldiwgInZwb3J0WyVkXSBDb250ZXh0IENoYW5nZWQ6IHBl cm0gbWFjOiAlcE1cbiIsDQogCQkgIHZwb3J0LT52cG9ydCwgbWFjKTsNCiANCmRpZmYgLS1naXQg YS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZXN3aXRjaF9vZmZsb2Fk cy5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2Vzd2l0Y2hfb2Zm bG9hZHMuYw0KaW5kZXggMTA1YzIxMDY5YzBjLi5iMjUzYmRmNzVkZDYgMTAwNjQ0DQotLS0gYS9k cml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZXN3aXRjaF9vZmZsb2Fkcy5j DQorKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZXN3aXRjaF9v ZmZsb2Fkcy5jDQpAQCAtMTQwNyw3ICsxNDA3LDcgQEAgaW50IGVzd19vZmZsb2Fkc19pbml0X3Jl cHMoc3RydWN0IG1seDVfZXN3aXRjaCAqZXN3KQ0KIAlpZiAoIWVzdy0+b2ZmbG9hZHMudnBvcnRf cmVwcykNCiAJCXJldHVybiAtRU5PTUVNOw0KIA0KLQltbHg1X3F1ZXJ5X25pY192cG9ydF9tYWNf YWRkcmVzcyhkZXYsIDAsIGh3X2lkKTsNCisJbWx4NV9xdWVyeV9tYWNfYWRkcmVzcyhkZXYsIGh3 X2lkKTsNCiANCiAJbWx4NV9lc3dfZm9yX2FsbF9yZXBzKGVzdywgdnBvcnRfaW5kZXgsIHJlcCkg ew0KIAkJcmVwLT52cG9ydCA9IG1seDVfZXN3aXRjaF9pbmRleF90b192cG9ydF9udW0oZXN3LCB2 cG9ydF9pbmRleCk7DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gv bWx4NS9jb3JlL2ZwZ2EvY29ubi5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4 NS9jb3JlL2ZwZ2EvY29ubi5jDQppbmRleCBjYTIyOTZhMmY5ZWUuLmQ2MWQ1MzZmNGUxNyAxMDA2 NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9mcGdhL2Nv bm4uYw0KKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2ZwZ2Ev Y29ubi5jDQpAQCAtODY3LDcgKzg2Nyw3IEBAIHN0cnVjdCBtbHg1X2ZwZ2FfY29ubiAqbWx4NV9m cGdhX2Nvbm5fY3JlYXRlKHN0cnVjdCBtbHg1X2ZwZ2FfZGV2aWNlICpmZGV2LA0KIAljb25uLT5j Yl9hcmcgPSBhdHRyLT5jYl9hcmc7DQogDQogCXJlbW90ZV9tYWMgPSBNTFg1X0FERFJfT0YoZnBn YV9xcGMsIGNvbm4tPmZwZ2FfcXBjLCByZW1vdGVfbWFjXzQ3XzMyKTsNCi0JZXJyID0gbWx4NV9x dWVyeV9uaWNfdnBvcnRfbWFjX2FkZHJlc3MoZmRldi0+bWRldiwgMCwgcmVtb3RlX21hYyk7DQor CWVyciA9IG1seDVfcXVlcnlfbWFjX2FkZHJlc3MoZmRldi0+bWRldiwgcmVtb3RlX21hYyk7DQog CWlmIChlcnIpIHsNCiAJCW1seDVfZnBnYV9lcnIoZmRldiwgIkZhaWxlZCB0byBxdWVyeSBsb2Nh bCBNQUM6ICVkXG4iLCBlcnIpOw0KIAkJcmV0ID0gRVJSX1BUUihlcnIpOw0KZGlmZiAtLWdpdCBh L2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9yZG1hLmMgYi9kcml2ZXJz L25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvcmRtYS5jDQppbmRleCA0MDE0NDFhZWZi Y2IuLjE3Y2U5ZGQ1NmIxMyAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxh bm94L21seDUvY29yZS9yZG1hLmMNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94 L21seDUvY29yZS9yZG1hLmMNCkBAIC0xMjYsNyArMTI2LDcgQEAgc3RhdGljIHZvaWQgbWx4NV9y ZG1hX21ha2VfZGVmYXVsdF9naWQoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwgdW5pb24gaWJf Z2lkICoNCiB7DQogCXU4IGh3X2lkW0VUSF9BTEVOXTsNCiANCi0JbWx4NV9xdWVyeV9uaWNfdnBv cnRfbWFjX2FkZHJlc3MoZGV2LCAwLCBod19pZCk7DQorCW1seDVfcXVlcnlfbWFjX2FkZHJlc3Mo ZGV2LCBod19pZCk7DQogCWdpZC0+Z2xvYmFsLnN1Ym5ldF9wcmVmaXggPSBjcHVfdG9fYmU2NCgw eGZlODAwMDAwMDAwMDAwMDBMTCk7DQogCWFkZHJjb25mX2FkZHJfZXVpNDgoJmdpZC0+cmF3Wzhd LCBod19pZCk7DQogfQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94 L21seDUvY29yZS92cG9ydC5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9j b3JlL3Zwb3J0LmMNCmluZGV4IDk1Y2RjOGNiY2JhNC4uNjcwZmE0OTNjNWY1IDEwMDY0NA0KLS0t IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL3Zwb3J0LmMNCisrKyBi L2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS92cG9ydC5jDQpAQCAtMTU1 LDExICsxNTUsMTIgQEAgaW50IG1seDVfbW9kaWZ5X25pY192cG9ydF9taW5faW5saW5lKHN0cnVj dCBtbHg1X2NvcmVfZGV2ICptZGV2LA0KIH0NCiANCiBpbnQgbWx4NV9xdWVyeV9uaWNfdnBvcnRf bWFjX2FkZHJlc3Moc3RydWN0IG1seDVfY29yZV9kZXYgKm1kZXYsDQotCQkJCSAgICAgdTE2IHZw b3J0LCB1OCAqYWRkcikNCisJCQkJICAgICB1MTYgdnBvcnQsIGJvb2wgb3RoZXIsIHU4ICphZGRy KQ0KIHsNCi0JdTMyICpvdXQ7DQogCWludCBvdXRsZW4gPSBNTFg1X1NUX1NaX0JZVEVTKHF1ZXJ5 X25pY192cG9ydF9jb250ZXh0X291dCk7DQorCXUzMiBpbltNTFg1X1NUX1NaX0RXKHF1ZXJ5X25p Y192cG9ydF9jb250ZXh0X2luKV0gPSB7fTsNCiAJdTggKm91dF9hZGRyOw0KKwl1MzIgKm91dDsN CiAJaW50IGVycjsNCiANCiAJb3V0ID0ga3Z6YWxsb2Mob3V0bGVuLCBHRlBfS0VSTkVMKTsNCkBA IC0xNjksNyArMTcwLDEyIEBAIGludCBtbHg1X3F1ZXJ5X25pY192cG9ydF9tYWNfYWRkcmVzcyhz dHJ1Y3QgbWx4NV9jb3JlX2RldiAqbWRldiwNCiAJb3V0X2FkZHIgPSBNTFg1X0FERFJfT0YocXVl cnlfbmljX3Zwb3J0X2NvbnRleHRfb3V0LCBvdXQsDQogCQkJCW5pY192cG9ydF9jb250ZXh0LnBl cm1hbmVudF9hZGRyZXNzKTsNCiANCi0JZXJyID0gbWx4NV9xdWVyeV9uaWNfdnBvcnRfY29udGV4 dChtZGV2LCB2cG9ydCwgb3V0LCBvdXRsZW4pOw0KKwlNTFg1X1NFVChxdWVyeV9uaWNfdnBvcnRf Y29udGV4dF9pbiwgaW4sIG9wY29kZSwNCisJCSBNTFg1X0NNRF9PUF9RVUVSWV9OSUNfVlBPUlRf Q09OVEVYVCk7DQorCU1MWDVfU0VUKHF1ZXJ5X25pY192cG9ydF9jb250ZXh0X2luLCBpbiwgdnBv cnRfbnVtYmVyLCB2cG9ydCk7DQorCU1MWDVfU0VUKHF1ZXJ5X25pY192cG9ydF9jb250ZXh0X2lu LCBpbiwgb3RoZXJfdnBvcnQsIG90aGVyKTsNCisNCisJZXJyID0gbWx4NV9jbWRfZXhlYyhtZGV2 LCBpbiwgc2l6ZW9mKGluKSwgb3V0LCBvdXRsZW4pOw0KIAlpZiAoIWVycikNCiAJCWV0aGVyX2Fk ZHJfY29weShhZGRyLCAmb3V0X2FkZHJbMl0pOw0KIA0KQEAgLTE3OCw2ICsxODQsMTIgQEAgaW50 IG1seDVfcXVlcnlfbmljX3Zwb3J0X21hY19hZGRyZXNzKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpt ZGV2LA0KIH0NCiBFWFBPUlRfU1lNQk9MX0dQTChtbHg1X3F1ZXJ5X25pY192cG9ydF9tYWNfYWRk cmVzcyk7DQogDQoraW50IG1seDVfcXVlcnlfbWFjX2FkZHJlc3Moc3RydWN0IG1seDVfY29yZV9k ZXYgKm1kZXYsIHU4ICphZGRyKQ0KK3sNCisJcmV0dXJuIG1seDVfcXVlcnlfbmljX3Zwb3J0X21h Y19hZGRyZXNzKG1kZXYsIDAsIGZhbHNlLCBhZGRyKTsNCit9DQorRVhQT1JUX1NZTUJPTF9HUEwo bWx4NV9xdWVyeV9tYWNfYWRkcmVzcyk7DQorDQogaW50IG1seDVfbW9kaWZ5X25pY192cG9ydF9t YWNfYWRkcmVzcyhzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqbWRldiwNCiAJCQkJICAgICAgdTE2IHZw b3J0LCB1OCAqYWRkcikNCiB7DQpAQCAtMTk0LDkgKzIwNiw3IEBAIGludCBtbHg1X21vZGlmeV9u aWNfdnBvcnRfbWFjX2FkZHJlc3Moc3RydWN0IG1seDVfY29yZV9kZXYgKm1kZXYsDQogCU1MWDVf U0VUKG1vZGlmeV9uaWNfdnBvcnRfY29udGV4dF9pbiwgaW4sDQogCQkgZmllbGRfc2VsZWN0LnBl cm1hbmVudF9hZGRyZXNzLCAxKTsNCiAJTUxYNV9TRVQobW9kaWZ5X25pY192cG9ydF9jb250ZXh0 X2luLCBpbiwgdnBvcnRfbnVtYmVyLCB2cG9ydCk7DQotDQotCWlmICh2cG9ydCkNCi0JCU1MWDVf U0VUKG1vZGlmeV9uaWNfdnBvcnRfY29udGV4dF9pbiwgaW4sIG90aGVyX3Zwb3J0LCAxKTsNCisJ TUxYNV9TRVQobW9kaWZ5X25pY192cG9ydF9jb250ZXh0X2luLCBpbiwgb3RoZXJfdnBvcnQsIDEp Ow0KIA0KIAluaWNfdnBvcnRfY3R4ID0gTUxYNV9BRERSX09GKG1vZGlmeV9uaWNfdnBvcnRfY29u dGV4dF9pbiwNCiAJCQkJICAgICBpbiwgbmljX3Zwb3J0X2NvbnRleHQpOw0KQEAgLTI5MSw5ICsz MDEsNyBAQCBpbnQgbWx4NV9xdWVyeV9uaWNfdnBvcnRfbWFjX2xpc3Qoc3RydWN0IG1seDVfY29y ZV9kZXYgKmRldiwNCiAJCSBNTFg1X0NNRF9PUF9RVUVSWV9OSUNfVlBPUlRfQ09OVEVYVCk7DQog CU1MWDVfU0VUKHF1ZXJ5X25pY192cG9ydF9jb250ZXh0X2luLCBpbiwgYWxsb3dlZF9saXN0X3R5 cGUsIGxpc3RfdHlwZSk7DQogCU1MWDVfU0VUKHF1ZXJ5X25pY192cG9ydF9jb250ZXh0X2luLCBp biwgdnBvcnRfbnVtYmVyLCB2cG9ydCk7DQotDQotCWlmICh2cG9ydCkNCi0JCU1MWDVfU0VUKHF1 ZXJ5X25pY192cG9ydF9jb250ZXh0X2luLCBpbiwgb3RoZXJfdnBvcnQsIDEpOw0KKwlNTFg1X1NF VChxdWVyeV9uaWNfdnBvcnRfY29udGV4dF9pbiwgaW4sIG90aGVyX3Zwb3J0LCAxKTsNCiANCiAJ ZXJyID0gbWx4NV9jbWRfZXhlYyhkZXYsIGluLCBzaXplb2YoaW4pLCBvdXQsIG91dF9zeik7DQog CWlmIChlcnIpDQpAQCAtNDgzLDcgKzQ5MSw3IEBAIGludCBtbHg1X21vZGlmeV9uaWNfdnBvcnRf bm9kZV9ndWlkKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICptZGV2LA0KIAlNTFg1X1NFVChtb2RpZnlf bmljX3Zwb3J0X2NvbnRleHRfaW4sIGluLA0KIAkJIGZpZWxkX3NlbGVjdC5ub2RlX2d1aWQsIDEp Ow0KIAlNTFg1X1NFVChtb2RpZnlfbmljX3Zwb3J0X2NvbnRleHRfaW4sIGluLCB2cG9ydF9udW1i ZXIsIHZwb3J0KTsNCi0JTUxYNV9TRVQobW9kaWZ5X25pY192cG9ydF9jb250ZXh0X2luLCBpbiwg b3RoZXJfdnBvcnQsICEhdnBvcnQpOw0KKwlNTFg1X1NFVChtb2RpZnlfbmljX3Zwb3J0X2NvbnRl eHRfaW4sIGluLCBvdGhlcl92cG9ydCwgMSk7DQogDQogCW5pY192cG9ydF9jb250ZXh0ID0gTUxY NV9BRERSX09GKG1vZGlmeV9uaWNfdnBvcnRfY29udGV4dF9pbiwNCiAJCQkJCSBpbiwgbmljX3Zw b3J0X2NvbnRleHQpOw0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbWx4NS92cG9ydC5oIGIv aW5jbHVkZS9saW51eC9tbHg1L3Zwb3J0LmgNCmluZGV4IDNkMWM2Y2RiYmJhNy4uYzE0N2FjYzdi ZjcwIDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9saW51eC9tbHg1L3Zwb3J0LmgNCisrKyBiL2luY2x1 ZGUvbGludXgvbWx4NS92cG9ydC5oDQpAQCAtNjksNyArNjksOCBAQCB1OCBtbHg1X3F1ZXJ5X3Zw b3J0X3N0YXRlKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICptZGV2LCB1OCBvcG1vZCwgdTE2IHZwb3J0 KTsNCiBpbnQgbWx4NV9tb2RpZnlfdnBvcnRfYWRtaW5fc3RhdGUoc3RydWN0IG1seDVfY29yZV9k ZXYgKm1kZXYsIHU4IG9wbW9kLA0KIAkJCQkgIHUxNiB2cG9ydCwgdTggb3RoZXJfdnBvcnQsIHU4 IHN0YXRlKTsNCiBpbnQgbWx4NV9xdWVyeV9uaWNfdnBvcnRfbWFjX2FkZHJlc3Moc3RydWN0IG1s eDVfY29yZV9kZXYgKm1kZXYsDQotCQkJCSAgICAgdTE2IHZwb3J0LCB1OCAqYWRkcik7DQorCQkJ CSAgICAgdTE2IHZwb3J0LCBib29sIG90aGVyLCB1OCAqYWRkcik7DQoraW50IG1seDVfcXVlcnlf bWFjX2FkZHJlc3Moc3RydWN0IG1seDVfY29yZV9kZXYgKm1kZXYsIHU4ICphZGRyKTsNCiBpbnQg bWx4NV9xdWVyeV9uaWNfdnBvcnRfbWluX2lubGluZShzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqbWRl diwNCiAJCQkJICAgIHUxNiB2cG9ydCwgdTggKm1pbl9pbmxpbmUpOw0KIHZvaWQgbWx4NV9xdWVy eV9taW5faW5saW5lKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICptZGV2LCB1OCAqbWluX2lubGluZSk7 DQotLSANCjIuMjEuMA0KDQo=