Skip to contentSkip to conversation

ibsim: parse width and speed from ibnetdiscover output

PATCH In review Eli Dorfman (Voltaire) 2 participants 3 messages Sep 2, 2010 2 messages not in the archive InfiniBand

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ibsim: parse width and speed from ibnetdiscover output

Search for the pattern '[0-9]*x[SDQ]DR'
Validate that width value is valid.

---
 ibsim/sim_net.c |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 48 insertions(+), 0 deletions(-)
ibsim/sim_net.c +48 -0
index 13c3b8c..278c065 100644
@@ -611,6 +611,7 @@ static int parse_port(char *line, Node * node, int type, int maxports)
 	int portnum, isalias = 0;
 	Port *port;
 	char *s;
+	char *p;
 
 	if (line[0] == '@') {
 		isalias = 1;
@@ -671,6 +672,7 @@ static int parse_port(char *line, Node * node, int type, int maxports)
 	}
       parse_opt:
 	line = s;
+	p = s;
 	while (s && (s = strchr(s + 1, '='))) {
 		char *opt = s;
 		while (opt && !isalpha(*opt))
@@ -685,6 +687,52 @@ static int parse_port(char *line, Node * node, int type, int maxports)
 		IBWARN("cannot parse lid, lmc");
 		return -1;
 	}
+
+	/* parse width speed from '[0-9]*x[SDQ]DR' pattern */
+	/* also checking for valid width value */
+	char wstr[3];
+	char sstr[3];
+	s = p;
+	while (s && (s = strchr(s + 1, 'x'))) {
+		int width;
+		p = s - 1;
+		while (p && !isdigit(*p))
+			p--;
+		width = atoi(p);
+		switch (width) {
+			case 1: strcpy(wstr, "1");
+				break;
+			case 4: strcpy(wstr, "2");
+				break;
+			case 8: strcpy(wstr, "4");
+				break;
+			case 12: strcpy(wstr, "8");
+				break;
+			default: wstr[0] = sstr[0] = 0;
+				continue;
+		}
+		p = p + 2;
+		if (!strncmp("SDR", p, 3))
+			strcpy(sstr, "1");
+		else if (!strncmp("DDR", p, 3))
+			strcpy(sstr, "2");
+		else if (!strncmp("QDR", p, 3))
+			strcpy(sstr, "4");
+		else {
+			wstr[0] = sstr[0] = 0;
+			continue;
+		}
+	}
+
+	if (parse_port_opt(port, "w", wstr) < 0) {
+		IBWARN("bad port option");
+		return -1;
+	}
+
+	if (parse_port_opt(port, "s", sstr) < 0) {
+		IBWARN("bad port option");
+		return -1;
+	}
 	return 1;
 }
 
Signature · 6 lines
1.7.2.1

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): [email protected]

#2 lore raw

