Merged revisions 175121 via svnmerge from

https://origsvn.digium.com/svn/asterisk/trunk

........
  r175121 | mmichelson | 2009-02-12 10:28:06 -0600 (Thu, 12 Feb 2009) | 11 lines
  
  Make lock information for ao2_trylock be more useful and gnarly
  
  Core show locks information involving an ao2_trylock did not
  show the function that called ao2_trylock, but would instead
  show ao2_trylock as the source of the lock. This is not useful
  when trying to debug locking issues.
  
  One bizarre note is that this logic is already in 1.4 but somehow
  did not get merged to trunk or the 1.6.X branches.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@175122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Michelson
2009-02-12 16:33:24 +00:00
parent 4c8559e441
commit 90ef4eb33e
2 changed files with 23 additions and 2 deletions

View File

@@ -211,7 +211,19 @@ int ao2_unlock(void *a);
#define ao2_unlock(a) _ao2_unlock(a, __FILE__, __PRETTY_FUNCTION__, __LINE__, #a)
int _ao2_unlock(void *a, const char *file, const char *func, int line, const char *var);
#endif
int ao2_trylock(void *user_data);
/*! \brief
* Try locking-- (don't block if fail)
*
* \param a A pointer to the object we want to lock.
* \return 0 on success, other values on error.
*/
#ifndef DEBUG_THREADS
int ao2_trylock(void *a);
#else
#define ao2_trylock(a) _ao2_trylock(a, __FILE__, __PRETTY_FUNCTION__, __LINE__, #a)
int _ao2_trylock(void *a, const char *file, const char *func, int line, const char *var);
#endif
/*!
*