From: Linus Torvalds Date: Wed, 16 Mar 2011 15:58:43 +0000 (-0700) Subject: Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw X-Git-Tag: v3.12-rc1~6945 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3ae2a1ce2e7b70254e5c9e465adefac9cba191d6;p=kernel%2Fkernel-generic.git Merge git://git./linux/kernel/git/steve/gfs2-2.6-nmw * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: GFS2: Don't use _raw version of RCU dereference GFS2: Adding missing unlock_page() GFS2: Update to AIL list locking GFS2: introduce AIL lock GFS2: fix block allocation check for fallocate GFS2: Optimize glock multiple-dequeue code GFS2: Remove potential race in flock code GFS2: Fix glock deallocation race GFS2: quota allows exceeding hard limit GFS2: deallocation performance patch GFS2: panics on quotacheck update GFS2: Improve cluster mmap scalability GFS2: Fix glock queue trace point GFS2: Post-VFS scale update for RCU path walk GFS2: Use RCU for glock hash table --- 3ae2a1ce2e7b70254e5c9e465adefac9cba191d6 diff --cc fs/gfs2/glock.c index 7cd9a5a,85044b4..e243131 --- a/fs/gfs2/glock.c +++ b/fs/gfs2/glock.c @@@ -1770,16 -1688,11 +1688,11 @@@ int __init gfs2_glock_init(void { unsigned i; for(i = 0; i < GFS2_GL_HASH_SIZE; i++) { - INIT_HLIST_HEAD(&gl_hash_table[i].hb_list); - } - #ifdef GL_HASH_LOCK_SZ - for(i = 0; i < GL_HASH_LOCK_SZ; i++) { - rwlock_init(&gl_hash_locks[i]); + INIT_HLIST_BL_HEAD(&gl_hash_table[i]); } - #endif glock_workqueue = alloc_workqueue("glock_workqueue", WQ_MEM_RECLAIM | - WQ_HIGHPRI | WQ_FREEZEABLE, 0); + WQ_HIGHPRI | WQ_FREEZABLE, 0); if (IS_ERR(glock_workqueue)) return PTR_ERR(glock_workqueue); gfs2_delete_workqueue = alloc_workqueue("delete_workqueue",