T24gVGh1LCBTZXAgMiwgMjAxMCBhdCAzOjM3IEFNLCBFbGkgRG9yZm1hbiAoVm9sdGFpcmUpCjxk b3JmbWFuLmVsaUBnbWFpbC5jb20+IHdyb3RlOgo+Cj4gU2VhcmNoIGZvciB0aGUgcGF0dGVybiAn WzAtOV0qeFtTRFFdRFInCj4gVmFsaWRhdGUgdGhhdCB3aWR0aCB2YWx1ZSBpcyB2YWxpZC4KCklm IHRoaXMgaXMgZG9uZSAodG8gaWJzaW0pLCBpcyB0aGUgcHJldmlvdXMgcGF0Y2ggZm9yIGlibmV0 ZGlzY292ZXIgLWYKc3RpbGwgbmVlZGVkID8KCi0tIEhhbAoKPiBTaWduZWQtb2ZmLWJ5OiBFbGkg RG9yZm1hbiA8ZWxpZEB2b2x0YWlyZS5jb20+Cj4gLS0tCj4gwqBpYnNpbS9zaW1fbmV0LmMgfCDC oCA0OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiDC oDEgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKPgo+IGRp ZmYgLS1naXQgYS9pYnNpbS9zaW1fbmV0LmMgYi9pYnNpbS9zaW1fbmV0LmMKPiBpbmRleCAxM2Mz YjhjLi4yNzhjMDY1IDEwMDY0NAo+IC0tLSBhL2lic2ltL3NpbV9uZXQuYwo+ICsrKyBiL2lic2lt L3NpbV9uZXQuYwo+IEBAIC02MTEsNiArNjExLDcgQEAgc3RhdGljIGludCBwYXJzZV9wb3J0KGNo YXIgKmxpbmUsIE5vZGUgKiBub2RlLCBpbnQgdHlwZSwgaW50IG1heHBvcnRzKQo+IMKgIMKgIMKg IMKgaW50IHBvcnRudW0sIGlzYWxpYXMgPSAwOwo+IMKgIMKgIMKgIMKgUG9ydCAqcG9ydDsKPiDC oCDCoCDCoCDCoGNoYXIgKnM7Cj4gKyDCoCDCoCDCoCBjaGFyICpwOwo+Cj4gwqAgwqAgwqAgwqBp ZiAobGluZVswXSA9PSAnQCcpIHsKPiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGlzYWxpYXMgPSAx Owo+IEBAIC02NzEsNiArNjcyLDcgQEAgc3RhdGljIGludCBwYXJzZV9wb3J0KGNoYXIgKmxpbmUs IE5vZGUgKiBub2RlLCBpbnQgdHlwZSwgaW50IG1heHBvcnRzKQo+IMKgIMKgIMKgIMKgfQo+IMKg IMKgIMKgIHBhcnNlX29wdDoKPiDCoCDCoCDCoCDCoGxpbmUgPSBzOwo+ICsgwqAgwqAgwqAgcCA9 IHM7Cj4gwqAgwqAgwqAgwqB3aGlsZSAocyAmJiAocyA9IHN0cmNocihzICsgMSwgJz0nKSkpIHsK PiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGNoYXIgKm9wdCA9IHM7Cj4gwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqB3aGlsZSAob3B0ICYmICFpc2FscGhhKCpvcHQpKQo+IEBAIC02ODUsNiArNjg3LDUy IEBAIHN0YXRpYyBpbnQgcGFyc2VfcG9ydChjaGFyICpsaW5lLCBOb2RlICogbm9kZSwgaW50IHR5 cGUsIGludCBtYXhwb3J0cykKPiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoElCV0FSTigiY2Fubm90 IHBhcnNlIGxpZCwgbG1jIik7Cj4gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqByZXR1cm4gLTE7Cj4g wqAgwqAgwqAgwqB9Cj4gKwo+ICsgwqAgwqAgwqAgLyogcGFyc2Ugd2lkdGggc3BlZWQgZnJvbSAn WzAtOV0qeFtTRFFdRFInIHBhdHRlcm4gKi8KPiArIMKgIMKgIMKgIC8qIGFsc28gY2hlY2tpbmcg Zm9yIHZhbGlkIHdpZHRoIHZhbHVlICovCj4gKyDCoCDCoCDCoCBjaGFyIHdzdHJbM107Cj4gKyDC oCDCoCDCoCBjaGFyIHNzdHJbM107Cj4gKyDCoCDCoCDCoCBzID0gcDsKPiArIMKgIMKgIMKgIHdo aWxlIChzICYmIChzID0gc3RyY2hyKHMgKyAxLCAneCcpKSkgewo+ICsgwqAgwqAgwqAgwqAgwqAg wqAgwqAgaW50IHdpZHRoOwo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgcCA9IHMgLSAxOwo+ICsg wqAgwqAgwqAgwqAgwqAgwqAgwqAgd2hpbGUgKHAgJiYgIWlzZGlnaXQoKnApKQo+ICsgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgcC0tOwo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAg d2lkdGggPSBhdG9pKHApOwo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgc3dpdGNoICh3aWR0aCkg ewo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgY2FzZSAxOiBzdHJjcHkod3N0 ciwgIjEiKTsKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IGJyZWFrOwo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgY2FzZSA0OiBzdHJj cHkod3N0ciwgIjIiKTsKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIGJyZWFrOwo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgY2FzZSA4 OiBzdHJjcHkod3N0ciwgIjQiKTsKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIGJyZWFrOwo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg Y2FzZSAxMjogc3RyY3B5KHdzdHIsICI4Iik7Cj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCBicmVhazsKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIGRlZmF1bHQ6IHdzdHJbMF0gPSBzc3RyWzBdID0gMDsKPiArIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIGNvbnRpbnVlOwo+ICsgwqAgwqAgwqAgwqAg wqAgwqAgwqAgfQo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgcCA9IHAgKyAyOwo+ICsgwqAgwqAg wqAgwqAgwqAgwqAgwqAgaWYgKCFzdHJuY21wKCJTRFIiLCBwLCAzKSkKPiArIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIHN0cmNweShzc3RyLCAiMSIpOwo+ICsgwqAgwqAgwqAgwqAg wqAgwqAgwqAgZWxzZSBpZiAoIXN0cm5jbXAoIkREUiIsIHAsIDMpKQo+ICsgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgc3RyY3B5KHNzdHIsICIyIik7Cj4gKyDCoCDCoCDCoCDCoCDC oCDCoCDCoCBlbHNlIGlmICghc3RybmNtcCgiUURSIiwgcCwgMykpCj4gKyDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCBzdHJjcHkoc3N0ciwgIjQiKTsKPiArIMKgIMKgIMKgIMKgIMKg IMKgIMKgIGVsc2Ugewo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgd3N0clsw XSA9IHNzdHJbMF0gPSAwOwo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgY29u dGludWU7Cj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCB9Cj4gKyDCoCDCoCDCoCB9Cj4gKwo+ICsg wqAgwqAgwqAgaWYgKHBhcnNlX3BvcnRfb3B0KHBvcnQsICJ3Iiwgd3N0cikgPCAwKSB7Cj4gKyDC oCDCoCDCoCDCoCDCoCDCoCDCoCBJQldBUk4oImJhZCBwb3J0IG9wdGlvbiIpOwo+ICsgwqAgwqAg wqAgwqAgwqAgwqAgwqAgcmV0dXJuIC0xOwo+ICsgwqAgwqAgwqAgfQo+ICsKPiArIMKgIMKgIMKg IGlmIChwYXJzZV9wb3J0X29wdChwb3J0LCAicyIsIHNzdHIpIDwgMCkgewo+ICsgwqAgwqAgwqAg wqAgwqAgwqAgwqAgSUJXQVJOKCJiYWQgcG9ydCBvcHRpb24iKTsKPiArIMKgIMKgIMKgIMKgIMKg IMKgIMKgIHJldHVybiAtMTsKPiArIMKgIMKgIMKgIH0KPiDCoCDCoCDCoCDCoHJldHVybiAxOwo+ IMKgfQo+Cj4gLS0KPiAxLjcuMi4xCj4KPiAtLQo+IFRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBs aXN0OiBzZW5kIHRoZSBsaW5lICJ1bnN1YnNjcmliZSBsaW51eC1yZG1hIiBpbgo+IHRoZSBib2R5 IG9mIGEgbWVzc2FnZSB0byBtYWpvcmRvbW9Admdlci5rZXJuZWwub3JnCj4gTW9yZSBtYWpvcmRv bW8gaW5mbyBhdCDCoGh0dHA6Ly92Z2VyLmtlcm5lbC5vcmcvbWFqb3Jkb21vLWluZm8uaHRtbAo+ Cg==
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html

