Skip to contentSkip to conversation

libnuma/numactl 2.0.4 release announced

DISCUSSION Cliff Wickman 2 participants 2 messages Jul 26, 2010 – Jul 27, 2010

lore
Share & tools
lore
#0 lore raw

Hi linux-numa members,

libnuma/numactl release 2.0.4 was announced today on freshmeat.net.

The tarball is at ftp://oss.sgi.com/www/projects/libnuma/download/ and the CHANGES file within it list the patches since 2.0.3.

Thanks especially to those who provided patches and testing.

-Cliff

Signature · 4 lines
Cliff Wickman
SGI
[email protected]
(651) 683-3824
#1 lore raw
Quoted 8 lines · Cliff Wickman

Hi linux-numa members,

libnuma/numactl release 2.0.4 was announced today on freshmeat.net.

The tarball is at ftp://oss.sgi.com/www/projects/libnuma/download/ and the CHANGES file within it list the patches since 2.0.3.

Thanks especially to those who provided patches and testing.

Cliff,

I actually found a bug now (looks like exactly one day too late, how it goes).

The new code does not correct for the -1 quirk in the kernel API for node masks, unlike the v1 code did. So the last bit in the node masks is going to be missed.

-Andi

libnuma.c renamed from libnuma.c-o +3 -3
diff -u numactl-2.0.4-rc1/libnuma.c-o numactl-2.0.4-rc1/libnuma.c
@@ -249,19 +249,19 @@
 
 static void setpol(int policy, struct bitmask *bmp)
 { 
-	if (set_mempolicy(policy, bmp->maskp, bmp->size) < 0)
+	if (set_mempolicy(policy, bmp->maskp, bmp->size + 1) < 0)
 		numa_error("set_mempolicy");
 } 
 
 static void getpol(int *oldpolicy, struct bitmask *bmp)
 { 
-	if (get_mempolicy(oldpolicy, bmp->maskp, bmp->size, 0, 0) < 0)
+	if (get_mempolicy(oldpolicy, bmp->maskp, bmp->size + 1, 0, 0) < 0)
 		numa_error("get_mempolicy");
 } 
 
 static void dombind(void *mem, size_t size, int pol, struct bitmask *bmp)
 { 
-	if (mbind(mem, size, pol, bmp ? bmp->maskp : NULL, bmp ? bmp->size : 0, 
+	if (mbind(mem, size, pol, bmp ? bmp->maskp : NULL, bmp ? bmp->size + 1 : 0, 
 		  mbind_flags) < 0)
 		numa_error("mbind"); 
 }