If I understand well,

there are parameters mismatch between mbind manual and kernel
implementation. It means that if I use mbind() directly and not by hwloc, I
could pass it wrong parameters.. or not?

2011/8/15 Brice Goglin <brice.gog...@inria.fr>

>
> No it just means that valgrind could properly check how hwloc uses mbind.
> But I checked the hwloc code again, things look ok, and the kernel is happy
> with our mbind parameters.
> Brice
>
>
> ----- Reply message -----
> De : "Gabriele Fatigati" <g.fatig...@cineca.it>
> Pour?: "Brice Goglin" <brice.gog...@inria.fr>
> Cc : "Hardware locality user list" <hwloc-us...@open-mpi.org>
> Objet : [hwloc-users] hwloc varning flag
> Date : lun., ao?t 15, 2011 10:55
>
>
>
>
> Hi Brice,
>
> thanks for the info, but it means mbind() function could does not works in
> some cases?
>
> 2011/8/14 Brice Goglin <brice.gog...@inria.fr>
>
> > **
> > FWIW it's worth, it's a "bug" in valgrind. The manpage of mbind does not
> > exactly match the kernel requirements on mbind parameters. And valgrind
> > fails at respecting the manpage anyway. See
> > https://bugs.kde.org/show_bug.cgi?id=280083 for the mess...
> >
> > Brice
> >
> >
> >
> > Le 13/08/2011 15:07, Brice Goglin a ?crit :
> >
> > I think I am seeing this too on a custom program, so probably not your
> > application's fault.
> > Brice
> >
> >
> >
> > Le 13/08/2011 10:37, Gabriele Fatigati a ?crit :
> >
> >
> >
> > Dearhwloc users and developers,
> >
> >  I'm using hwloc 1.2 stable version Intel 11 compiled and checking my
> > little application with valgrind 3.5.
> >
> >  My app calls hwloc_set_area_membind_nodeset() function from a OpenMP
> > thread:
> >
> >  hwloc_set_area_membind_nodeset(topology, mem, 10000, nodeset,
> > HWLOC_MEMBIND_BIND, HWLOC_MEMBIND_THREAD | HWLOC_MEMBIND_STRICT |
> > HWLOC_MEMBIND_NOCPUBIND )
> >
> >  membind seems to work well, but valgrind give me a follow warning:
> >
> >  ==2904== Syscall param mbind(nodemask) points to unaddressable byte(s)
> > ==2904==    at 0x4FF33C1: syscall6 (in /usr/lib64/libnuma.so.1)
> > ==2904==    by 0x4FF3436: mbind (in /usr/lib64/libnuma.so.1)
> > ==2904==    by 0x4C208AC: hwloc_linux_set_area_membind
> > (topology-linux.c:1071)
> > ==2904==    by 0x4C1AC3E: hwloc_set_area_membind_nodeset (bind.c:396)
> > ==2904==    by 0x402165: bind_memory_tonode (main.c:97)
> > ==2904==  Address 0x5a64978 is 0 bytes after a block of size 8 alloc'd
> > ==2904==    at 0x4A05140: calloc (vg_replace_malloc.c:418)
> > ==2904==    by 0x4C20646: hwloc_linux_membind_mask_from_nodeset
> > (topology-linux.c:996)
> > ==2904==    by 0x4C2083E: hwloc_linux_set_area_membind
> > (topology-linux.c:1054)
> > ==2904==    by 0x4C1AC3E: hwloc_set_area_membind_nodeset (bind.c:396)
> >  ==2904==    by 0x401CBB: bind_memory_tonode (main.c:97)
> >
> >  valgrind has  --tool=memcheck --leak-check=full  exec flags.
> >
> >  It give me the same warning also with just one byte memory bound.
> >
> >  Is it a hwloc warning or my applications warning?
> >
> >  Thanks in forward.
> >
> >
> >
> >
> >
> >  --
> > Ing. Gabriele Fatigati
> >
> > HPC specialist
> >
> > SuperComputing Applications and Innovation Department
> >
> > Via Magnanelli 6/3, Casalecchio di Reno (BO) Italy
> >
> > www.cineca.it                    Tel:   +39 051 6171722
> >
> > g.fatigati [AT] cineca.it
> >
> >
> > _______________________________________________
> > hwloc-users mailing listhwloc-users@open-mpi.orghttp://
> www.open-mpi.org/mailman/listinfo.cgi/hwloc-users
> >
> >
> >
> >
>
>
> --
> Ing. Gabriele Fatigati
>
> HPC specialist
>
> SuperComputing Applications and Innovation Department
>
> Via Magnanelli 6/3, Casalecchio di Reno (BO) Italy
>
> www.cineca.it                    Tel:   +39 051 6171722
>
> g.fatigati [AT] cineca.it
>



-- 
Ing. Gabriele Fatigati

HPC specialist

SuperComputing Applications and Innovation Department

Via Magnanelli 6/3, Casalecchio di Reno (BO) Italy

www.cineca.it                    Tel:   +39 051 6171722

g.fatigati [AT] cineca.it

Reply via email to