OK I found the issue. Some of our internal code doesn't like the fact that we fallback to strncmp when strncasecmp isn't available (and icc basically says that that strncasecmp isn't usable). I'll try to fix this strange remnants from long time ago. Brice
Le 09/07/2014 23:42, Nick Papior Andersen a écrit : > Dear Brice > > > 2014-07-09 21:34 GMT+00:00 Brice Goglin <brice.gog...@inria.fr > <mailto:brice.gog...@inria.fr>>: > > Le 09/07/2014 23:30, Nick Papior Andersen a écrit : >> Dear Brice >> >> Here are my findings (apologies for not doing make check on >> before-hand!) >> >> 2014-07-09 20:42 GMT+00:00 Brice Goglin <brice.gog...@inria.fr >> <mailto:brice.gog...@inria.fr>>: >> >> Hello, >> >> A quick look in Open MPI source code seems to say that it's >> manipulating XML topologies in these lines. >> >> Please go into your hwloc-1.9 build directory, and run >> "tests/xmlbuffer" (you will may have to build it with run >> "make xmlbuffer -C tests"). >> >> This errors out with a segmentation fault. I tried recompiling >> with -g -traceback, to no avail, nothing shows up other than: >> using default import and export >> exported to buffer 0x1240c40 length 40817 >> Segmentation fault >> which is right before the "re-exported" statement. ulimit is not >> ridiculously low. > > Can you run it under gdb? > libtool --mode=execute gdb tests/xmlbuffer > $ r > $ bt full > <send this output> > > (gdb) r > Starting program: > /home/nick/phd/code/install/.compile/hwloc-1.9/tests/.libs/lt-xmlbuffer > using default import and export > exported to buffer 0x6b6c50 length 40817 > > Program received signal SIGSEGV, Segmentation fault. > 0x00000000004017fb in one_test () at xmlbuffer.c:51 > 51 if (strcmp(hwloc_obj_get_info_by_name(hwloc_get_root_obj(topology), > "UglyString"), s)) > (gdb) bt full > #0 0x00000000004017fb in one_test () at xmlbuffer.c:51 > topology = 0x615dc0 > size1 = 40817 > size2 = 45 > buf1 = 0x6b6c50 "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE > topology SYSTEM \"hwloc.dtd\">\n<topology>\n <object type=\"Machine\" > os_index=\"0\" cpuset=\"0x00ffffff\" complete_cpuset=\"0x00ffffff\" > online_cpuset=\"0x00fffff"... > buf2 = 0x180 <Address 0x180 out of bounds> > err = 0 > s = " \t\n \r", ' ' <repeats 19 times>, > "!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ > " > t = "x\001\002\003\004\005\006\ay" > #1 0x0000000000401495 in main () at xmlbuffer.c:83 > No locals. > > > Also, can you try setting HWLOC_NO_LIBXML_IMPORT=1 and/or > HWLOC_NO_LIBXML_EXPORT=1 in the environment to see if the problem > comes from XML import or export? > > You mean: > HWLOC_NO_LIBXML_EXPORT=1 ./xmlbuffer > HWLOC_NO_LIBXML_IMPORT=1 ./xmlbuffer > HWLOC_NO_LIBXML_IMPORT=1 HWLOC_NO_LIBXML_EXPORT=1 ./xmlbuffer > It does exactly the same thing, Segmentation fault. > > > Thanks > Brice > > > > > -- > Kind regards Nick