|
1 # This patch was developed in-house. Since it is Solaris-specific, |
|
2 # it is not suitable for upstream. |
|
3 # |
1 diff -r -u /tmp/infiniband-diags-1.5.8/Makefile.am infiniband-diags-1.5.8/Makefile.am |
4 diff -r -u /tmp/infiniband-diags-1.5.8/Makefile.am infiniband-diags-1.5.8/Makefile.am |
2 --- /tmp/infiniband-diags-1.5.8/Makefile.am Wed Feb 16 02:13:21 2011 |
5 --- /tmp/infiniband-diags-1.5.8/Makefile.am Wed Feb 16 02:13:21 2011 |
3 +++ infiniband-diags-1.5.8/Makefile.am Fri Feb 25 03:09:22 2011 |
6 +++ infiniband-diags-1.5.8/Makefile.am Fri Feb 25 03:09:22 2011 |
4 @@ -13,7 +13,7 @@ |
7 @@ -13,7 +13,7 @@ |
5 sbin_PROGRAMS = src/ibaddr src/ibnetdiscover src/ibping src/ibportstate \ |
8 sbin_PROGRAMS = src/ibaddr src/ibnetdiscover src/ibping src/ibportstate \ |
1801 out_switch(ch->linenode[n], group, |
1804 out_switch(ch->linenode[n], group, |
1802 chname, NULL, NULL); |
1805 chname, NULL, NULL); |
1803 diff -r -u /tmp/infiniband-diags-1.5.8/src/saquery.c infiniband-diags-1.5.8/src/saquery.c |
1806 diff -r -u /tmp/infiniband-diags-1.5.8/src/saquery.c infiniband-diags-1.5.8/src/saquery.c |
1804 --- /tmp/infiniband-diags-1.5.8/src/saquery.c Wed Feb 16 02:13:21 2011 |
1807 --- /tmp/infiniband-diags-1.5.8/src/saquery.c Wed Feb 16 02:13:21 2011 |
1805 +++ infiniband-diags-1.5.8/src/saquery.c Thu Jun 23 10:36:40 2011 |
1808 +++ infiniband-diags-1.5.8/src/saquery.c Thu Jun 23 10:36:40 2011 |
1806 @@ -105,7 +105,7 @@ |
1809 @@ -104,8 +104,7 @@ |
|
1810 /** |
1807 * Declare some globals because I don't want this to be too complex. |
1811 * Declare some globals because I don't want this to be too complex. |
1808 */ |
1812 */ |
1809 #define MAX_PORTS (8) |
1813 -#define MAX_PORTS (8) |
1810 -#define DEFAULT_SA_TIMEOUT_MS (1000) |
1814 -#define DEFAULT_SA_TIMEOUT_MS (1000) |
1811 +#define DEFAULT_SA_TIMEOUT_MS (10000) |
1815 +#define DEFAULT_SA_TIMEOUT_MS (10000) |
1812 static struct query_res result; |
1816 static struct query_res result; |
1813 |
1817 |
1814 enum { |
1818 enum { |
1815 @@ -1757,7 +1757,7 @@ |
1819 @@ -1757,7 +1756,7 @@ |
1816 requested_lid = (uint16_t) strtoul(argv[0], NULL, 0); |
1820 requested_lid = (uint16_t) strtoul(argv[0], NULL, 0); |
1817 requested_lid_flag++; |
1821 requested_lid_flag++; |
1818 } else if (node_print_desc == NAME_OF_GUID) { |
1822 } else if (node_print_desc == NAME_OF_GUID) { |
1819 - requested_guid = strtoul(argv[0], NULL, 0); |
1823 - requested_guid = strtoul(argv[0], NULL, 0); |
1820 + requested_guid = strtoull(argv[0], NULL, 0); |
1824 + requested_guid = strtoull(argv[0], NULL, 0); |
1866 peerportid.drpath.drdlid = 0xffff; |
1870 peerportid.drpath.drdlid = 0xffff; |
1867 |
1871 |
1868 diff -r -u /tmp/infiniband-diags-1.5.8/src/ibstat.c infiniband-diags-1.5.8/src/ibstat.c |
1872 diff -r -u /tmp/infiniband-diags-1.5.8/src/ibstat.c infiniband-diags-1.5.8/src/ibstat.c |
1869 --- /tmp/infiniband-diags-1.5.8/src/ibstat.c Wed Feb 16 02:13:21 2011 |
1873 --- /tmp/infiniband-diags-1.5.8/src/ibstat.c Wed Feb 16 02:13:21 2011 |
1870 +++ infiniband-diags-1.5.8/src/ibstat.c Fri Feb 25 03:09:28 2011 |
1874 +++ infiniband-diags-1.5.8/src/ibstat.c Fri Feb 25 03:09:28 2011 |
1871 @@ -245,7 +245,7 @@ |
1875 @@ -46,6 +46,7 @@ |
|
1876 |
|
1877 #include <infiniband/umad.h> |
|
1878 #include <infiniband/mad.h> |
|
1879 +#include <infiniband/verbs.h> |
|
1880 |
|
1881 #include <ibdiag_common.h> |
|
1882 |
|
1883 @@ -78,7 +79,7 @@ |
|
1884 } |
|
1885 |
|
1886 static char *port_state_str[] = { |
|
1887 - "???", |
|
1888 + "Unknown", |
|
1889 "Down", |
|
1890 "Initializing", |
|
1891 "Armed", |
|
1892 @@ -112,10 +113,10 @@ |
|
1893 printf("%sPort %d:\n", hdrpre, port->portnum); |
|
1894 printf("%sState: %s\n", pre, |
|
1895 (unsigned)port->state <= |
|
1896 - 4 ? port_state_str[port->state] : "???"); |
|
1897 + 4 ? port_state_str[port->state] : "Unknown"); |
|
1898 printf("%sPhysical state: %s\n", pre, |
|
1899 (unsigned)port->phys_state <= |
|
1900 - 7 ? port_phy_state_str[port->phys_state] : "???"); |
|
1901 + 7 ? port_phy_state_str[port->phys_state] : "Unknown"); |
|
1902 printf("%sRate: %d\n", pre, port->rate); |
|
1903 printf("%sBase lid: %d\n", pre, port->base_lid); |
|
1904 printf("%sLMC: %d\n", pre, port->lmc); |
|
1905 @@ -167,13 +168,13 @@ |
|
1906 |
|
1907 static int ports_list(char names[][UMAD_CA_NAME_LEN], int n) |
|
1908 { |
|
1909 - uint64_t guids[64]; |
|
1910 + uint64_t guids[MAX_PORTS]; |
|
1911 int found, ports, i; |
|
1912 |
|
1913 - for (i = 0, found = 0; i < n && found < 64; i++) { |
|
1914 + for (i = 0, found = 0; i < n && found < MAX_PORTS; i++) { |
|
1915 if ((ports = |
|
1916 umad_get_ca_portguids(names[i], guids + found, |
|
1917 - 64 - found)) < 0) |
|
1918 + MAX_PORTS - found)) < 0) |
|
1919 return -1; |
|
1920 found += ports; |
|
1921 } |
|
1922 @@ -245,7 +246,7 @@ |
1872 if (i >= n) |
1923 if (i >= n) |
1873 IBPANIC("'%s' IB device can't be found", argv[0]); |
1924 IBPANIC("'%s' IB device can't be found", argv[0]); |
1874 |
1925 |
1875 - strncpy(names[i], argv[0], sizeof names[i]); |
1926 - strncpy(names[i], argv[0], sizeof names[i]); |
1876 + strncpy(names[0], argv[0], sizeof names[i]); |
1927 + strncpy(names[0], argv[0], sizeof names[i]); |
1878 } |
1929 } |
1879 |
1930 |
1880 diff -r -u /tmp/infiniband-diags-1.5.8/src/ibdiag_common.c infiniband-diags-1.5.8/src/ibdiag_common.c |
1931 diff -r -u /tmp/infiniband-diags-1.5.8/src/ibdiag_common.c infiniband-diags-1.5.8/src/ibdiag_common.c |
1881 --- /tmp/infiniband-diags-1.5.8/src/ibdiag_common.c Wed Feb 16 02:13:21 2011 |
1932 --- /tmp/infiniband-diags-1.5.8/src/ibdiag_common.c Wed Feb 16 02:13:21 2011 |
1882 +++ infiniband-diags-1.5.8/src/ibdiag_common.c Tue May 3 13:50:05 2011 |
1933 +++ infiniband-diags-1.5.8/src/ibdiag_common.c Tue May 3 13:50:05 2011 |
1883 @@ -330,7 +330,7 @@ |
1934 @@ -322,15 +322,17 @@ |
|
1935 char buf[512]; |
|
1936 va_list va; |
|
1937 int n; |
|
1938 + int bufsz; |
|
1939 |
|
1940 va_start(va, msg); |
|
1941 - n = vsprintf(buf, msg, va); |
|
1942 + bufsz = strlen(msg) < sizeof (buf) ? strlen(msg) : sizeof (buf); |
|
1943 + n = vsnprintf(buf, bufsz, msg, va); |
|
1944 va_end(va); |
|
1945 buf[n] = 0; |
1884 |
1946 |
1885 if (ibdebug) |
1947 if (ibdebug) |
1886 printf("%s: iberror: [pid %d] %s: failed: %s\n", |
1948 printf("%s: iberror: [pid %d] %s: failed: %s\n", |
1887 - prog_name ? prog_name : "", getpid(), fn, buf); |
1949 - prog_name ? prog_name : "", getpid(), fn, buf); |
1888 + prog_name ? prog_name : "", (int)getpid(), fn, buf); |
1950 + prog_name ? prog_name : "", (int)getpid(), fn, buf); |