On Thu, Apr 10, 2008 at 03:54:44PM -0500, Cliff Wickman wrote: > > > > > > So I propose to change numactl-1.0.3-rc2 to numactl-1.0.3 > > > > > and announce it as new release on freshmeat. > > > > > > > > Does it already include changes for larger bitmaps? In that case > > > > i would rather increment the version number more to make it clear > > > > that it is a kind of binary incompatible release (2?) > > > > > > > > -Andi > > > > > > It does include the variable size bitmaps. That is a large change > > > that may be worthy of an increment to version 2. > > > > > > On the other hand, it also includes symbol versioning, making libnuma > > > binary compatible with old codes. > > > > But breaks the source compatibility, right? > > Right. > > > If you do that please both increase the major number and supply > > some compat wrappers with a compat define for old programs that they can use > > to still compile. > > > > -Andi > > This seems to cover every libnuma function that is changed to use a > variable-length bit mask instead of a nodemask_t. > > #define nodemask_t struct bitmask * > #define numa_all_nodes numa_all_nodes_ptr > #define numa_no_nodes numa_no_nodes_ptr > #define nodemask_clr(m,n) numa_bitmask_clearbit(*(m), n) > #define nodemask_isset(m,n) numa_bitmask_isbitset(*(m), n) > #define nodemask_equal(m,n) numa_bitmask_equal(*(m), *(n)) > #define numa_set_interleave_mask(m) numa_set_interleave_mask(*m) > #define nodemask_zero(m) numa_bitmask_clearall(*(m)) > #define nodemask_set(m,n) numa_bitmask_setbit(*(m),n) > #define numa_bind(m) numa_bind(*(m)) > #define numa_set_membind(m) numa_set_membind(*(m)) > #define numa_alloc_interleaved_subset(s,m) numa_alloc_interleaved_subset(s,*(m)) > #define numa_run_on_node_mask(m) numa_run_on_node_mask(*(m)) > #define numa_interleave_memory(st,si,m) numa_interleave_memory(st,si,*(m)) > #define numa_tonodemask_memory(st,si,m) numa_tonodemask_memory(st,si,*(m)) Looks good. > > However, I would like to change > nodemask_t testmask; > to > struct bitmask * testmask = numa_allocate_nodemask(); > > Can I do that with a #define? Don't think so no. The only good way is to make the compat layer still use some hard coded size. -Andi -- To unsubscribe from this list: send the line "unsubscribe linux-numa" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html