PV-on-HVM: Add a compatibility linux/mutex.h for kernels before

2.6.16.  This implements the new mutex type in terms of the old
semaphore type.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Signed-off-by: K. Y. Srinivasan <ksrinivasan@novell.com>
Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
This commit is contained in:
Ian Campbell committed 2006-10-25 13:58:30 +01:00
1 parent 3dd858632a
commit 212cd2b3a0
1 file changed
+31
@@ -0,0 +1,31 @@
/*
* Copyright (c) 2006 Cisco Systems. All rights reserved.
*
* This file is released under the GPLv2.
*/
/* mutex compatibility for pre-2.6.16 kernels */
#ifndef __LINUX_MUTEX_H
#define __LINUX_MUTEX_H
#include <linux/version.h>
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16)
#error "This version of Linux should not need compat mutex.h"
#endif
#include <linux/version.h>
#include <asm/semaphore.h>
#define mutex semaphore
#define DEFINE_MUTEX(foo) DECLARE_MUTEX(foo)
#define mutex_init(foo) init_MUTEX(foo)
#define mutex_lock(foo) down(foo)
#define mutex_lock_interruptible(foo) down_interruptible(foo)
/* this function follows the spin_trylock() convention, so *
* it is negated to the down_trylock() return values! Be careful */
#define mutex_trylock(foo) !down_trylock(foo)
#define mutex_unlock(foo) up(foo)
#endif /* __LINUX_MUTEX_H */
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.