From mboxrd@z Thu Jan 1 00:00:00 1970 From: Saeed Mahameed Subject: [PATCH mlx5-next 12/16] net/mlx5: Generalize IRQ interface to work with irq_table Date: Mon, 10 Jun 2019 23:38:34 +0000 Message-ID: <20190610233733.12155-13-saeedm@mellanox.com> References: <20190610233733.12155-1-saeedm@mellanox.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190610233733.12155-1-saeedm@mellanox.com> Content-Language: en-US Sender: netdev-owner@vger.kernel.org To: Saeed Mahameed , Leon Romanovsky Cc: "linux-rdma@vger.kernel.org" , "netdev@vger.kernel.org" , Yuval Avnery , Parav Pandit List-Id: linux-rdma@vger.kernel.org RnJvbTogWXV2YWwgQXZuZXJ5IDx5dXZhbGF2QG1lbGxhbm94LmNvbT4NCg0KSVJRIGludGVyZmFj ZSBzaG91bGQgb3BlcmF0ZSB3aXRoaW4gdGhlIGlycV90YWJsZSBjb250ZXh0Lg0KSXQgc2hvdWxk IGJlIGluZGVwZW5kZW50IG9mIGFueSBFUSBkYXRhIHN0cnVjdHVyZS4NCg0KVGhlIGludGVyZmFj ZSB0aGF0IHdpbGwgYmUgZXhwb3NlZDoNCmluaXQvY2xlbnVwLCBjcmVhdGUvZGVzdHJveSwgYXR0 YWNoL2RldGFjaA0KDQpTaWduZWQtb2ZmLWJ5OiBZdXZhbCBBdm5lcnkgPHl1dmFsYXZAbWVsbGFu b3guY29tPg0KUmV2aWV3ZWQtYnk6IFBhcmF2IFBhbmRpdCA8cGFyYXZAbWVsbGFub3guY29tPg0K U2lnbmVkLW9mZi1ieTogU2FlZWQgTWFoYW1lZWQgPHNhZWVkbUBtZWxsYW5veC5jb20+DQotLS0N CiBkcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZXEuYyB8IDM4ICsrKysr KysrKysrKysrKy0tLS0tDQogMSBmaWxlIGNoYW5nZWQsIDI5IGluc2VydGlvbnMoKyksIDkgZGVs ZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9t bHg1L2NvcmUvZXEuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9l cS5jDQppbmRleCBkYWY5YmMzMTU1Y2MuLjgwYTQzNmI1MDM0YSAxMDA2NDQNCi0tLSBhL2RyaXZl cnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9lcS5jDQorKysgYi9kcml2ZXJzL25l dC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZXEuYw0KQEAgLTE0MywxNiArMTQzLDIyIEBA IHN0YXRpYyBzdHJ1Y3QgbWx4NV9pcnFfaW5mbyAqbWx4NV9pcnFfZ2V0KHN0cnVjdCBtbHg1X2Nv cmVfZGV2ICpkZXYsIGludCB2ZWNpZHgpDQogCXJldHVybiAmaXJxX3RhYmxlLT5pcnFfaW5mb1t2 ZWNpZHhdOw0KIH0NCiANCi1zdGF0aWMgaW50IG1seDVfaXJxX2F0dGFjaF9uYihzdHJ1Y3QgbWx4 NV9pcnFfaW5mbyAqaXJxLA0KK3N0YXRpYyBpbnQgbWx4NV9pcnFfYXR0YWNoX25iKHN0cnVjdCBt bHg1X2lycV90YWJsZSAqaXJxX3RhYmxlLCBpbnQgdmVjaWR4LA0KIAkJCSAgICAgIHN0cnVjdCBu b3RpZmllcl9ibG9jayAqbmIpDQogew0KLQlyZXR1cm4gYXRvbWljX25vdGlmaWVyX2NoYWluX3Jl Z2lzdGVyKCZpcnEtPm5oLCBuYik7DQorCXN0cnVjdCBtbHg1X2lycV9pbmZvICppcnFfaW5mbzsN CisNCisJaXJxX2luZm8gPSAmaXJxX3RhYmxlLT5pcnFfaW5mb1t2ZWNpZHhdOw0KKwlyZXR1cm4g YXRvbWljX25vdGlmaWVyX2NoYWluX3JlZ2lzdGVyKCZpcnFfaW5mby0+bmgsIG5iKTsNCiB9DQog DQotc3RhdGljIGludCBtbHg1X2lycV9kZXRhY2hfbmIoc3RydWN0IG1seDVfaXJxX2luZm8gKmly cSwNCitzdGF0aWMgaW50IG1seDVfaXJxX2RldGFjaF9uYihzdHJ1Y3QgbWx4NV9pcnFfdGFibGUg KmlycV90YWJsZSwgaW50IHZlY2lkeCwNCiAJCQkgICAgICBzdHJ1Y3Qgbm90aWZpZXJfYmxvY2sg Km5iKQ0KIHsNCi0JcmV0dXJuIGF0b21pY19ub3RpZmllcl9jaGFpbl91bnJlZ2lzdGVyKCZpcnEt Pm5oLCBuYik7DQorCXN0cnVjdCBtbHg1X2lycV9pbmZvICppcnFfaW5mbzsNCisNCisJaXJxX2lu Zm8gPSAmaXJxX3RhYmxlLT5pcnFfaW5mb1t2ZWNpZHhdOw0KKwlyZXR1cm4gYXRvbWljX25vdGlm aWVyX2NoYWluX3VucmVnaXN0ZXIoJmlycV9pbmZvLT5uaCwgbmIpOw0KIH0NCiANCiBzdGF0aWMg aXJxcmV0dXJuX3QgbWx4NV9pcnFfaW50X2hhbmRsZXIoaW50IGlycSwgdm9pZCAqbmgpDQpAQCAt NDY1LDcgKzQ3MSw4IEBAIGNyZWF0ZV9tYXBfZXEoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwg c3RydWN0IG1seDVfZXEgKmVxLA0KIAllcS0+ZG9vcmJlbGwgPSBwcml2LT51YXItPm1hcCArIE1M WDVfRVFfRE9PUkJFTF9PRkZTRVQ7DQogCWVxLT5pcnFfbmIgPSBwYXJhbS0+bmI7DQogDQotCWVy ciA9IG1seDVfaXJxX2F0dGFjaF9uYihtbHg1X2lycV9nZXQoZGV2LCB2ZWNpZHgpLCBwYXJhbS0+ bmIpOw0KKwllcnIgPSBtbHg1X2lycV9hdHRhY2hfbmIoZGV2LT5wcml2LmVxX3RhYmxlLT5pcnFf dGFibGUsIHZlY2lkeCwNCisJCQkJIHBhcmFtLT5uYik7DQogCWlmIChlcnIpDQogCQlnb3RvIGVy cl9lcTsNCiANCkBAIC00ODEsNyArNDg4LDcgQEAgY3JlYXRlX21hcF9lcShzdHJ1Y3QgbWx4NV9j b3JlX2RldiAqZGV2LCBzdHJ1Y3QgbWx4NV9lcSAqZXEsDQogCXJldHVybiAwOw0KIA0KIGVycl9k ZXRhY2g6DQotCW1seDVfaXJxX2RldGFjaF9uYihtbHg1X2lycV9nZXQoZGV2LCB2ZWNpZHgpLCBl cS0+aXJxX25iKTsNCisJbWx4NV9pcnFfZGV0YWNoX25iKGRldi0+cHJpdi5lcV90YWJsZS0+aXJx X3RhYmxlLCB2ZWNpZHgsIGVxLT5pcnFfbmIpOw0KIA0KIGVycl9lcToNCiAJbWx4NV9jbWRfZGVz dHJveV9lcShkZXYsIGVxLT5lcW4pOw0KQEAgLTUwMCw3ICs1MDcsOCBAQCBzdGF0aWMgaW50IGRl c3Ryb3lfdW5tYXBfZXEoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwgc3RydWN0IG1seDVfZXEg KmVxKQ0KIA0KIAltbHg1X2RlYnVnX2VxX3JlbW92ZShkZXYsIGVxKTsNCiANCi0JZXJyID0gbWx4 NV9pcnFfZGV0YWNoX25iKG1seDVfaXJxX2dldChkZXYsIGVxLT52ZWNpZHgpLCBlcS0+aXJxX25i KTsNCisJZXJyID0gbWx4NV9pcnFfZGV0YWNoX25iKGRldi0+cHJpdi5lcV90YWJsZS0+aXJxX3Rh YmxlLA0KKwkJCQkgZXEtPnZlY2lkeCwgZXEtPmlycV9uYik7DQogCWlmIChlcnIpDQogCQltbHg1 X2NvcmVfd2FybihlcS0+ZGV2LCAiZXEgZmFpbGVkIHRvIGRldGFjaCBmcm9tIGlycS4gZXJyICVk IiwNCiAJCQkgICAgICAgZXJyKTsNCkBAIC0xMDIzLDE5ICsxMDMxLDMxIEBAIHVuc2lnbmVkIGlu dCBtbHg1X2NvbXBfdmVjdG9yc19jb3VudChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2KQ0KIH0N CiBFWFBPUlRfU1lNQk9MKG1seDVfY29tcF92ZWN0b3JzX2NvdW50KTsNCiANCitzdGF0aWMgc3Ry dWN0IGNwdW1hc2sgKg0KK21seDVfaXJxX2dldF9hZmZpbml0eV9tYXNrKHN0cnVjdCBtbHg1X2ly cV90YWJsZSAqaXJxX3RhYmxlLCBpbnQgdmVjaWR4KQ0KK3sNCisJcmV0dXJuIGlycV90YWJsZS0+ aXJxX2luZm9bdmVjaWR4XS5tYXNrOw0KK30NCisNCiBzdHJ1Y3QgY3B1bWFzayAqDQogbWx4NV9j b21wX2lycV9nZXRfYWZmaW5pdHlfbWFzayhzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2LCBpbnQg dmVjdG9yKQ0KIHsNCiAJaW50IHZlY2lkeCA9IHZlY3RvciArIE1MWDVfRVFfVkVDX0NPTVBfQkFT RTsNCiANCi0JcmV0dXJuIGRldi0+cHJpdi5lcV90YWJsZS0+aXJxX3RhYmxlLT5pcnFfaW5mb1t2 ZWNpZHhdLm1hc2s7DQorCXJldHVybiBtbHg1X2lycV9nZXRfYWZmaW5pdHlfbWFzayhkZXYtPnBy aXYuZXFfdGFibGUtPmlycV90YWJsZSwNCisJCQkJCSAgdmVjaWR4KTsNCiB9DQogRVhQT1JUX1NZ TUJPTChtbHg1X2NvbXBfaXJxX2dldF9hZmZpbml0eV9tYXNrKTsNCiANCiAjaWZkZWYgQ09ORklH X1JGU19BQ0NFTA0KK3N0YXRpYyBzdHJ1Y3QgY3B1X3JtYXAgKm1seDVfaXJxX2dldF9ybWFwKHN0 cnVjdCBtbHg1X2lycV90YWJsZSAqaXJxX3RhYmxlKQ0KK3sNCisJcmV0dXJuIGlycV90YWJsZS0+ cm1hcDsNCit9DQorDQogc3RydWN0IGNwdV9ybWFwICptbHg1X2VxX3RhYmxlX2dldF9ybWFwKHN0 cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYpDQogew0KLQlyZXR1cm4gZGV2LT5wcml2LmVxX3RhYmxl LT5pcnFfdGFibGUtPnJtYXA7DQorCXJldHVybiBtbHg1X2lycV9nZXRfcm1hcChkZXYtPnByaXYu ZXFfdGFibGUtPmlycV90YWJsZSk7DQogfQ0KICNlbmRpZg0KIA0KLS0gDQoyLjIxLjANCg0K