mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
Revert "Remove misguided HAVE_MUTEX_OWNER check"
This reverts commit d89616fda8 which
introduced some build failures which need to be resolved before
this can be merged.
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #633
This commit is contained in:
@@ -40,8 +40,10 @@ typedef enum {
|
||||
typedef struct {
|
||||
struct mutex m_mutex;
|
||||
spinlock_t m_lock; /* used for serializing mutex_exit */
|
||||
#ifndef HAVE_MUTEX_OWNER
|
||||
/* only when kernel doesn't have owner */
|
||||
kthread_t *m_owner;
|
||||
#endif
|
||||
#ifdef CONFIG_LOCKDEP
|
||||
kmutex_type_t m_type;
|
||||
#endif /* CONFIG_LOCKDEP */
|
||||
@@ -56,16 +58,24 @@ spl_mutex_set_owner(kmutex_t *mp)
|
||||
* kernel will handle its owner, so we don't need to do anything if it
|
||||
* is defined.
|
||||
*/
|
||||
#ifndef HAVE_MUTEX_OWNER
|
||||
mp->m_owner = current;
|
||||
#endif
|
||||
}
|
||||
|
||||
static inline void
|
||||
spl_mutex_clear_owner(kmutex_t *mp)
|
||||
{
|
||||
#ifndef HAVE_MUTEX_OWNER
|
||||
mp->m_owner = NULL;
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef HAVE_MUTEX_OWNER
|
||||
#define mutex_owner(mp) (ACCESS_ONCE(MUTEX(mp)->owner))
|
||||
#else
|
||||
#define mutex_owner(mp) (ACCESS_ONCE((mp)->m_owner))
|
||||
#endif
|
||||
#define mutex_owned(mp) (mutex_owner(mp) == current)
|
||||
#define MUTEX_HELD(mp) mutex_owned(mp)
|
||||
#define MUTEX_NOT_HELD(mp) (!MUTEX_HELD(mp))
|
||||
|
||||
Reference in New Issue
Block a user