Thanks Kyle. This is checked into trunk now with some minor updates to
keep the gossip messages clean on 32bit builds.
Does this resolve everything from your previous bug report?
http://www.beowulf-underground.org/pipermail/pvfs2-developers/2008-June/004069.html
thanks,
-Phil
Kyle Schochenmaier wrote:
The following patch clears up some issues with pointer aliasing on
64bit machines in the twod-dist code. On a 64bit build, you cannot
set the num_groups/group_strip_factor dist params, but in a 32bit
build, the problem is not evident. The patch also fixes a typo I made
in the encode/decode functions. Builds and works on my (64bit) test
systems.
~Kyle
Index: src/io/description/dist-twod-stripe.c
===================================================================
RCS file: /anoncvs/pvfs2/src/io/description/dist-twod-stripe.c,v
retrieving revision 1.4
diff -r1.4 dist-twod-stripe.c
436c436
< if(*(uint32_t*)value <= 0)
---
if(*(int64_t*)value <= 0)
443,445c443,445
< "%s: num_groups: %d\n",
< __func__, *(uint32_t*)value);
< dparam->num_groups = *(uint32_t*)value;
---
"%s: num_groups: %ld\n",
__func__, *(int64_t*)value);
dparam->num_groups = *(int64_t*)value;
450c450
< if(*(uint32_t*)value <= 0)
---
if(*(int64_t*)value <= 0)
455,456c455,456
< "%s: group_strip_factor: %d\n",
< __func__,*(uint32_t*)value);
---
"%s: group_strip_factor: %ld\n",
__func__,*(int64_t*)value);
458c458
< dparam->group_strip_factor = *(uint32_t*)value;
---
dparam->group_strip_factor = *(int64_t*)value;
473c473
< encode_int32_t(pptr,&dparam->group_strip_factor);
---
encode_uint32_t(pptr,&dparam->group_strip_factor);
_______________________________________________
Pvfs2-developers mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers