[Pvfs2-developers] Re: the halloween bug fixed

Phil Carns pcarns at wastedcycles.org
Thu Oct 11 12:22:26 EDT 2007


> Hi Phil,
> 
> I can add a server flag to the tcp addr struct, and only call  
> forget_addr in that case, but it seems like a bit of hack.  Can we  just 
> toss the ref list in the bmi control layer and force methods to  manage 
> their addresses?  The ref list is only being used to map an  opaque 
> address pointer to a particular method.  Could we just make  the address 
> pointer not opaque and encode the method in there somehow?

Sure- in that case neither callback is needed.  I was just commenting on 
the current patch in case it ended up hanging around for a bit.

I don't see any reason for keeping the ref list around.  There is 
already essentially an integer identifier for each method- you could use 
the index into the "static_methods" table since it never changes at run 
time.  You would just need a way to incorporate it into the BMI_addr_t.

The id_gen_safe* functions are already handing out identifiers linearly 
for BMI_addr_t types.  You could just cap that value at some huge number 
as a safety check and add a safe register function with an extra 
argument to let it throw an identifier into the spare bits.

It seems like the painful part would be updating the code to consolidate 
the method addr and reference structure into a single unit, although 
there may not be that much useful in the reference structure to carry over.

-Phil


More information about the Pvfs2-developers mailing list