Nuking unexec

Ben Wing ben at 666.com
Wed Feb 2 08:56:04 EST 2005


> >>>>>> "Ben" == Ben Wing <ben at 666.com> writes:
> >
> > Ben> I find that hard to believe; I wonder what his reasons are ...
> >
> > Some of the objects that get dumped contain function 
> pointers.  In the 
> > IA64 ABI, these point to a descriptor containing { &code, 
> > &data_context }.  At the very least data_context varies between 
> > machines and across reboots (I'm not sure about per process).  
> > Data_context is so machine dependant that there is no 
> useful way that 
> > we can get access to it in XEmacs.
> 
> Note that only dynamic assignments are a problem, because 
> their function descriptors are allocated at runtime (during 
> initial relocation), thus their address differ before and 
> after dumping.  (This is unlike powerpc64 where every 
> function has a descriptor preallocated.)  For static 
> initialisations the corresponding descriptors are also 
> statically allocated and won't change.  Thus for example C++ 
> vtables would not pose a problem.

I'm not quite sure what you are referring to here by "dynamic assignment of
function pointers" -- can you give me an example?  I'm sure there is a way
of simply reassigning the function at dump-load time.




More information about the XEmacs-Beta mailing list