X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;ds=sidebyside;f=snapshotimp.h;h=2e4929d0477e4605cd5363fb86266cd054d1f3fe;hb=ed57a438e07bae54e5ce1862c830461ddda626f2;hp=e9f6d8bd50a4ab1493a8d0264c275fdfeade3b8b;hpb=06c46bd5c02bb68c1a75edc4423e5281e497c6c1;p=cdsspec-compiler.git diff --git a/snapshotimp.h b/snapshotimp.h index e9f6d8b..2e4929d 100644 --- a/snapshotimp.h +++ b/snapshotimp.h @@ -11,7 +11,7 @@ #include #include #include -#define SHARED_MEMORY_DEFAULT (100 * ((size_t)1 << 20)) // 100mb for the shared memory +#define SHARED_MEMORY_DEFAULT (100 * ((size_t)1 << 20)) // 100mb for the shared memory #define STACK_SIZE_DEFAULT (((size_t)1 << 20) * 20) // 20 mb out of the above 100 mb for my stack #if USE_MPROTECT_SNAPSHOT @@ -53,17 +53,17 @@ struct SnapShot { unsigned int maxSnapShots; //Stores the total number of snapshots we allow }; -//Global reference to snapshot data structure -extern struct SnapShot * snapshotrecord; #else -struct Snapshot { +struct SnapShot { void *mSharedMemoryBase; void *mStackBase; size_t mStackSize; - snapshot_id mIDToRollback; + volatile snapshot_id mIDToRollback; ucontext_t mContextToRollback; snapshot_id currSnapShotID; }; -extern struct Snapshot * sTheRecord; #endif + +//Global reference to snapshot data structure +extern struct SnapShot * snapshotrecord; #endif