snapshot: define macros with type size_t
[c11tester.git] / snapshot.cc
index 0d8094fcc76ad9cd63c1ee0af229a383a925cf6c..01811ca862621f616f670ea2a35df7889e746302 100644 (file)
@@ -72,13 +72,11 @@ static void initSnapShotRecord(unsigned int numbackingpages, unsigned int numsna
        snapshotrecord->maxBackingPages=numbackingpages;
        snapshotrecord->maxSnapShots=numsnapshots;
 }
-#endif //nothing to initialize for the fork based snapshotting.
 
 /** HandlePF is the page fault handler for mprotect based snapshotting
  * algorithm.
  */
 static void HandlePF( int sig, siginfo_t *si, void * unused){
-#if USE_MPROTECT_SNAPSHOT
        if( si->si_code == SEGV_MAPERR ){
                printf("Real Fault at %p\n", si->si_addr);
                exit( EXIT_FAILURE );
@@ -100,8 +98,8 @@ static void HandlePF( int sig, siginfo_t *si, void * unused){
                perror("mprotect");
                // Handle error by quitting?
        }
-#endif //nothing to handle for non snapshotting case.
 }
+#endif //nothing to handle for non snapshotting case.
 
 void createSharedLibrary(){
 #if !USE_MPROTECT_SNAPSHOT
@@ -109,12 +107,12 @@ void createSharedLibrary(){
        if( sTheRecord ) return;
        int fd = shm_open( "/ModelChecker-Snapshotter", O_RDWR | O_CREAT, 0777 ); //universal permissions.
        if( -1 == fd ) FAILURE("shm_open");
-       if( -1 == ftruncate( fd, ( size_t )SHARED_MEMORY_DEFAULT + ( size_t )STACK_SIZE_DEFAULT ) ) FAILURE( "ftruncate" );
-       char * memMapBase = ( char * ) mmap( 0, ( size_t )SHARED_MEMORY_DEFAULT + ( size_t )STACK_SIZE_DEFAULT, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0 );
+       if( -1 == ftruncate( fd, SHARED_MEMORY_DEFAULT + STACK_SIZE_DEFAULT ) ) FAILURE( "ftruncate" );
+       void * memMapBase = mmap( 0, SHARED_MEMORY_DEFAULT + STACK_SIZE_DEFAULT, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0 );
        if( MAP_FAILED == memMapBase ) FAILURE("mmap");
        sTheRecord = ( struct Snapshot * )memMapBase;
-       sTheRecord->mSharedMemoryBase = memMapBase + sizeof( struct Snapshot );
-       sTheRecord->mStackBase = ( char * )memMapBase + ( size_t )SHARED_MEMORY_DEFAULT;
+       sTheRecord->mSharedMemoryBase = (void *)((uintptr_t)memMapBase + sizeof(struct Snapshot));
+       sTheRecord->mStackBase = (void *)((uintptr_t)memMapBase + SHARED_MEMORY_DEFAULT);
        sTheRecord->mStackSize = STACK_SIZE_DEFAULT;
        sTheRecord->mIDToRollback = -1;
        sTheRecord->currSnapShotID = 0;