A message that is not in the archive (sent off-list or not yet received): AANLkTi=3R5=obzp=hXmsh9HDswMMV770AB4cZvpTkhZc-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org

#4 lore raw

T24gVGh1LCBTZXAgMiwgMjAxMCBhdCAxOjMzIFBNLCBIYWwgUm9zZW5zdG9jayA8aGFsLnJvc2Vu c3RvY2tAZ21haWwuY29tPiB3cm90ZToKPiBPbiBUaHUsIFNlcCAyLCAyMDEwIGF0IDM6MzcgQU0s IEVsaSBEb3JmbWFuIChWb2x0YWlyZSkKPiA8ZG9yZm1hbi5lbGlAZ21haWwuY29tPiB3cm90ZToK Pj4KPj4gU2VhcmNoIGZvciB0aGUgcGF0dGVybiAnWzAtOV0qeFtTRFFdRFInCj4+IFZhbGlkYXRl IHRoYXQgd2lkdGggdmFsdWUgaXMgdmFsaWQuCj4KPiBJZiB0aGlzIGlzIGRvbmUgKHRvIGlic2lt KSwgaXMgdGhlIHByZXZpb3VzIHBhdGNoIGZvciBpYm5ldGRpc2NvdmVyIC1mCj4gc3RpbGwgbmVl ZGVkID8KCkkgYXNzdW1lIHRoYXQgaXQgaXMgcmVkdW5kYW50IHVubGVzcyB1c2VyIG5hbWVzIGl0 cyBkZXZpY2VzIHdpdGggc2FtZQpwYXR0ZXJuICJbMC05XSp4W1NEUV1EUiIuCkkgY2FuIGdpdmUg cHJpb3JpdHkgdG8gdGhlICdzPScgYW5kICd3PScgb3B0aW9ucyBhbmQgc2tpcCBwYXJzaW5nIG9m CnRoZSBhYm92ZSBwYXR0ZXJuLgoKRWxpCgo+Cj4gLS0gSGFsCj4KPj4gU2lnbmVkLW9mZi1ieTog RWxpIERvcmZtYW4gPGVsaWRAdm9sdGFpcmUuY29tPgo+PiAtLS0KPj4gwqBpYnNpbS9zaW1fbmV0 LmMgfCDCoCA0OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKPj4gwqAxIGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0p Cj4+Cj4+IGRpZmYgLS1naXQgYS9pYnNpbS9zaW1fbmV0LmMgYi9pYnNpbS9zaW1fbmV0LmMKPj4g aW5kZXggMTNjM2I4Yy4uMjc4YzA2NSAxMDA2NDQKPj4gLS0tIGEvaWJzaW0vc2ltX25ldC5jCj4+ ICsrKyBiL2lic2ltL3NpbV9uZXQuYwo+PiBAQCAtNjExLDYgKzYxMSw3IEBAIHN0YXRpYyBpbnQg cGFyc2VfcG9ydChjaGFyICpsaW5lLCBOb2RlICogbm9kZSwgaW50IHR5cGUsIGludCBtYXhwb3J0 cykKPj4gwqAgwqAgwqAgwqBpbnQgcG9ydG51bSwgaXNhbGlhcyA9IDA7Cj4+IMKgIMKgIMKgIMKg UG9ydCAqcG9ydDsKPj4gwqAgwqAgwqAgwqBjaGFyICpzOwo+PiArIMKgIMKgIMKgIGNoYXIgKnA7 Cj4+Cj4+IMKgIMKgIMKgIMKgaWYgKGxpbmVbMF0gPT0gJ0AnKSB7Cj4+IMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgaXNhbGlhcyA9IDE7Cj4+IEBAIC02NzEsNiArNjcyLDcgQEAgc3RhdGljIGludCBw YXJzZV9wb3J0KGNoYXIgKmxpbmUsIE5vZGUgKiBub2RlLCBpbnQgdHlwZSwgaW50IG1heHBvcnRz KQo+PiDCoCDCoCDCoCDCoH0KPj4gwqAgwqAgwqAgcGFyc2Vfb3B0Ogo+PiDCoCDCoCDCoCDCoGxp bmUgPSBzOwo+PiArIMKgIMKgIMKgIHAgPSBzOwo+PiDCoCDCoCDCoCDCoHdoaWxlIChzICYmIChz ID0gc3RyY2hyKHMgKyAxLCAnPScpKSkgewo+PiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGNoYXIg Km9wdCA9IHM7Cj4+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgd2hpbGUgKG9wdCAmJiAhaXNhbHBo YSgqb3B0KSkKPj4gQEAgLTY4NSw2ICs2ODcsNTIgQEAgc3RhdGljIGludCBwYXJzZV9wb3J0KGNo YXIgKmxpbmUsIE5vZGUgKiBub2RlLCBpbnQgdHlwZSwgaW50IG1heHBvcnRzKQo+PiDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoElCV0FSTigiY2Fubm90IHBhcnNlIGxpZCwgbG1jIik7Cj4+IMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgcmV0dXJuIC0xOwo+PiDCoCDCoCDCoCDCoH0KPj4gKwo+PiArIMKg IMKgIMKgIC8qIHBhcnNlIHdpZHRoIHNwZWVkIGZyb20gJ1swLTldKnhbU0RRXURSJyBwYXR0ZXJu ICovCj4+ICsgwqAgwqAgwqAgLyogYWxzbyBjaGVja2luZyBmb3IgdmFsaWQgd2lkdGggdmFsdWUg Ki8KPj4gKyDCoCDCoCDCoCBjaGFyIHdzdHJbM107Cj4+ICsgwqAgwqAgwqAgY2hhciBzc3RyWzNd Owo+PiArIMKgIMKgIMKgIHMgPSBwOwo+PiArIMKgIMKgIMKgIHdoaWxlIChzICYmIChzID0gc3Ry Y2hyKHMgKyAxLCAneCcpKSkgewo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIGludCB3aWR0aDsK Pj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCBwID0gcyAtIDE7Cj4+ICsgwqAgwqAgwqAgwqAgwqAg wqAgwqAgd2hpbGUgKHAgJiYgIWlzZGlnaXQoKnApKQo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIHAtLTsKPj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCB3aWR0aCA9IGF0b2ko cCk7Cj4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgc3dpdGNoICh3aWR0aCkgewo+PiArIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIGNhc2UgMTogc3RyY3B5KHdzdHIsICIxIik7Cj4+ ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgYnJlYWs7Cj4+ ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgY2FzZSA0OiBzdHJjcHkod3N0ciwg IjIiKTsKPj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBi cmVhazsKPj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBjYXNlIDg6IHN0cmNw eSh3c3RyLCAiNCIpOwo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIGJyZWFrOwo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIGNhc2Ug MTI6IHN0cmNweSh3c3RyLCAiOCIpOwo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIGJyZWFrOwo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIGRlZmF1bHQ6IHdzdHJbMF0gPSBzc3RyWzBdID0gMDsKPj4gKyDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBjb250aW51ZTsKPj4gKyDCoCDCoCDCoCDCoCDC oCDCoCDCoCB9Cj4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgcCA9IHAgKyAyOwo+PiArIMKgIMKg IMKgIMKgIMKgIMKgIMKgIGlmICghc3RybmNtcCgiU0RSIiwgcCwgMykpCj4+ICsgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgc3RyY3B5KHNzdHIsICIxIik7Cj4+ICsgwqAgwqAgwqAg wqAgwqAgwqAgwqAgZWxzZSBpZiAoIXN0cm5jbXAoIkREUiIsIHAsIDMpKQo+PiArIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHN0cmNweShzc3RyLCAiMiIpOwo+PiArIMKgIMKgIMKg IMKgIMKgIMKgIMKgIGVsc2UgaWYgKCFzdHJuY21wKCJRRFIiLCBwLCAzKSkKPj4gKyDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBzdHJjcHkoc3N0ciwgIjQiKTsKPj4gKyDCoCDCoCDC oCDCoCDCoCDCoCDCoCBlbHNlIHsKPj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCB3c3RyWzBdID0gc3N0clswXSA9IDA7Cj4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgY29udGludWU7Cj4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgfQo+PiArIMKgIMKgIMKg IH0KPj4gKwo+PiArIMKgIMKgIMKgIGlmIChwYXJzZV9wb3J0X29wdChwb3J0LCAidyIsIHdzdHIp IDwgMCkgewo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIElCV0FSTigiYmFkIHBvcnQgb3B0aW9u Iik7Cj4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgcmV0dXJuIC0xOwo+PiArIMKgIMKgIMKgIH0K Pj4gKwo+PiArIMKgIMKgIMKgIGlmIChwYXJzZV9wb3J0X29wdChwb3J0LCAicyIsIHNzdHIpIDwg MCkgewo+PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIElCV0FSTigiYmFkIHBvcnQgb3B0aW9uIik7 Cj4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgcmV0dXJuIC0xOwo+PiArIMKgIMKgIMKgIH0KPj4g wqAgwqAgwqAgwqByZXR1cm4gMTsKPj4gwqB9Cj4+Cj4+IC0tCj4+IDEuNy4yLjEKPj4KPj4gLS0K Pj4gVG8gdW5zdWJzY3JpYmUgZnJvbSB0aGlzIGxpc3Q6IHNlbmQgdGhlIGxpbmUgInVuc3Vic2Ny aWJlIGxpbnV4LXJkbWEiIGluCj4+IHRoZSBib2R5IG9mIGEgbWVzc2FnZSB0byBtYWpvcmRvbW9A dmdlci5rZXJuZWwub3JnCj4+IE1vcmUgbWFqb3Jkb21vIGluZm8gYXQgwqBodHRwOi8vdmdlci5r ZXJuZWwub3JnL21ham9yZG9tby1pbmZvLmh0bWwKPj4KPgo=
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html