Remove libibcommon dependencies from libibmad and infiniband-diags. Actually libibcommon is not used anymore in management tree.
Macros IBWARN(), IBPANIC(), ALIGN() and functions htonll(), htohll() and xdump() are part of libibmad now. Signed-off-by: Sasha Khapyorsky <[email protected]> --- infiniband-diags/configure.in | 5 --- infiniband-diags/infiniband-diags.spec.in | 2 +- infiniband-diags/src/grouping.c | 1 - infiniband-diags/src/ibaddr.c | 1 - infiniband-diags/src/ibnetdiscover.c | 1 - infiniband-diags/src/ibping.c | 10 ++++++- infiniband-diags/src/ibportstate.c | 1 - infiniband-diags/src/ibroute.c | 1 - infiniband-diags/src/ibstat.c | 1 - infiniband-diags/src/ibsysstat.c | 1 - infiniband-diags/src/ibtracert.c | 1 - infiniband-diags/src/mcm_rereg_test.c | 1 - infiniband-diags/src/perfquery.c | 1 - infiniband-diags/src/sminfo.c | 1 - infiniband-diags/src/smpdump.c | 1 - infiniband-diags/src/smpquery.c | 1 - infiniband-diags/src/vendstat.c | 1 - libibmad/configure.in | 5 --- libibmad/include/infiniband/mad.h | 44 +++++++++++++++++++++++++++++ libibmad/libibmad.ver | 2 +- libibmad/src/dump.c | 28 +++++++++++++++++- libibmad/src/fields.c | 1 - libibmad/src/gs.c | 1 - libibmad/src/libibmad.map | 1 + libibmad/src/mad.c | 1 - libibmad/src/portid.c | 1 - libibmad/src/register.c | 1 - libibmad/src/resolve.c | 1 - libibmad/src/rpc.c | 1 - libibmad/src/sa.c | 1 - libibmad/src/serv.c | 1 - libibmad/src/smp.c | 1 - libibmad/src/vendor.c | 1 - 33 files changed, 83 insertions(+), 39 deletions(-) diff --git a/infiniband-diags/configure.in b/infiniband-diags/configure.in index 17204a4..58eea0a 100644 --- a/infiniband-diags/configure.in +++ b/infiniband-diags/configure.in @@ -32,8 +32,6 @@ AC_PROG_LIBTOOL if test "$disable_libcheck" != "yes" then dnl Checks for libraries -AC_CHECK_LIB(ibcommon, ibpanic, [], - AC_MSG_ERROR([ibpanic() not found. diags require libibcommon.])) AC_CHECK_LIB(ibumad, umad_init, [], AC_MSG_ERROR([umad_init() not found. diags require libibumad.])) AC_CHECK_LIB(ibmad, mad_dump_int, [], @@ -53,9 +51,6 @@ AC_HEADER_STDC AC_CHECK_HEADERS([stdlib.h string.h unistd.h fcntl.h inttypes.h netinet/in.h sys/ioctl.h syslog.h]) if test "$disable_libcheck" != "yes" then -AC_CHECK_HEADER(infiniband/common.h, [], - AC_MSG_ERROR([<infiniband/common.h> not found. diags require libibcommon.]) -) AC_CHECK_HEADER(infiniband/umad.h, [], AC_MSG_ERROR([<infiniband/umad.h> not found. diags require libibumad.]) ) diff --git a/infiniband-diags/infiniband-diags.spec.in b/infiniband-diags/infiniband-diags.spec.in index 9c8c0c4..3791eb4 100644 --- a/infiniband-diags/infiniband-diags.spec.in +++ b/infiniband-diags/infiniband-diags.spec.in @@ -11,7 +11,7 @@ Group: System Environment/Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Source: http://www.openfabrics.org/downloads/management/@TARBALL@ Url: http://openfabrics.org/ -BuildRequires: libibmad-devel, opensm-devel, libibcommon-devel, libibumad-devel +BuildRequires: libibmad-devel, opensm-devel, libibumad-devel Provides: perl(IBswcountlimits) Obsoletes: openib-diags diff --git a/infiniband-diags/src/grouping.c b/infiniband-diags/src/grouping.c index f1a996f..94ab859 100644 --- a/infiniband-diags/src/grouping.c +++ b/infiniband-diags/src/grouping.c @@ -44,7 +44,6 @@ #include <stdlib.h> #include <inttypes.h> -#include <infiniband/common.h> #include <infiniband/mad.h> #include "ibnetdiscover.h" diff --git a/infiniband-diags/src/ibaddr.c b/infiniband-diags/src/ibaddr.c index f48a9c9..4d6c50d 100644 --- a/infiniband-diags/src/ibaddr.c +++ b/infiniband-diags/src/ibaddr.c @@ -42,7 +42,6 @@ #include <getopt.h> #include <arpa/inet.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/infiniband-diags/src/ibnetdiscover.c b/infiniband-diags/src/ibnetdiscover.c index 2cfaa8a..296cb07 100644 --- a/infiniband-diags/src/ibnetdiscover.c +++ b/infiniband-diags/src/ibnetdiscover.c @@ -47,7 +47,6 @@ #include <errno.h> #include <inttypes.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> #include <infiniband/complib/cl_nodenamemap.h> diff --git a/infiniband-diags/src/ibping.c b/infiniband-diags/src/ibping.c index 4fd2dcb..4b99725 100644 --- a/infiniband-diags/src/ibping.c +++ b/infiniband-diags/src/ibping.c @@ -43,8 +43,8 @@ #include <string.h> #include <signal.h> #include <getopt.h> +#include <sys/time.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> @@ -60,6 +60,14 @@ static char last_host[IB_VENDOR_RANGE2_DATA_SIZE]; char *argv0 = "ibping"; +static uint64_t getcurrenttime(void) +{ + struct timeval tv; + + gettimeofday(&tv, 0); + return (uint64_t)tv.tv_sec * 1000000 + tv.tv_usec; +} + static void get_host_and_domain(char *data, int sz) { diff --git a/infiniband-diags/src/ibportstate.c b/infiniband-diags/src/ibportstate.c index 36453bb..a82bb14 100644 --- a/infiniband-diags/src/ibportstate.c +++ b/infiniband-diags/src/ibportstate.c @@ -43,7 +43,6 @@ #include <string.h> #include <getopt.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/infiniband-diags/src/ibroute.c b/infiniband-diags/src/ibroute.c index f2ee170..921b5dd 100644 --- a/infiniband-diags/src/ibroute.c +++ b/infiniband-diags/src/ibroute.c @@ -46,7 +46,6 @@ #include <netinet/in.h> #include <ctype.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> #include <infiniband/complib/cl_nodenamemap.h> diff --git a/infiniband-diags/src/ibstat.c b/infiniband-diags/src/ibstat.c index 5d2113e..6bd3c8a 100644 --- a/infiniband-diags/src/ibstat.c +++ b/infiniband-diags/src/ibstat.c @@ -44,7 +44,6 @@ #include <getopt.h> #include <netinet/in.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/infiniband-diags/src/ibsysstat.c b/infiniband-diags/src/ibsysstat.c index e3d0b9f..d881e5b 100644 --- a/infiniband-diags/src/ibsysstat.c +++ b/infiniband-diags/src/ibsysstat.c @@ -43,7 +43,6 @@ #include <string.h> #include <getopt.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/infiniband-diags/src/ibtracert.c b/infiniband-diags/src/ibtracert.c index bde0ea7..7a28940 100644 --- a/infiniband-diags/src/ibtracert.c +++ b/infiniband-diags/src/ibtracert.c @@ -46,7 +46,6 @@ #include <inttypes.h> #include <errno.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> #include <infiniband/complib/cl_nodenamemap.h> diff --git a/infiniband-diags/src/mcm_rereg_test.c b/infiniband-diags/src/mcm_rereg_test.c index 0ba9901..9285b95 100644 --- a/infiniband-diags/src/mcm_rereg_test.c +++ b/infiniband-diags/src/mcm_rereg_test.c @@ -36,7 +36,6 @@ #include <errno.h> #include <inttypes.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/infiniband-diags/src/perfquery.c b/infiniband-diags/src/perfquery.c index 7a53e92..d2c5904 100644 --- a/infiniband-diags/src/perfquery.c +++ b/infiniband-diags/src/perfquery.c @@ -43,7 +43,6 @@ #include <getopt.h> #include <netinet/in.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/infiniband-diags/src/sminfo.c b/infiniband-diags/src/sminfo.c index c811057..bdcdad9 100644 --- a/infiniband-diags/src/sminfo.c +++ b/infiniband-diags/src/sminfo.c @@ -42,7 +42,6 @@ #include <inttypes.h> #include <getopt.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/infiniband-diags/src/smpdump.c b/infiniband-diags/src/smpdump.c index e26b369..6f7bae2 100644 --- a/infiniband-diags/src/smpdump.c +++ b/infiniband-diags/src/smpdump.c @@ -45,7 +45,6 @@ #include <getopt.h> #include <netinet/in.h> -#include <infiniband/common.h> #include <infiniband/mad.h> #include <infiniband/umad.h> diff --git a/infiniband-diags/src/smpquery.c b/infiniband-diags/src/smpquery.c index ed8ec83..6071245 100644 --- a/infiniband-diags/src/smpquery.c +++ b/infiniband-diags/src/smpquery.c @@ -47,7 +47,6 @@ #define __STDC_FORMAT_MACROS #include <inttypes.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> #include <infiniband/complib/cl_nodenamemap.h> diff --git a/infiniband-diags/src/vendstat.c b/infiniband-diags/src/vendstat.c index 0674986..9295898 100644 --- a/infiniband-diags/src/vendstat.c +++ b/infiniband-diags/src/vendstat.c @@ -42,7 +42,6 @@ #include <getopt.h> #include <netinet/in.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <infiniband/mad.h> diff --git a/libibmad/configure.in b/libibmad/configure.in index 22ea5ef..e7c2deb 100644 --- a/libibmad/configure.in +++ b/libibmad/configure.in @@ -31,8 +31,6 @@ AC_PROG_CC dnl Checks for libraries if test "$disable_libcheck" != "yes" then -AC_CHECK_LIB(ibcommon, ibpanic, [], - AC_MSG_ERROR([ibpanic() not found. libibmad requires libibcommon.])) AC_CHECK_LIB(ibumad, umad_init, [], AC_MSG_ERROR([umad_init() not found. libibmad requires libibumad.])) fi @@ -42,9 +40,6 @@ AC_HEADER_STDC AC_CHECK_HEADERS([netinet/in.h stdlib.h string.h sys/time.h unistd.h]) if test "$disable_libcheck" != "yes" then -AC_CHECK_HEADER(infiniband/common.h, [], - AC_MSG_ERROR([<infiniband/common.h> not found. libibmad requires libibcommon.]) -) AC_CHECK_HEADER(infiniband/umad.h, [], AC_MSG_ERROR([<infiniband/umad.h> not found. libibmad requires libibumad.]) ) diff --git a/libibmad/include/infiniband/mad.h b/libibmad/include/infiniband/mad.h index fd0deff..989e474 100644 --- a/libibmad/include/infiniband/mad.h +++ b/libibmad/include/infiniband/mad.h @@ -35,6 +35,11 @@ #include <stdint.h> #include <string.h> +#include <stdlib.h> +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> +#include <byteswap.h> #ifdef __cplusplus # define BEGIN_C_DECLS extern "C" { @@ -835,6 +840,45 @@ ib_mad_dump_fn extern int ibdebug; +#if __BYTE_ORDER == __LITTLE_ENDIAN +#ifndef ntohll +static inline uint64_t ntohll(uint64_t x) { + return bswap_64(x); +} +#endif +#ifndef htonll +static inline uint64_t htonll(uint64_t x) { + return bswap_64(x); +} +#endif +#elif __BYTE_ORDER == __BIG_ENDIAN +#ifndef ntohll +static inline uint64_t ntohll(uint64_t x) { + return x; +} +#endif +#ifndef htonll +static inline uint64_t htonll(uint64_t x) { + return x; +} +#endif +#endif /* __BYTE_ORDER == __BIG_ENDIAN */ + +/* Misc. macros: */ +/** align value \a l to \a size (ceil) */ +#define ALIGN(l, size) (((l) + ((size) - 1)) / (size) * (size)) + +/** printf style warning MACRO, includes name of function and pid */ +#define IBWARN(fmt, ...) fprintf(stdout, "ibwarn: [%d] %s: " fmt, getpid(), __func__, ## __VA_ARGS__) + +/** printf style abort MACRO, includes name of function and pid */ +#define IBPANIC(fmt, ...) do { \ + fprintf(stdout, "ibpanic: [%d] %s: " fmt, getpid(), __func__, ## __VA_ARGS__); \ + exit(-1); \ +} while(0) + +void xdump(FILE *file, char *msg, void *p, int size); + END_C_DECLS #endif /* _MAD_H_ */ diff --git a/libibmad/libibmad.ver b/libibmad/libibmad.ver index 51f2b71..7e93c16 100644 --- a/libibmad/libibmad.ver +++ b/libibmad/libibmad.ver @@ -6,4 +6,4 @@ # API_REV - advance on any added API # RUNNING_REV - advance any change to the vendor files # AGE - number of backward versions the API still supports -LIBVERSION=4:0:3 +LIBVERSION=5:0:4 diff --git a/libibmad/src/dump.c b/libibmad/src/dump.c index 49bb34b..38a2254 100644 --- a/libibmad/src/dump.c +++ b/libibmad/src/dump.c @@ -44,7 +44,6 @@ #include <netinet/in.h> #include <mad.h> -#include <infiniband/common.h> void mad_dump_int(char *buf, int bufsz, void *val, int valsz) @@ -729,3 +728,30 @@ mad_dump_perfcounters_ext(char *buf, int bufsz, void *val, int valsz) { _dump_fields(buf, bufsz, val, IB_PC_EXT_FIRST_F, IB_PC_EXT_LAST_F); } + +void xdump(FILE *file, char *msg, void *p, int size) +{ +#define HEX(x) ((x) < 10 ? '0' + (x) : 'a' + ((x) -10)) + uint8_t *cp = p; + int i; + + if (msg) + fputs(msg, file); + + for (i = 0; i < size;) { + fputc(HEX(*cp >> 4), file); + fputc(HEX(*cp & 0xf), file); + if (++i >= size) + break; + fputc(HEX(cp[1] >> 4), file); + fputc(HEX(cp[1] & 0xf), file); + if ((++i) % 16) + fputc(' ', file); + else + fputc('\n', file); + cp += 2; + } + if (i % 16) { + fputc('\n', file); + } +} diff --git a/libibmad/src/fields.c b/libibmad/src/fields.c index ffbfc76..50611c5 100644 --- a/libibmad/src/fields.c +++ b/libibmad/src/fields.c @@ -41,7 +41,6 @@ #include <string.h> #include <mad.h> -#include <infiniband/common.h> /* * BITSOFFS and BE_OFFS are required due the fact that the bit offsets are inconsistently diff --git a/libibmad/src/gs.c b/libibmad/src/gs.c index cade54b..89c927e 100644 --- a/libibmad/src/gs.c +++ b/libibmad/src/gs.c @@ -42,7 +42,6 @@ #include <pthread.h> #include <sys/time.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include "mad.h" diff --git a/libibmad/src/libibmad.map b/libibmad/src/libibmad.map index ea1ed4b..927e51c 100644 --- a/libibmad/src/libibmad.map +++ b/libibmad/src/libibmad.map @@ -1,5 +1,6 @@ IBMAD_1.3 { global: + xdump; mad_dump_field; mad_dump_val; mad_print_field; diff --git a/libibmad/src/mad.c b/libibmad/src/mad.c index fc73a7a..f0fffcd 100644 --- a/libibmad/src/mad.c +++ b/libibmad/src/mad.c @@ -42,7 +42,6 @@ #include <pthread.h> #include <sys/time.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <mad.h> diff --git a/libibmad/src/portid.c b/libibmad/src/portid.c index 24a555b..a84baee 100644 --- a/libibmad/src/portid.c +++ b/libibmad/src/portid.c @@ -45,7 +45,6 @@ #include <arpa/inet.h> #include <mad.h> -#include <infiniband/common.h> #undef DEBUG #define DEBUG if (ibdebug) IBWARN diff --git a/libibmad/src/register.c b/libibmad/src/register.c index 8e59e6e..a33acd8 100644 --- a/libibmad/src/register.c +++ b/libibmad/src/register.c @@ -43,7 +43,6 @@ #include <string.h> #include <errno.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include "mad.h" diff --git a/libibmad/src/resolve.c b/libibmad/src/resolve.c index 25062f6..f012543 100644 --- a/libibmad/src/resolve.c +++ b/libibmad/src/resolve.c @@ -42,7 +42,6 @@ #include <string.h> #include <sys/time.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <mad.h> diff --git a/libibmad/src/rpc.c b/libibmad/src/rpc.c index 34a6b9a..df28f65 100644 --- a/libibmad/src/rpc.c +++ b/libibmad/src/rpc.c @@ -43,7 +43,6 @@ #include <string.h> #include <errno.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include "mad.h" diff --git a/libibmad/src/sa.c b/libibmad/src/sa.c index 2e092ec..192f56e 100644 --- a/libibmad/src/sa.c +++ b/libibmad/src/sa.c @@ -43,7 +43,6 @@ #include <sys/time.h> #include <mad.h> -#include <infiniband/common.h> #undef DEBUG #define DEBUG if (ibdebug) IBWARN diff --git a/libibmad/src/serv.c b/libibmad/src/serv.c index 9b20cb6..a90e961 100644 --- a/libibmad/src/serv.c +++ b/libibmad/src/serv.c @@ -43,7 +43,6 @@ #include <string.h> #include <netinet/in.h> -#include <infiniband/common.h> #include <infiniband/umad.h> #include <mad.h> diff --git a/libibmad/src/smp.c b/libibmad/src/smp.c index 2c2bde2..d190af0 100644 --- a/libibmad/src/smp.c +++ b/libibmad/src/smp.c @@ -43,7 +43,6 @@ #include <sys/time.h> #include <mad.h> -#include <infiniband/common.h> #undef DEBUG #define DEBUG if (ibdebug) IBWARN diff --git a/libibmad/src/vendor.c b/libibmad/src/vendor.c index 468e2d3..04e7641 100644 --- a/libibmad/src/vendor.c +++ b/libibmad/src/vendor.c @@ -43,7 +43,6 @@ #include <sys/time.h> #include <mad.h> -#include <infiniband/common.h> #undef DEBUG #define DEBUG if (ibdebug) IBWARN -- 1.6.0.4.766.g6fc4a _______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
