From mboxrd@z Thu Jan 1 00:00:00 1970 From: Saeed Mahameed Subject: [PATCH V2 mlx5-next 02/11] net/mlx5: Get rid of storing copy of device name Date: Mon, 29 Apr 2019 18:14:02 +0000 Message-ID: <20190429181326.6262-3-saeedm@mellanox.com> References: <20190429181326.6262-1-saeedm@mellanox.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190429181326.6262-1-saeedm@mellanox.com> Content-Language: en-US Sender: netdev-owner@vger.kernel.org To: Saeed Mahameed , Leon Romanovsky Cc: Jason Gunthorpe , "netdev@vger.kernel.org" , "linux-rdma@vger.kernel.org" , Parav Pandit List-Id: linux-rdma@vger.kernel.org RnJvbTogUGFyYXYgUGFuZGl0IDxwYXJhdkBtZWxsYW5veC5jb20+DQoNCkN1cnJlbnRseSBtbHg1 IGNvcmUgc3RvcmVzIGNvcHkgb2YgdGhlIFBDSSBkZXZpY2UgbmFtZSBpbiBhDQptbHg1X3ByaXYg c3RydWN0dXJlIGFuZCB1c2VzIHByX3dhcm4sIHByX2VyciBoZWxwZXJzLg0KDQpHZXQgcmlkIG9m IHRoZSBjb3B5IG9mIHRoaXMgbmFtZTsgaW5zdGVhZCBzdG9yZSB0aGUgcGFyZW50IGRldmljZQ0K cG9pbnRlciB0aGF0IGNvbnRhaW5zIG5hbWUgYXMgd2VsbCBhcyBkbWEgc3BlY2lmaWMgcGFyYW1l dGVycy4NClRoaXMgYWxzbyBhbGxvd3MgdG8gdXNlIGtlcm5lbCdzIHdlbGwgZGVmaW5lZCBkZXZf d2FybiwgZGV2X2VyciwgZGV2X2RiZw0KZGV2aWNlIHNwZWNpZmljIHByaW50IHJvdXRpbmVzLg0K DQpUaGlzIGlzIGFsc28gYSBwcmVwYXJhdGlvbiBwYXRjaCB0byBhY2Nlc3Mgbm9uIFBDSSBwYXJl bnQgZGV2aWNlIGluDQpmdXR1cmUuDQoNClNpZ25lZC1vZmYtYnk6IFBhcmF2IFBhbmRpdCA8cGFy YXZAbWVsbGFub3guY29tPg0KU2lnbmVkLW9mZi1ieTogU2FlZWQgTWFoYW1lZWQgPHNhZWVkbUBt ZWxsYW5veC5jb20+DQotLS0NCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2Nv cmUvY21kLmMgfCAgMiArLQ0KIC4uLi9tbHg1L2NvcmUvZGlhZy9md190cmFjZXJfdHJhY2Vwb2lu dC5oICAgICB8ICA1ICstDQogLi4uL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZW5f dGMuYyAgIHwgIDUgKy0NCiAuLi4vbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lc3dp dGNoLmggfCAgOCArLS0NCiAuLi4vbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9oZWFs dGguYyAgfCAgMiArLQ0KIC4uLi9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL21haW4u YyAgICB8IDE1ICsrLS0tDQogLi4uL2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9tbHg1X2Nv cmUuaCAgIHwgNjUgKysrKysrKysrKy0tLS0tLS0tLQ0KIC4uLi9ldGhlcm5ldC9tZWxsYW5veC9t bHg1L2NvcmUvcGFnZWFsbG9jLmMgICB8ICA1ICstDQogaW5jbHVkZS9saW51eC9tbHg1L2RyaXZl ci5oICAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCiA5IGZpbGVzIGNoYW5nZWQsIDU3IGluc2Vy dGlvbnMoKyksIDUzIGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRo ZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2NtZC5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVs bGFub3gvbWx4NS9jb3JlL2NtZC5jDQppbmRleCAwYTJmZmU3OTRhNTQuLjc3OWZhMWU5ZWU0ZSAx MDA2NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9jbWQu Yw0KKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2NtZC5jDQpA QCAtMTM0Nyw3ICsxMzQ3LDcgQEAgc3RhdGljIHZvaWQgc2V0X3dxbmFtZShzdHJ1Y3QgbWx4NV9j b3JlX2RldiAqZGV2KQ0KIAlzdHJ1Y3QgbWx4NV9jbWQgKmNtZCA9ICZkZXYtPmNtZDsNCiANCiAJ c25wcmludGYoY21kLT53cV9uYW1lLCBzaXplb2YoY21kLT53cV9uYW1lKSwgIm1seDVfY21kXyVz IiwNCi0JCSBkZXYtPnByaXYubmFtZSk7DQorCQkgZGV2X25hbWUoZGV2LT5kZXZpY2UpKTsNCiB9 DQogDQogc3RhdGljIHZvaWQgY2xlYW5fZGVidWdfZmlsZXMoc3RydWN0IG1seDVfY29yZV9kZXYg KmRldikNCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2Nv cmUvZGlhZy9md190cmFjZXJfdHJhY2Vwb2ludC5oIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVs bGFub3gvbWx4NS9jb3JlL2RpYWcvZndfdHJhY2VyX3RyYWNlcG9pbnQuaA0KaW5kZXggN2I1OTAx ZDQyOTk0Li4zMDM4YmU1NzU5MjMgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9t ZWxsYW5veC9tbHg1L2NvcmUvZGlhZy9md190cmFjZXJfdHJhY2Vwb2ludC5oDQorKysgYi9kcml2 ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZGlhZy9md190cmFjZXJfdHJhY2Vw b2ludC5oDQpAQCAtNDcsNyArNDcsNyBAQCBUUkFDRV9FVkVOVChtbHg1X2Z3LA0KIAlUUF9BUkdT KHRyYWNlciwgdHJhY2VfdGltZXN0YW1wLCBsb3N0LCBldmVudF9pZCwgbXNnKSwNCiANCiAJVFBf U1RSVUNUX19lbnRyeSgNCi0JCV9fc3RyaW5nKGRldl9uYW1lLCB0cmFjZXItPmRldi0+cHJpdi5u YW1lKQ0KKwkJX19zdHJpbmcoZGV2X25hbWUsIGRldl9uYW1lKHRyYWNlci0+ZGV2LT5kZXZpY2Up KQ0KIAkJX19maWVsZCh1NjQsIHRyYWNlX3RpbWVzdGFtcCkNCiAJCV9fZmllbGQoYm9vbCwgbG9z dCkNCiAJCV9fZmllbGQodTgsIGV2ZW50X2lkKQ0KQEAgLTU1LDcgKzU1LDggQEAgVFJBQ0VfRVZF TlQobWx4NV9mdywNCiAJKSwNCiANCiAJVFBfZmFzdF9hc3NpZ24oDQotCQlfX2Fzc2lnbl9zdHIo ZGV2X25hbWUsIHRyYWNlci0+ZGV2LT5wcml2Lm5hbWUpOw0KKwkJX19hc3NpZ25fc3RyKGRldl9u YW1lLA0KKwkJCSAgICAgZGV2X25hbWUodHJhY2VyLT5kZXYtPmRldmljZSkpOw0KIAkJX19lbnRy eS0+dHJhY2VfdGltZXN0YW1wID0gdHJhY2VfdGltZXN0YW1wOw0KIAkJX19lbnRyeS0+bG9zdCA9 IGxvc3Q7DQogCQlfX2VudHJ5LT5ldmVudF9pZCA9IGV2ZW50X2lkOw0KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lbl90Yy5jIGIvZHJpdmVycy9u ZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2VuX3RjLmMNCmluZGV4IGI0OTY3YTBmZjhj Ny4uYTQwZTgwMWNmNzEzIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFu b3gvbWx4NS9jb3JlL2VuX3RjLmMNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94 L21seDUvY29yZS9lbl90Yy5jDQpAQCAtNjYzLDcgKzY2Myw4IEBAIHN0YXRpYyBpbnQgbWx4NWVf aGFpcnBpbl9mbG93X2FkZChzdHJ1Y3QgbWx4NWVfcHJpdiAqcHJpdiwNCiAJfQ0KIA0KIAluZXRk ZXZfZGJnKHByaXYtPm5ldGRldiwgImFkZCBoYWlycGluOiB0aXJuICV4IHJxbiAleCBwZWVyICVz IHNxbiAleCBwcmlvICVkIChsb2cpIGRhdGEgJWQgcGFja2V0cyAlZFxuIiwNCi0JCSAgIGhwLT50 aXJuLCBocC0+cGFpci0+cnFuWzBdLCBocC0+cGFpci0+cGVlcl9tZGV2LT5wcml2Lm5hbWUsDQor CQkgICBocC0+dGlybiwgaHAtPnBhaXItPnJxblswXSwNCisJCSAgIGRldl9uYW1lKGhwLT5wYWly LT5wZWVyX21kZXYtPmRldmljZSksDQogCQkgICBocC0+cGFpci0+c3FuWzBdLCBtYXRjaF9wcmlv LCBwYXJhbXMubG9nX2RhdGFfc2l6ZSwgcGFyYW1zLmxvZ19udW1fcGFja2V0cyk7DQogDQogCWhw ZS0+aHAgPSBocDsNCkBAIC03MDAsNyArNzAxLDcgQEAgc3RhdGljIHZvaWQgbWx4NWVfaGFpcnBp bl9mbG93X2RlbChzdHJ1Y3QgbWx4NWVfcHJpdiAqcHJpdiwNCiAJCWhwZSA9IGxpc3RfZW50cnko bmV4dCwgc3RydWN0IG1seDVlX2hhaXJwaW5fZW50cnksIGZsb3dzKTsNCiANCiAJCW5ldGRldl9k YmcocHJpdi0+bmV0ZGV2LCAiZGVsIGhhaXJwaW46IHBlZXIgJXNcbiIsDQotCQkJICAgaHBlLT5o cC0+cGFpci0+cGVlcl9tZGV2LT5wcml2Lm5hbWUpOw0KKwkJCSAgIGRldl9uYW1lKGhwZS0+aHAt PnBhaXItPnBlZXJfbWRldi0+ZGV2aWNlKSk7DQogDQogCQltbHg1ZV9oYWlycGluX2Rlc3Ryb3ko aHBlLT5ocCk7DQogCQloYXNoX2RlbCgmaHBlLT5oYWlycGluX2hsaXN0KTsNCmRpZmYgLS1naXQg YS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZXN3aXRjaC5oIGIvZHJp dmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2Vzd2l0Y2guaA0KaW5kZXggM2Yz Y2QzMmFlNjBhLi5jMWQ2YmI5MGNmMDQgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5l dC9tZWxsYW5veC9tbHg1L2NvcmUvZXN3aXRjaC5oDQorKysgYi9kcml2ZXJzL25ldC9ldGhlcm5l dC9tZWxsYW5veC9tbHg1L2NvcmUvZXN3aXRjaC5oDQpAQCAtMzc2LDExICszNzYsMTEgQEAgYm9v bCBtbHg1X2Vzd19tdWx0aXBhdGhfcHJlcmVxKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYwLA0K IA0KICNkZWZpbmUgTUxYNV9ERUJVR19FU1dJVENIX01BU0sgQklUKDMpDQogDQotI2RlZmluZSBl c3dfaW5mbyhkZXYsIGZvcm1hdCwgLi4uKQkJCQlcDQotCXByX2luZm8oIiglcyk6IEUtU3dpdGNo OiAiIGZvcm1hdCwgKGRldiktPnByaXYubmFtZSwgIyNfX1ZBX0FSR1NfXykNCisjZGVmaW5lIGVz d19pbmZvKF9fZGV2LCBmb3JtYXQsIC4uLikJCQlcDQorCWRldl9pbmZvKChfX2RldiktPmRldmlj ZSwgIkUtU3dpdGNoOiAiIGZvcm1hdCwgIyNfX1ZBX0FSR1NfXykNCiANCi0jZGVmaW5lIGVzd193 YXJuKGRldiwgZm9ybWF0LCAuLi4pCQkJCVwNCi0JcHJfd2FybigiKCVzKTogRS1Td2l0Y2g6ICIg Zm9ybWF0LCAoZGV2KS0+cHJpdi5uYW1lLCAjI19fVkFfQVJHU19fKQ0KKyNkZWZpbmUgZXN3X3dh cm4oX19kZXYsIGZvcm1hdCwgLi4uKQkJCVwNCisJZGV2X3dhcm4oKF9fZGV2KS0+ZGV2aWNlLCAi RS1Td2l0Y2g6ICIgZm9ybWF0LCAjI19fVkFfQVJHU19fKQ0KIA0KICNkZWZpbmUgZXN3X2RlYnVn KGRldiwgZm9ybWF0LCAuLi4pCQkJCVwNCiAJbWx4NV9jb3JlX2RiZ19tYXNrKGRldiwgTUxYNV9E RUJVR19FU1dJVENIX01BU0ssIGZvcm1hdCwgIyNfX1ZBX0FSR1NfXykNCmRpZmYgLS1naXQgYS9k cml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvaGVhbHRoLmMgYi9kcml2ZXJz L25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvaGVhbHRoLmMNCmluZGV4IDNiOThmY2Rk N2QwZS4uYTI2NTZmNDAwOGQ5IDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVs bGFub3gvbWx4NS9jb3JlL2hlYWx0aC5jDQorKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxs YW5veC9tbHg1L2NvcmUvaGVhbHRoLmMNCkBAIC0zODAsNyArMzgwLDcgQEAgaW50IG1seDVfaGVh bHRoX2luaXQoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldikNCiAJCXJldHVybiAtRU5PTUVNOw0K IA0KIAlzdHJjcHkobmFtZSwgIm1seDVfaGVhbHRoIik7DQotCXN0cmNhdChuYW1lLCBkZXYtPnBy aXYubmFtZSk7DQorCXN0cmNhdChuYW1lLCBkZXZfbmFtZShkZXYtPmRldmljZSkpOw0KIAloZWFs dGgtPndxID0gY3JlYXRlX3NpbmdsZXRocmVhZF93b3JrcXVldWUobmFtZSk7DQogCWtmcmVlKG5h bWUpOw0KIAlpZiAoIWhlYWx0aC0+d3EpDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJu ZXQvbWVsbGFub3gvbWx4NS9jb3JlL21haW4uYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxh bm94L21seDUvY29yZS9tYWluLmMNCmluZGV4IGIyMDBhMjlkMTQyMC4uYmVkZjgwOTczN2I1IDEw MDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL21haW4u Yw0KKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL21haW4uYw0K QEAgLTc0MSw3ICs3NDEsNiBAQCBzdGF0aWMgaW50IG1seDVfcGNpX2luaXQoc3RydWN0IG1seDVf Y29yZV9kZXYgKmRldiwgc3RydWN0IHBjaV9kZXYgKnBkZXYsDQogCXN0cnVjdCBtbHg1X3ByaXYg KnByaXYgPSAmZGV2LT5wcml2Ow0KIAlpbnQgZXJyID0gMDsNCiANCi0JZGV2LT5wZGV2ID0gcGRl djsNCiAJcHJpdi0+cGNpX2Rldl9kYXRhID0gaWQtPmRyaXZlcl9kYXRhOw0KIA0KIAlwY2lfc2V0 X2RydmRhdGEoZGV2LT5wZGV2LCBkZXYpOw0KQEAgLTEyNDIsMTQgKzEyNDEsMTEgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBkZXZsaW5rX29wcyBtbHg1X2Rldmxpbmtfb3BzID0gew0KICNlbmRpZg0K IH07DQogDQotc3RhdGljIGludCBtbHg1X21kZXZfaW5pdChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAq ZGV2LCBpbnQgcHJvZmlsZV9pZHgsIGNvbnN0IGNoYXIgKm5hbWUpDQorc3RhdGljIGludCBtbHg1 X21kZXZfaW5pdChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2LCBpbnQgcHJvZmlsZV9pZHgpDQog ew0KIAlzdHJ1Y3QgbWx4NV9wcml2ICpwcml2ID0gJmRldi0+cHJpdjsNCiAJaW50IGVycjsNCiAN Ci0Jc3RybmNweShwcml2LT5uYW1lLCBuYW1lLCBNTFg1X01BWF9OQU1FX0xFTik7DQotCXByaXYt Pm5hbWVbTUxYNV9NQVhfTkFNRV9MRU4gLSAxXSA9IDA7DQotDQogCWRldi0+cHJvZmlsZSA9ICZw cm9maWxlW3Byb2ZpbGVfaWR4XTsNCiANCiAJSU5JVF9MSVNUX0hFQUQoJnByaXYtPmN0eF9saXN0 KTsNCkBAIC0xMjY3LDkgKzEyNjMsMTAgQEAgc3RhdGljIGludCBtbHg1X21kZXZfaW5pdChzdHJ1 Y3QgbWx4NV9jb3JlX2RldiAqZGV2LCBpbnQgcHJvZmlsZV9pZHgsIGNvbnN0IGNoYXINCiAJSU5J VF9MSVNUX0hFQUQoJnByaXYtPnBnZGlyX2xpc3QpOw0KIAlzcGluX2xvY2tfaW5pdCgmcHJpdi0+ bWtleV9sb2NrKTsNCiANCi0JcHJpdi0+ZGJnX3Jvb3QgPSBkZWJ1Z2ZzX2NyZWF0ZV9kaXIobmFt ZSwgbWx4NV9kZWJ1Z2ZzX3Jvb3QpOw0KKwlwcml2LT5kYmdfcm9vdCA9IGRlYnVnZnNfY3JlYXRl X2RpcihkZXZfbmFtZShkZXYtPmRldmljZSksDQorCQkJCQkgICAgbWx4NV9kZWJ1Z2ZzX3Jvb3Qp Ow0KIAlpZiAoIXByaXYtPmRiZ19yb290KSB7DQotCQlwcl9lcnIoIm1seDVfY29yZTogJXMgZXJy b3IsIENhbm5vdCBjcmVhdGUgZGVidWdmcyBkaXIsIGFib3J0aW5nXG4iLCBuYW1lKTsNCisJCWRl dl9lcnIoZGV2LT5kZXZpY2UsICJtbHg1X2NvcmU6IGVycm9yLCBDYW5ub3QgY3JlYXRlIGRlYnVn ZnMgZGlyLCBhYm9ydGluZ1xuIik7DQogCQlyZXR1cm4gLUVOT01FTTsNCiAJfQ0KIA0KQEAgLTEz MTIsOCArMTMwOSwxMCBAQCBzdGF0aWMgaW50IGluaXRfb25lKHN0cnVjdCBwY2lfZGV2ICpwZGV2 LCBjb25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCAqaWQpDQogCX0NCiANCiAJZGV2ID0gZGV2bGlu a19wcml2KGRldmxpbmspOw0KKwlkZXYtPmRldmljZSA9ICZwZGV2LT5kZXY7DQorCWRldi0+cGRl diA9IHBkZXY7DQogDQotCWVyciA9IG1seDVfbWRldl9pbml0KGRldiwgcHJvZl9zZWwsIGRldl9u YW1lKCZwZGV2LT5kZXYpKTsNCisJZXJyID0gbWx4NV9tZGV2X2luaXQoZGV2LCBwcm9mX3NlbCk7 DQogCWlmIChlcnIpDQogCQlnb3RvIG1kZXZfaW5pdF9lcnI7DQogDQpkaWZmIC0tZ2l0IGEvZHJp dmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL21seDVfY29yZS5oIGIvZHJpdmVy cy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL21seDVfY29yZS5oDQppbmRleCBkNjZm NGYwODJlZjcuLjBlMTExYjcwYzE3OCAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0 L21lbGxhbm94L21seDUvY29yZS9tbHg1X2NvcmUuaA0KKysrIGIvZHJpdmVycy9uZXQvZXRoZXJu ZXQvbWVsbGFub3gvbWx4NS9jb3JlL21seDVfY29yZS5oDQpAQCAtNDEsNiArNDEsNyBAQA0KICNp bmNsdWRlIDxsaW51eC9wdHBfY2xvY2tfa2VybmVsLmg+DQogI2luY2x1ZGUgPGxpbnV4L21seDUv Y3EuaD4NCiAjaW5jbHVkZSA8bGludXgvbWx4NS9mcy5oPg0KKyNpbmNsdWRlIDxsaW51eC9tbHg1 L2RyaXZlci5oPg0KIA0KICNkZWZpbmUgRFJJVkVSX05BTUUgIm1seDVfY29yZSINCiAjZGVmaW5l IERSSVZFUl9WRVJTSU9OICI1LjAtMCINCkBAIC00OCw1MyArNDksNTcgQEANCiBleHRlcm4gdWlu dCBtbHg1X2NvcmVfZGVidWdfbWFzazsNCiANCiAjZGVmaW5lIG1seDVfY29yZV9kYmcoX19kZXYs IGZvcm1hdCwgLi4uKQkJCQlcDQotCXByX2RlYnVnKCIlczolczolZDoocGlkICVkKTogIiBmb3Jt YXQsIChfX2RldiktPnByaXYubmFtZSwgICAgICBcDQorCWRldl9kYmcoKF9fZGV2KS0+ZGV2aWNl LCAiJXM6JWQ6KHBpZCAlZCk6ICIgZm9ybWF0LAkJXA0KIAkJIF9fZnVuY19fLCBfX0xJTkVfXywg Y3VycmVudC0+cGlkLAkJCVwNCiAJCSAjI19fVkFfQVJHU19fKQ0KIA0KLSNkZWZpbmUgbWx4NV9j b3JlX2RiZ19vbmNlKF9fZGV2LCBmb3JtYXQsIC4uLikJCQkJXA0KLQlwcl9kZWJ1Z19vbmNlKCIl czolczolZDoocGlkICVkKTogIiBmb3JtYXQsIChfX2RldiktPnByaXYubmFtZSwgXA0KLQkJICAg ICBfX2Z1bmNfXywgX19MSU5FX18sIGN1cnJlbnQtPnBpZCwJCQlcDQorI2RlZmluZSBtbHg1X2Nv cmVfZGJnX29uY2UoX19kZXYsIGZvcm1hdCwgLi4uKQkJXA0KKwlkZXZfZGJnX29uY2UoKF9fZGV2 KS0+ZGV2aWNlLAkJXA0KKwkJICAgICAiJXM6JWQ6KHBpZCAlZCk6ICIgZm9ybWF0LAkJXA0KKwkJ ICAgICBfX2Z1bmNfXywgX19MSU5FX18sIGN1cnJlbnQtPnBpZCwJXA0KIAkJICAgICAjI19fVkFf QVJHU19fKQ0KIA0KLSNkZWZpbmUgbWx4NV9jb3JlX2RiZ19tYXNrKF9fZGV2LCBtYXNrLCBmb3Jt YXQsIC4uLikJCQlcDQotZG8gewkJCQkJCQkJCVwNCi0JaWYgKChtYXNrKSAmIG1seDVfY29yZV9k ZWJ1Z19tYXNrKQkJCQlcDQotCQltbHg1X2NvcmVfZGJnKF9fZGV2LCBmb3JtYXQsICMjX19WQV9B UkdTX18pOwkJXA0KKyNkZWZpbmUgbWx4NV9jb3JlX2RiZ19tYXNrKF9fZGV2LCBtYXNrLCBmb3Jt YXQsIC4uLikJCVwNCitkbyB7CQkJCQkJCQlcDQorCWlmICgobWFzaykgJiBtbHg1X2NvcmVfZGVi dWdfbWFzaykJCQlcDQorCQltbHg1X2NvcmVfZGJnKF9fZGV2LCBmb3JtYXQsICMjX19WQV9BUkdT X18pOwlcDQogfSB3aGlsZSAoMCkNCiANCi0jZGVmaW5lIG1seDVfY29yZV9lcnIoX19kZXYsIGZv cm1hdCwgLi4uKQkJCQlcDQotCXByX2VycigiJXM6JXM6JWQ6KHBpZCAlZCk6ICIgZm9ybWF0LCAo X19kZXYpLT5wcml2Lm5hbWUsICAgICAgICBcDQotCQlfX2Z1bmNfXywgX19MSU5FX18sIGN1cnJl bnQtPnBpZCwJXA0KKyNkZWZpbmUgbWx4NV9jb3JlX2VycihfX2RldiwgZm9ybWF0LCAuLi4pCQkJ XA0KKwlkZXZfZXJyKChfX2RldiktPmRldmljZSwgIiVzOiVkOihwaWQgJWQpOiAiIGZvcm1hdCwJ XA0KKwkJX19mdW5jX18sIF9fTElORV9fLCBjdXJyZW50LT5waWQsCQlcDQogCSAgICAgICAjI19f VkFfQVJHU19fKQ0KIA0KLSNkZWZpbmUgbWx4NV9jb3JlX2Vycl9ybChfX2RldiwgZm9ybWF0LCAu Li4pCQkJCSAgICAgXA0KLQlwcl9lcnJfcmF0ZWxpbWl0ZWQoIiVzOiVzOiVkOihwaWQgJWQpOiAi IGZvcm1hdCwgKF9fZGV2KS0+cHJpdi5uYW1lLCBcDQotCQkJICAgX19mdW5jX18sIF9fTElORV9f LCBjdXJyZW50LT5waWQsCQkgICAgIFwNCi0JCQkgICAjI19fVkFfQVJHU19fKQ0KKyNkZWZpbmUg bWx4NV9jb3JlX2Vycl9ybChfX2RldiwgZm9ybWF0LCAuLi4pCQkJXA0KKwlkZXZfZXJyX3JhdGVs aW1pdGVkKChfX2RldiktPmRldmljZSwJCQlcDQorCQkJICAgICIlczolZDoocGlkICVkKTogIiBm b3JtYXQsCQlcDQorCQkJICAgIF9fZnVuY19fLCBfX0xJTkVfXywgY3VycmVudC0+cGlkLAlcDQor CQkJICAgICMjX19WQV9BUkdTX18pDQogDQotI2RlZmluZSBtbHg1X2NvcmVfd2FybihfX2Rldiwg Zm9ybWF0LCAuLi4pCQkJCVwNCi0JcHJfd2FybigiJXM6JXM6JWQ6KHBpZCAlZCk6ICIgZm9ybWF0 LCAoX19kZXYpLT5wcml2Lm5hbWUsICAgICAgIFwNCi0JCSBfX2Z1bmNfXywgX19MSU5FX18sIGN1 cnJlbnQtPnBpZCwJCQlcDQotCQkjI19fVkFfQVJHU19fKQ0KKyNkZWZpbmUgbWx4NV9jb3JlX3dh cm4oX19kZXYsIGZvcm1hdCwgLi4uKQkJCVwNCisJZGV2X3dhcm4oKF9fZGV2KS0+ZGV2aWNlLCAi JXM6JWQ6KHBpZCAlZCk6ICIgZm9ybWF0LAlcDQorCQkgX19mdW5jX18sIF9fTElORV9fLCBjdXJy ZW50LT5waWQsCQlcDQorCQkgIyNfX1ZBX0FSR1NfXykNCiANCiAjZGVmaW5lIG1seDVfY29yZV93 YXJuX29uY2UoX19kZXYsIGZvcm1hdCwgLi4uKQkJCQlcDQotCXByX3dhcm5fb25jZSgiJXM6JXM6 JWQ6KHBpZCAlZCk6ICIgZm9ybWF0LCAoX19kZXYpLT5wcml2Lm5hbWUsICBcDQorCWRldl93YXJu X29uY2UoKF9fZGV2KS0+ZGV2aWNlLCAiJXM6JWQ6KHBpZCAlZCk6ICIgZm9ybWF0LAlcDQogCQkg ICAgICBfX2Z1bmNfXywgX19MSU5FX18sIGN1cnJlbnQtPnBpZCwJCQlcDQogCQkgICAgICAjI19f VkFfQVJHU19fKQ0KIA0KLSNkZWZpbmUgbWx4NV9jb3JlX3dhcm5fcmwoX19kZXYsIGZvcm1hdCwg Li4uKQkJCQkgICAgICBcDQotCXByX3dhcm5fcmF0ZWxpbWl0ZWQoIiVzOiVzOiVkOihwaWQgJWQp OiAiIGZvcm1hdCwgKF9fZGV2KS0+cHJpdi5uYW1lLCBcDQotCQkJICAgX19mdW5jX18sIF9fTElO RV9fLCBjdXJyZW50LT5waWQsCQkgICAgICBcDQotCQkJICAgIyNfX1ZBX0FSR1NfXykNCisjZGVm aW5lIG1seDVfY29yZV93YXJuX3JsKF9fZGV2LCBmb3JtYXQsIC4uLikJCQlcDQorCWRldl93YXJu X3JhdGVsaW1pdGVkKChfX2RldiktPmRldmljZSwJCQlcDQorCQkJICAgICAiJXM6JWQ6KHBpZCAl ZCk6ICIgZm9ybWF0LAkJXA0KKwkJCSAgICAgX19mdW5jX18sIF9fTElORV9fLCBjdXJyZW50LT5w aWQsCVwNCisJCQkgICAgICMjX19WQV9BUkdTX18pDQogDQotI2RlZmluZSBtbHg1X2NvcmVfaW5m byhfX2RldiwgZm9ybWF0LCAuLi4pCQkJCVwNCi0JcHJfaW5mbygiJXMgIiBmb3JtYXQsIChfX2Rl diktPnByaXYubmFtZSwgIyNfX1ZBX0FSR1NfXykNCisjZGVmaW5lIG1seDVfY29yZV9pbmZvKF9f ZGV2LCBmb3JtYXQsIC4uLikJCVwNCisJZGV2X2luZm8oKF9fZGV2KS0+ZGV2aWNlLCBmb3JtYXQs ICMjX19WQV9BUkdTX18pDQogDQotI2RlZmluZSBtbHg1X2NvcmVfaW5mb19ybChfX2RldiwgZm9y bWF0LCAuLi4pCQkJCSAgICAgIFwNCi0JcHJfaW5mb19yYXRlbGltaXRlZCgiJXM6JXM6JWQ6KHBp ZCAlZCk6ICIgZm9ybWF0LCAoX19kZXYpLT5wcml2Lm5hbWUsIFwNCi0JCQkgICBfX2Z1bmNfXywg X19MSU5FX18sIGN1cnJlbnQtPnBpZCwJCSAgICAgIFwNCi0JCQkgICAjI19fVkFfQVJHU19fKQ0K KyNkZWZpbmUgbWx4NV9jb3JlX2luZm9fcmwoX19kZXYsIGZvcm1hdCwgLi4uKQkJCVwNCisJZGV2 X2luZm9fcmF0ZWxpbWl0ZWQoKF9fZGV2KS0+ZGV2aWNlLAkJCVwNCisJCQkgICAgICIlczolZDoo cGlkICVkKTogIiBmb3JtYXQsCQlcDQorCQkJICAgICBfX2Z1bmNfXywgX19MSU5FX18sIGN1cnJl bnQtPnBpZCwJXA0KKwkJCSAgICAgIyNfX1ZBX0FSR1NfXykNCiANCiBlbnVtIHsNCiAJTUxYNV9D TURfREFUQSwgLyogcHJpbnQgY29tbWFuZCBwYXlsb2FkIG9ubHkgKi8NCmRpZmYgLS1naXQgYS9k cml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvcGFnZWFsbG9jLmMgYi9kcml2 ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvcGFnZWFsbG9jLmMNCmluZGV4IDQx MDI1Mzg3ZmYyYy4uZDg3ZDQyZjRmNmRkIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJu ZXQvbWVsbGFub3gvbWx4NS9jb3JlL3BhZ2VhbGxvYy5jDQorKysgYi9kcml2ZXJzL25ldC9ldGhl cm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvcGFnZWFsbG9jLmMNCkBAIC02MDAsOCArNjAwLDcgQEAg aW50IG1seDVfd2FpdF9mb3JfcGFnZXMoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwgaW50ICpw YWdlcykNCiAJCXJldHVybiAwOw0KIAl9DQogDQotCW1seDVfY29yZV9kYmcoZGV2LCAiV2FpdGlu ZyBmb3IgJWQgcGFnZXMgZnJvbSAlc1xuIiwgcHJldl9wYWdlcywNCi0JCSAgICAgIGRldi0+cHJp di5uYW1lKTsNCisJbWx4NV9jb3JlX2RiZyhkZXYsICJXYWl0aW5nIGZvciAlZCBwYWdlc1xuIiwg cHJldl9wYWdlcyk7DQogCXdoaWxlICgqcGFnZXMpIHsNCiAJCWlmICh0aW1lX2FmdGVyKGppZmZp ZXMsIGVuZCkpIHsNCiAJCQltbHg1X2NvcmVfd2FybihkZXYsICJhYm9ydGluZyB3aGlsZSB0aGVy ZSBhcmUgJWQgcGVuZGluZyBwYWdlc1xuIiwgKnBhZ2VzKTsNCkBAIC02MTQsNiArNjEzLDYgQEAg aW50IG1seDVfd2FpdF9mb3JfcGFnZXMoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwgaW50ICpw YWdlcykNCiAJCW1zbGVlcCg1MCk7DQogCX0NCiANCi0JbWx4NV9jb3JlX2RiZyhkZXYsICJBbGwg cGFnZXMgcmVjZWl2ZWQgZnJvbSAlc1xuIiwgZGV2LT5wcml2Lm5hbWUpOw0KKwltbHg1X2NvcmVf ZGJnKGRldiwgIkFsbCBwYWdlcyByZWNlaXZlZFxuIik7DQogCXJldHVybiAwOw0KIH0NCmRpZmYg LS1naXQgYS9pbmNsdWRlL2xpbnV4L21seDUvZHJpdmVyLmggYi9pbmNsdWRlL2xpbnV4L21seDUv ZHJpdmVyLmgNCmluZGV4IDZjNDMxOTFjMDE4Ni4uNTgyYTk2ODBiMTgyIDEwMDY0NA0KLS0tIGEv aW5jbHVkZS9saW51eC9tbHg1L2RyaXZlci5oDQorKysgYi9pbmNsdWRlL2xpbnV4L21seDUvZHJp dmVyLmgNCkBAIC01Niw3ICs1Niw2IEBADQogDQogZW51bSB7DQogCU1MWDVfQk9BUkRfSURfTEVO ID0gNjQsDQotCU1MWDVfTUFYX05BTUVfTEVOID0gMTYsDQogfTsNCiANCiBlbnVtIHsNCkBAIC01 MTQsNyArNTEzLDYgQEAgc3RydWN0IG1seDVfcmxfdGFibGUgew0KIH07DQogDQogc3RydWN0IG1s eDVfcHJpdiB7DQotCWNoYXIJCQluYW1lW01MWDVfTUFYX05BTUVfTEVOXTsNCiAJc3RydWN0IG1s eDVfZXFfdGFibGUJKmVxX3RhYmxlOw0KIA0KIAkvKiBwYWdlcyBzdHVmZiAqLw0KQEAgLTY0MSw2 ICs2MzksNyBAQCBzdHJ1Y3QgbWx4NV9md190cmFjZXI7DQogc3RydWN0IG1seDVfdnhsYW47DQog DQogc3RydWN0IG1seDVfY29yZV9kZXYgew0KKwlzdHJ1Y3QgZGV2aWNlICpkZXZpY2U7DQogCXN0 cnVjdCBwY2lfZGV2CSAgICAgICAqcGRldjsNCiAJLyogc3luYyBwY2kgc3RhdGUgKi8NCiAJc3Ry dWN0IG11dGV4CQlwY2lfc3RhdHVzX211dGV4Ow0KLS0gDQoyLjIwLjENCg0K