Hallo, while browsing through the implementation of the bitmap API in hwloc 1.1 and comparing it with the cpuset API of hwloc 1.0, it turns out that hwloc_bitmap_alloc uses malloc and leaves struct member ulongs uninitialized, wheres 1.0 used calloc.
This leads to random bitmap content after creation with hwloc_bitmap_alloc, depending on how system's malloc works. In addition, these bitmaps cannot be zeroed with hwloc_bitmap_zero right after alloc. One may check this with the call sequence hwloc_bitmap_alloc hwloc_bitmap_to_ulong hwloc_bitmap_zero hwloc_bitmap_to_ulong I would expect that hwloc_bitmap_alloc returns a new empty bitmap, which appears to be empty with all methods showing bitmap content, and which can be used for logical bit manipulations without further initialization. I suggest to reintroduce calloc or memset in hwloc_bitmap_alloc. Sincerely BK -- Dr. Bernd Kallies Konrad-Zuse-Zentrum für Informationstechnik Berlin Takustr. 7 14195 Berlin Tel: +49-30-84185-270 Fax: +49-30-84185-311 e-mail: kall...@zib.de