rpms/kernel/devel kernel-2.6.spec, 1.2552, 1.2553 linux-2.6-gfs2-dlm.patch, 1.13, 1.14
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Fri Aug 11 22:22:58 UTC 2006
Author: davej
Update of /cvs/dist/rpms/kernel/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv29775
Modified Files:
kernel-2.6.spec linux-2.6-gfs2-dlm.patch
Log Message:
gfs2 locking bugfix
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.2552
retrieving revision 1.2553
diff -u -r1.2552 -r1.2553
--- kernel-2.6.spec 11 Aug 2006 22:21:35 -0000 1.2552
+++ kernel-2.6.spec 11 Aug 2006 22:22:53 -0000 1.2553
@@ -1707,6 +1707,7 @@
* Fri Aug 11 2006 Dave Jones <davej at redhat.com>
- Yet more lockdep fixes.
- Update to GregKH's daily tree.
+- GFS2/DLM locking bugfix
* Thu Aug 10 2006 Roland McGrath <roland at redhat.com>
- New utrace patch: fix ptrace synchronization issues.
linux-2.6-gfs2-dlm.patch:
CREDITS | 6
Documentation/filesystems/gfs2.txt | 43
MAINTAINERS | 18
fs/Kconfig | 2
fs/Makefile | 2
fs/configfs/item.c | 2
fs/dlm/Kconfig | 21
fs/dlm/Makefile | 19
fs/dlm/ast.c | 172 +
fs/dlm/ast.h | 26
fs/dlm/config.c | 789 +++++++
fs/dlm/config.h | 42
fs/dlm/debug_fs.c | 387 +++
fs/dlm/dir.c | 423 ++++
fs/dlm/dir.h | 30
fs/dlm/dlm_internal.h | 541 +++++
fs/dlm/lock.c | 3846 +++++++++++++++++++++++++++++++++++++
fs/dlm/lock.h | 61
fs/dlm/lockspace.c | 716 ++++++
fs/dlm/lockspace.h | 25
fs/dlm/lowcomms.c | 1238 +++++++++++
fs/dlm/lowcomms.h | 26
fs/dlm/lvb_table.h | 18
fs/dlm/main.c | 97
fs/dlm/member.c | 327 +++
fs/dlm/member.h | 24
fs/dlm/memory.c | 116 +
fs/dlm/memory.h | 29
fs/dlm/midcomms.c | 140 +
fs/dlm/midcomms.h | 21
fs/dlm/rcom.c | 471 ++++
fs/dlm/rcom.h | 24
fs/dlm/recover.c | 776 +++++++
fs/dlm/recover.h | 34
fs/dlm/recoverd.c | 286 ++
fs/dlm/recoverd.h | 24
fs/dlm/requestqueue.c | 184 +
fs/dlm/requestqueue.h | 22
fs/dlm/user.c | 785 +++++++
fs/dlm/user.h | 16
fs/dlm/util.c | 161 +
fs/dlm/util.h | 22
fs/gfs2/Kconfig | 44
fs/gfs2/Makefile | 10
fs/gfs2/acl.c | 313 +++
fs/gfs2/acl.h | 37
fs/gfs2/bmap.c | 1236 +++++++++++
fs/gfs2/bmap.h | 27
fs/gfs2/daemon.c | 196 +
fs/gfs2/daemon.h | 19
fs/gfs2/dir.c | 1976 +++++++++++++++++++
fs/gfs2/dir.h | 73
fs/gfs2/eaops.c | 230 ++
fs/gfs2/eaops.h | 29
fs/gfs2/eattr.c | 1548 ++++++++++++++
fs/gfs2/eattr.h | 97
fs/gfs2/format.h | 21
fs/gfs2/gfs2.h | 31
fs/gfs2/glock.c | 2282 +++++++++++++++++++++
fs/gfs2/glock.h | 152 +
fs/gfs2/glops.c | 564 +++++
fs/gfs2/glops.h | 23
fs/gfs2/incore.h | 659 ++++++
fs/gfs2/inode.c | 1344 ++++++++++++
fs/gfs2/inode.h | 56
fs/gfs2/lm.c | 244 ++
fs/gfs2/lm.h | 41
fs/gfs2/lm_interface.h | 290 ++
fs/gfs2/locking.c | 191 +
fs/gfs2/locking/dlm/Makefile | 3
fs/gfs2/locking/dlm/lock.c | 541 +++++
fs/gfs2/locking/dlm/lock_dlm.h | 188 +
fs/gfs2/locking/dlm/main.c | 64
fs/gfs2/locking/dlm/mount.c | 256 ++
fs/gfs2/locking/dlm/plock.c | 302 ++
fs/gfs2/locking/dlm/sysfs.c | 225 ++
fs/gfs2/locking/dlm/thread.c | 359 +++
fs/gfs2/locking/nolock/Makefile | 3
fs/gfs2/locking/nolock/main.c | 259 ++
fs/gfs2/log.c | 601 +++++
fs/gfs2/log.h | 61
fs/gfs2/lops.c | 800 +++++++
fs/gfs2/lops.h | 96
fs/gfs2/lvb.c | 45
fs/gfs2/lvb.h | 19
fs/gfs2/main.c | 127 +
fs/gfs2/meta_io.c | 780 +++++++
fs/gfs2/meta_io.h | 74
fs/gfs2/mount.c | 214 ++
fs/gfs2/mount.h | 15
fs/gfs2/ondisk.c | 308 ++
fs/gfs2/ops_address.c | 797 +++++++
fs/gfs2/ops_address.h | 18
fs/gfs2/ops_dentry.c | 123 +
fs/gfs2/ops_dentry.h | 15
fs/gfs2/ops_export.c | 293 ++
fs/gfs2/ops_export.h | 19
fs/gfs2/ops_file.c | 812 +++++++
fs/gfs2/ops_file.h | 20
fs/gfs2/ops_fstype.c | 840 ++++++++
fs/gfs2/ops_fstype.h | 16
fs/gfs2/ops_inode.c | 1165 +++++++++++
fs/gfs2/ops_inode.h | 18
fs/gfs2/ops_super.c | 471 ++++
fs/gfs2/ops_super.h | 15
fs/gfs2/ops_vm.c | 188 +
fs/gfs2/ops_vm.h | 16
fs/gfs2/quota.c | 1286 ++++++++++++
fs/gfs2/quota.h | 32
fs/gfs2/recovery.c | 573 +++++
fs/gfs2/recovery.h | 32
fs/gfs2/rgrp.c | 1528 ++++++++++++++
fs/gfs2/rgrp.h | 62
fs/gfs2/super.c | 979 +++++++++
fs/gfs2/super.h | 52
fs/gfs2/sys.c | 579 +++++
fs/gfs2/sys.h | 24
fs/gfs2/trans.c | 184 +
fs/gfs2/trans.h | 34
fs/gfs2/util.c | 245 ++
fs/gfs2/util.h | 169 +
include/linux/Kbuild | 33
include/linux/dlm.h | 302 ++
include/linux/dlm_device.h | 86
include/linux/fs.h | 3
include/linux/gfs2_ondisk.h | 443 ++++
include/linux/iflags.h | 102
include/linux/kernel.h | 1
include/linux/lock_dlm_plock.h | 41
mm/filemap.c | 3
mm/readahead.c | 1
131 files changed, 40684 insertions(+), 21 deletions(-)
Index: linux-2.6-gfs2-dlm.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-gfs2-dlm.patch,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- linux-2.6-gfs2-dlm.patch 10 Aug 2006 17:47:25 -0000 1.13
+++ linux-2.6-gfs2-dlm.patch 11 Aug 2006 22:22:53 -0000 1.14
@@ -7333,7 +7333,7 @@
+
diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c
new file mode 100644
-index 0000000..7ab4042
+index 0000000..23f5ce1
--- /dev/null
+++ b/fs/dlm/lowcomms.c
@@ -0,0 +1,1238 @@
@@ -8273,11 +8273,11 @@
+ break;
+ e = list_entry(ni->writequeue.next, struct writequeue_entry,
+ list);
-+ kmap(e->page);
+ len = e->len;
+ offset = e->offset;
+ BUG_ON(len == 0 && e->users == 0);
+ spin_unlock(&ni->writequeue_lock);
++ kmap(e->page);
+
+ ret = 0;
+ if (len) {
@@ -18289,10 +18289,10 @@
+
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
new file mode 100644
-index 0000000..b6edf7c
+index 0000000..a5e16e5
--- /dev/null
+++ b/fs/gfs2/glock.c
-@@ -0,0 +1,2279 @@
+@@ -0,0 +1,2282 @@
+/*
+ * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
+ * Copyright (C) 2004-2006 Red Hat, Inc. All rights reserved.
@@ -20462,7 +20462,9 @@
+
+ spin_lock(&gl->gl_spin);
+
-+ printk(KERN_INFO "Glock (%u, %llu)\n", gl->gl_name.ln_type,
++ printk(KERN_INFO "Glock 0x%p (%u, %llu)\n",
++ gl,
++ gl->gl_name.ln_type,
+ (unsigned long long)gl->gl_name.ln_number);
+ printk(KERN_INFO " gl_flags =");
+ for (x = 0; x < 32; x++)
@@ -20482,8 +20484,9 @@
+ printk(KERN_INFO " reclaim = %s\n",
+ (list_empty(&gl->gl_reclaim)) ? "no" : "yes");
+ if (gl->gl_aspace)
-+ printk(KERN_INFO " aspace = %lu\n",
-+ gl->gl_aspace->i_mapping->nrpages);
++ printk(KERN_INFO " aspace = 0x%p nrpages = %lu\n",
++ gl->gl_aspace,
++ gl->gl_aspace->i_mapping->nrpages);
+ else
+ printk(KERN_INFO " aspace = no\n");
+ printk(KERN_INFO " ail = %d\n", atomic_read(&gl->gl_ail_count));
@@ -31815,10 +31818,10 @@
+#endif /* __OPS_FILE_DOT_H__ */
diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c
new file mode 100644
-index 0000000..de18923
+index 0000000..4440009
--- /dev/null
+++ b/fs/gfs2/ops_fstype.c
-@@ -0,0 +1,836 @@
+@@ -0,0 +1,840 @@
+/*
+ * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
+ * Copyright (C) 2004-2006 Red Hat, Inc. All rights reserved.
@@ -32100,6 +32103,10 @@
+ int error = 0;
+
+ if (undo) {
++ if (sb->s_root) {
++ dput(sb->s_root);
++ sb->s_root = NULL;
++ }
+ return 0;
+ }
+
@@ -35918,10 +35925,10 @@
+#endif /* __QUOTA_DOT_H__ */
diff --git a/fs/gfs2/recovery.c b/fs/gfs2/recovery.c
new file mode 100644
-index 0000000..bbd44a4
+index 0000000..8fe518c
--- /dev/null
+++ b/fs/gfs2/recovery.c
-@@ -0,0 +1,572 @@
+@@ -0,0 +1,573 @@
+/*
+ * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
+ * Copyright (C) 2004-2006 Red Hat, Inc. All rights reserved.
@@ -36249,6 +36256,7 @@
+ error = get_log_header(jd, start, &lh);
+ if (!error) {
+ gfs2_replay_incr_blk(sdp, &start);
++ brelse(bh);
+ continue;
+ }
+ if (error == 1) {
@@ -36320,7 +36328,7 @@
+ lh = (struct gfs2_log_header *)bh->b_data;
+ memset(lh, 0, sizeof(struct gfs2_log_header));
+ lh->lh_header.mh_magic = cpu_to_be32(GFS2_MAGIC);
-+ lh->lh_header.mh_type = cpu_to_be16(GFS2_METATYPE_LH);
++ lh->lh_header.mh_type = cpu_to_be32(GFS2_METATYPE_LH);
+ lh->lh_header.mh_format = cpu_to_be32(GFS2_FORMAT_LH);
+ lh->lh_sequence = cpu_to_be64(head->lh_sequence + 1);
+ lh->lh_flags = cpu_to_be32(GFS2_LOG_HEAD_UNMOUNT);
More information about the fedora-cvs-commits
mailing list