X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=Robust%2Fsrc%2FRuntime%2FDSTM%2Finterface%2Fsockpool.h;h=8a9a64aa26096c075d2ad8cc37efdc11c00bcd7d;hb=5aae596fa920304cd0dd25ebce8b53be144e6d10;hp=c85d7da826a9bdde5bcf5d46fbf3863da0279f9f;hpb=6cef6c1ded0405ccce889ce6f340953aacc26116;p=IRC.git diff --git a/Robust/src/Runtime/DSTM/interface/sockpool.h b/Robust/src/Runtime/DSTM/interface/sockpool.h index c85d7da8..8a9a64aa 100644 --- a/Robust/src/Runtime/DSTM/interface/sockpool.h +++ b/Robust/src/Runtime/DSTM/interface/sockpool.h @@ -2,6 +2,7 @@ #define _SOCKPOOL_H_ #include "dstm.h" +#include "ip.h" int test_and_set(volatile unsigned int *addr); void UnLock(volatile unsigned int *addr); @@ -19,9 +20,11 @@ typedef struct sockPoolHashTable { volatile unsigned int mylock; } sockPoolHashTable_t; +void addSockWithLock(sockPoolHashTable_t *sockhash, socknode_t *ptr); sockPoolHashTable_t *createSockPool(sockPoolHashTable_t *, unsigned int); int getSock(sockPoolHashTable_t *, unsigned int); int getSock2(sockPoolHashTable_t *, unsigned int); +int getSock2WithLock(sockPoolHashTable_t *h, unsigned int); int getSockWithLock(sockPoolHashTable_t *, unsigned int); void freeSock(sockPoolHashTable_t *, unsigned int, int); void freeSockWithLock(sockPoolHashTable_t *, unsigned int, int);