From: Thomas Gleixner <tglx@xxxxxxxxxxxxx> tree_lock is used as mutex so make it a mutex. Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Signed-off-by: Christoph Hellwig <hch@xxxxxxxxxx> Index: linux-2.6/fs/hfsplus/bfind.c =================================================================== --- linux-2.6.orig/fs/hfsplus/bfind.c 2010-09-30 13:37:10.304782662 +0200 +++ linux-2.6/fs/hfsplus/bfind.c 2010-09-30 13:37:24.723782687 +0200 @@ -23,7 +23,7 @@ int hfs_find_init(struct hfs_btree *tree fd->search_key = ptr; fd->key = ptr + tree->max_key_len + 2; dprint(DBG_BNODE_REFS, "find_init: %d (%p)\n", tree->cnid, __builtin_return_address(0)); - down(&tree->tree_lock); + mutex_lock(&tree->tree_lock); return 0; } @@ -32,7 +32,7 @@ void hfs_find_exit(struct hfs_find_data hfs_bnode_put(fd->bnode); kfree(fd->search_key); dprint(DBG_BNODE_REFS, "find_exit: %d (%p)\n", fd->tree->cnid, __builtin_return_address(0)); - up(&fd->tree->tree_lock); + mutex_unlock(&fd->tree->tree_lock); fd->tree = NULL; } Index: linux-2.6/fs/hfsplus/btree.c =================================================================== --- linux-2.6.orig/fs/hfsplus/btree.c 2010-09-30 13:37:27.078782662 +0200 +++ linux-2.6/fs/hfsplus/btree.c 2010-09-30 13:37:32.462782823 +0200 @@ -30,7 +30,7 @@ struct hfs_btree *hfs_btree_open(struct if (!tree) return NULL; - init_MUTEX(&tree->tree_lock); + mutex_init(&tree->tree_lock); spin_lock_init(&tree->hash_lock); tree->sb = sb; tree->cnid = id; Index: linux-2.6/fs/hfsplus/hfsplus_fs.h =================================================================== --- linux-2.6.orig/fs/hfsplus/hfsplus_fs.h 2010-09-30 13:37:36.332782662 +0200 +++ linux-2.6/fs/hfsplus/hfsplus_fs.h 2010-09-30 13:37:43.283782664 +0200 @@ -62,7 +62,7 @@ struct hfs_btree { unsigned int depth; //unsigned int map1_size, map_size; - struct semaphore tree_lock; + struct mutex tree_lock; unsigned int pages_per_bnode; spinlock_t hash_lock; -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html