Commit ebb3008d authored by Bruce Momjian's avatar Bruce Momjian

Fix for S_FREE_LOCK.

parent d77a5063
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.5 1997/09/22 18:14:25 momjian Exp $ * $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.6 1997/09/24 23:37:26 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -55,6 +55,8 @@ ...@@ -55,6 +55,8 @@
#define S_INIT_LOCK(lock) mutex_init(lock) #define S_INIT_LOCK(lock) mutex_init(lock)
#define S_LOCK_FREE(lock) ((*lock) == 0)
/* S_LOCK_FREE should return 1 if lock is free; 0 if lock is locked */ /* S_LOCK_FREE should return 1 if lock is free; 0 if lock is locked */
/* For Mach, we have to delve inside the entrails of `struct mutex'. Ick! */ /* For Mach, we have to delve inside the entrails of `struct mutex'. Ick! */
#define S_LOCK_FREE(alock) ((alock)->lock == 0) #define S_LOCK_FREE(alock) ((alock)->lock == 0)
...@@ -133,6 +135,8 @@ static int tas(slock_t *lock); ...@@ -133,6 +135,8 @@ static int tas(slock_t *lock);
#define S_INIT_LOCK(lock) S_UNLOCK(lock) #define S_INIT_LOCK(lock) S_UNLOCK(lock)
#define S_LOCK_FREE(lock) ((*lock) == 0)
#endif /* i86pc_solaris || sparc_solaris */ #endif /* i86pc_solaris || sparc_solaris */
/* /*
...@@ -154,6 +158,8 @@ static int tas(slock_t *lock); ...@@ -154,6 +158,8 @@ static int tas(slock_t *lock);
#define S_INIT_LOCK(lock) S_UNLOCK(lock) #define S_INIT_LOCK(lock) S_UNLOCK(lock)
#define S_LOCK_FREE(lock) ((*lock) == 0)
#endif /* aix */ #endif /* aix */
/* /*
...@@ -205,6 +211,8 @@ static int tas(slock_t *lock); ...@@ -205,6 +211,8 @@ static int tas(slock_t *lock);
#define S_INIT_LOCK(lock) S_UNLOCK(lock) #define S_INIT_LOCK(lock) S_UNLOCK(lock)
#define S_LOCK_FREE(lock) ((*lock) == 0)
static int static int
tas_dummy() tas_dummy()
{ {
...@@ -287,6 +295,8 @@ tas_dummy() ...@@ -287,6 +295,8 @@ tas_dummy()
#define S_INIT_LOCK(addr) (*(addr) = 0) #define S_INIT_LOCK(addr) (*(addr) = 0)
#define S_LOCK_FREE(lock) ((*lock) == 0)
#endif /* NEED_SPARC_TAS_ASM */ #endif /* NEED_SPARC_TAS_ASM */
/* /*
...@@ -308,6 +318,8 @@ tas_dummy() ...@@ -308,6 +318,8 @@ tas_dummy()
#define S_INIT_LOCK(lock) S_UNLOCK(lock) #define S_INIT_LOCK(lock) S_UNLOCK(lock)
#define S_LOCK_FREE(lock) ((*lock) == 0)
#endif /* NEED_I386_TAS_ASM */ #endif /* NEED_I386_TAS_ASM */
...@@ -339,6 +351,8 @@ tas_dummy() ...@@ -339,6 +351,8 @@ tas_dummy()
#define S_INIT_LOCK(lock) S_UNLOCK(lock) #define S_INIT_LOCK(lock) S_UNLOCK(lock)
#define S_LOCK_FREE(lock) ((*lock) == 0)
#endif /* defined(__alpha__) && defined(linux) */ #endif /* defined(__alpha__) && defined(linux) */
#if defined(linux) && defined(sparc) #if defined(linux) && defined(sparc)
...@@ -358,6 +372,8 @@ tas_dummy() ...@@ -358,6 +372,8 @@ tas_dummy()
#define S_INIT_LOCK(lock) S_UNLOCK(lock) #define S_INIT_LOCK(lock) S_UNLOCK(lock)
#define S_LOCK_FREE(lock) ((*lock) == 0)
#endif /* defined(linux) && defined(sparc) */ #endif /* defined(linux) && defined(sparc) */
#if defined(linux) && defined(PPC) #if defined(linux) && defined(PPC)
...@@ -391,12 +407,10 @@ success: \n\ ...@@ -391,12 +407,10 @@ success: \n\
#define S_INIT_LOCK(lock) S_UNLOCK(lock) #define S_INIT_LOCK(lock) S_UNLOCK(lock)
#endif /* defined(linux) && defined(PPC) */
#else /* HAS_TEST_AND_SET */
#define S_LOCK_FREE(lock) ((*lock) == 0) #define S_LOCK_FREE(lock) ((*lock) == 0)
#endif /* defined(linux) && defined(PPC) */
#endif /* HAS_TEST_AND_SET */ #endif /* HAS_TEST_AND_SET */
#endif /* S_LOCK_H */ #endif /* S_LOCK_H */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment