[Devel] [PATCH/RFC] objhash.c: fix (?) invalid casts
Nathan Lynch
ntl at pobox.com
Thu Jan 15 11:40:49 PST 2009
When building 64-bit powerpc:
checkpoint/objhash.c: In function 'cr_obj_find_by_objref':
checkpoint/objhash.c:121: warning: cast to pointer from integer of different size
checkpoint/objhash.c: In function 'cr_obj_new':
checkpoint/objhash.c:158: warning: cast to pointer from integer of different size
Is this the right fix or is struct cr_objref->objref the wrong type?
---
checkpoint/objhash.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
This is on top of v12 of the C/R patches.
diff --git a/checkpoint/objhash.c b/checkpoint/objhash.c
index 13d3e5d..cb08d3c 100644
--- a/checkpoint/objhash.c
+++ b/checkpoint/objhash.c
@@ -118,7 +118,8 @@ static struct cr_objref *cr_obj_find_by_objref(struct cr_ctx *ctx, int objref)
struct hlist_node *n;
struct cr_objref *obj;
- h = &ctx->objhash->head[hash_ptr((void *) objref, CR_OBJHASH_NBITS)];
+ h = &ctx->objhash->head[hash_ptr((void *)(unsigned long)objref,
+ CR_OBJHASH_NBITS)];
hlist_for_each_entry(obj, n, h, hash)
if (obj->objref == objref)
return obj;
@@ -155,7 +156,7 @@ static struct cr_objref *cr_obj_new(struct cr_ctx *ctx, void *ptr, int objref,
if (objref) {
/* use @objref to index (restart) */
obj->objref = objref;
- i = hash_ptr((void *) objref, CR_OBJHASH_NBITS);
+ i = hash_ptr((void *)(unsigned long)objref, CR_OBJHASH_NBITS);
} else {
/* use @ptr to index, assign objref (checkpoint) */
obj->objref = ctx->objhash->next_free_objref++;;
--
1.5.5
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers
More information about the Devel
mailing list