diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-07 15:26:27 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-07 15:26:27 -0400 |
| commit | 5cefcab3db2b13093480f2a42bf081574dd72d3d (patch) | |
| tree | c3755a241553436a1b84d65ad3c00f77ce6d02ad | |
| parent | 5f757f91e70a97eda8f0cc13bddc853209b2d173 (diff) | |
| parent | 37fde8ca6c60ea61f5e9d7cb877c25ac60e74167 (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw
* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: (34 commits)
[GFS2] Uncomment sprintf_symbol calling code
[DLM] lowcomms style
[GFS2] printk warning fixes
[GFS2] Patch to fix mmap of stuffed files
[GFS2] use lib/parser for parsing mount options
[DLM] Lowcomms nodeid range & initialisation fixes
[DLM] Fix dlm_lowcoms_stop hang
[DLM] fix mode munging
[GFS2] lockdump improvements
[GFS2] Patch to detect corrupt number of dir entries in leaf and/or inode blocks
[GFS2] bz 236008: Kernel gpf doing cat /debugfs/gfs2/xxx (lock dump)
[DLM] fs/dlm/ast.c should #include "ast.h"
[DLM] Consolidate transport protocols
[DLM] Remove redundant assignment
[GFS2] Fix bz 234168 (ignoring rgrp flags)
[DLM] change lkid format
[DLM] interface for purge (2/2)
[DLM] add orphan purging code (1/2)
[DLM] split create_message function
[GFS2] Set drop_count to 0 (off) by default
...
| -rw-r--r-- | fs/dlm/Kconfig | 31 | ||||
| -rw-r--r-- | fs/dlm/Makefile | 6 | ||||
| -rw-r--r-- | fs/dlm/ast.c | 1 | ||||
| -rw-r--r-- | fs/dlm/config.c | 10 | ||||
| -rw-r--r-- | fs/dlm/config.h | 3 | ||||
| -rw-r--r-- | fs/dlm/dlm_internal.h | 11 | ||||
| -rw-r--r-- | fs/dlm/lock.c | 955 | ||||
| -rw-r--r-- | fs/dlm/lock.h | 2 | ||||
| -rw-r--r-- | fs/dlm/lockspace.c | 4 | ||||
| -rw-r--r-- | fs/dlm/lowcomms-sctp.c | 1210 | ||||
| -rw-r--r-- | fs/dlm/lowcomms.c (renamed from fs/dlm/lowcomms-tcp.c) | 788 | ||||
| -rw-r--r-- | fs/dlm/user.c | 163 | ||||
| -rw-r--r-- | fs/gfs2/dir.c | 38 | ||||
| -rw-r--r-- | fs/gfs2/glock.c | 619 | ||||
| -rw-r--r-- | fs/gfs2/glock.h | 8 | ||||
| -rw-r--r-- | fs/gfs2/incore.h | 14 | ||||
| -rw-r--r-- | fs/gfs2/locking/dlm/lock.c | 14 | ||||
| -rw-r--r-- | fs/gfs2/locking/dlm/lock_dlm.h | 3 | ||||
| -rw-r--r-- | fs/gfs2/lops.c | 20 | ||||
| -rw-r--r-- | fs/gfs2/main.c | 4 | ||||
| -rw-r--r-- | fs/gfs2/mount.c | 239 | ||||
| -rw-r--r-- | fs/gfs2/ops_address.c | 21 | ||||
| -rw-r--r-- | fs/gfs2/ops_fstype.c | 4 | ||||
| -rw-r--r-- | fs/gfs2/ops_super.c | 28 | ||||
| -rw-r--r-- | fs/gfs2/rgrp.c | 12 | ||||
| -rw-r--r-- | include/linux/dlm_device.h | 9 |
26 files changed, 2158 insertions, 2059 deletions
diff --git a/fs/dlm/Kconfig b/fs/dlm/Kconfig index 6fa7b0d5c0..69a94690e4 100644 --- a/fs/dlm/Kconfig +++ b/fs/dlm/Kconfig | |||
| @@ -3,36 +3,19 @@ menu "Distributed Lock Manager" | |||
| 3 | 3 | ||
| 4 | config DLM | 4 | config DLM |
| 5 | tristate "Distributed Lock Manager (DLM)" | 5 | tristate "Distributed Lock Manager (DLM)" |
| 6 | depends on SYSFS && (IPV6 || IPV6=n) | 6 | depends on IPV6 || IPV6=n |
| 7 | select CONFIGFS_FS | 7 | select CONFIGFS_FS |
| 8 | select IP_SCTP if DLM_SCTP | 8 | select IP_SCTP |
| 9 | help | 9 | help |
| 10 | A general purpose distributed lock manager for kernel or userspace | 10 | A general purpose distributed lock manager for kernel or userspace |
| 11 | applications. | 11 | applications. |
| 12 | |||
| 13 | choice | ||
| 14 | prompt "Select DLM communications protocol" | ||
| 15 | depends on DLM | ||
| 16 | default DLM_TCP | ||
| 17 | help | ||
| 18 | The DLM Can use TCP or SCTP for it's network communications. | ||
| 19 | SCTP supports multi-homed operations whereas TCP doesn't. | ||
| 20 | However, SCTP seems to have stability problems at the moment. | ||
| 21 | |||
| 22 | config DLM_TCP | ||
| 23 | bool "TCP/IP" | ||
| 24 | |||
| 25 | config DLM_SCTP | ||
| 26 | bool "SCTP" | ||
| 27 | |||
| 28 | endchoice | ||
| 29 | 12 | ||
| 30 | config DLM_DEBUG | 13 | config DLM_DEBUG |
| 31 | bool "DLM debugging" | 14 | bool "DLM debugging" |
| 32 | depends on DLM | 15 | depends on DLM |
| 33 | help | 16 | help |
| 34 | Under the debugfs mount point, the name of each lockspace will | 17 | Under the debugfs mount point, the name of each lockspace will |
| 35 | appear as a file in the "dlm" directory. The output is the | 18 | appear as a file in the "dlm" directory. The output is the |
| 36 | list of resource and locks the local node knows about. | 19 | list of resource and locks the local node knows about. |
| 37 | 20 | ||
| 38 | endmenu | 21 | endmenu |
diff --git a/fs/dlm/Makefile b/fs/dlm/Makefile index 65388944eb..604cf7dc5f 100644 --- a/fs/dlm/Makefile +++ b/fs/dlm/Makefile | |||
| @@ -8,14 +8,12 @@ dlm-y := ast.o \ | |||
| 8 | member.o \ | 8 | member.o \ |
| 9 | memory.o \ | 9 | memory.o \ |
| 10 | midcomms.o \ | 10 | midcomms.o \ |
| 11 | lowcomms.o \ | ||
| 11 | rcom.o \ | 12 | rcom.o \ |
| 12 | recover.o \ | 13 | recover.o \ |
| 13 | recoverd.o \ | 14 | recoverd.o \ |
| 14 | requestqueue.o \ | 15 | requestqueue.o \ |
| 15 | user.o \ | 16 | user.o \ |
| 16 | util.o | 17 | util.o |
| 17 | dlm-$(CONFIG_DLM_DEBUG) += debug_fs.o | 18 | dlm-$(CONFIG_DLM_DEBUG) += debug_fs.o |
| 18 | 19 | ||
| 19 | dlm-$(CONFIG_DLM_TCP) += lowcomms-tcp.o | ||
| 20 | |||
| 21 | dlm-$(CONFIG_DLM_SCTP) += lowcomms-sctp.o \ No newline at end of file | ||
diff --git a/fs/dlm/ast.c b/fs/dlm/ast.c index f91d39cb1e..6308122890 100644 --- a/fs/dlm/ast.c +++ b/fs/dlm/ast.c | |||
| @@ -14,6 +14,7 @@ | |||
| 14 | #include "dlm_internal.h" | 14 | #include "dlm_internal.h" |
| 15 | #include "lock.h" | 15 | #include "lock.h" |
| 16 | #include "user.h" | 16 | #include "user.h" |
| 17 | #include "ast.h" | ||
| 17 | 18 | ||
| 18 | #define WAKE_ASTS 0 | 19 | #define WAKE_ASTS 0 |
| 19 | 20 | ||
diff --git a/fs/dlm/config.c b/fs/dlm/config.c index 8665c88e5a..822abdcd14 100644 --- a/fs/dlm/config.c +++ b/fs/dlm/config.c | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | ******************************************************************************* | 2 | ******************************************************************************* |
| 3 | ** | 3 | ** |
| 4 | ** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. | 4 | ** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. |
| 5 | ** Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved. | 5 | ** Copyright (C) 2004-2007 Red Hat, Inc. All rights reserved. |
| 6 | ** | 6 | ** |
| 7 | ** This copyrighted material is made available to anyone wishing to use, | 7 | ** This copyrighted material is made available to anyone wishing to use, |
| 8 | ** modify, copy, or redistribute it subject to the terms and conditions | 8 | ** modify, copy, or redistribute it subject to the terms and conditions |
| @@ -89,6 +89,7 @@ struct cluster { | |||
| 89 | unsigned int cl_toss_secs; | 89 | unsigned int cl_toss_secs; |
| 90 | unsigned int cl_scan_secs; | 90 | unsigned int cl_scan_secs; |
| 91 | unsigned int cl_log_debug; | 91 | unsigned int cl_log_debug; |
| 92 | unsigned int cl_protocol; | ||
| 92 | }; | 93 | }; |
| 93 | 94 | ||
| 94 | enum { | 95 | enum { |
| @@ -101,6 +102,7 @@ enum { | |||
| 101 | CLUSTER_ATTR_TOSS_SECS, | 102 | CLUSTER_ATTR_TOSS_SECS, |
| 102 | CLUSTER_ATTR_SCAN_SECS, | 103 | CLUSTER_ATTR_SCAN_SECS, |
| 103 | CLUSTER_ATTR_LOG_DEBUG, | 104 | CLUSTER_ATTR_LOG_DEBUG, |
| 105 | CLUSTER_ATTR_PROTOCOL, | ||
| 104 | }; | 106 | }; |
| 105 | 107 | ||
| 106 | struct cluster_attribute { | 108 | struct cluster_attribute { |
| @@ -159,6 +161,7 @@ CLUSTER_ATTR(recover_timer, 1); | |||
| 159 | CLUSTER_ATTR(toss_secs, 1); | 161 | CLUSTER_ATTR(toss_secs, 1); |
| 160 | CLUSTER_ATTR(scan_secs, 1); | 162 | CLUSTER_ATTR(scan_secs, 1); |
| 161 | CLUSTER_ATTR(log_debug, 0); | 163 | CLUSTER_ATTR(log_debug, 0); |
| 164 | CLUSTER_ATTR(protocol, 0); | ||
| 162 | 165 | ||
| 163 | static struct configfs_attribute *cluster_attrs[] = { | 166 | static struct configfs_attribute *cluster_attrs[] = { |
| 164 | [CLUSTER_ATTR_TCP_PORT] = &cluster_attr_tcp_port.attr, | 167 | [CLUSTER_ATTR_TCP_PORT] = &cluster_attr_tcp_port.attr, |
| @@ -170,6 +173,7 @@ static struct configfs_attribute *cluster_attrs[] = { | |||
| 170 | [CLUSTER_ATTR_TOSS_SECS] = &cluster_attr_toss_secs.attr, | 173 | [CLUSTER_ATTR_TOSS_SECS] = &cluster_attr_toss_secs.attr, |
| 171 | [CLUSTER_ATTR_SCAN_SECS] = &cluster_attr_scan_secs.attr, | 174 | [CLUSTER_ATTR_SCAN_SECS] = &cluster_attr_scan_secs.attr, |
| 172 | [CLUSTER_ATTR_LOG_DEBUG] = &cluster_attr_log_debug.attr, | 175 | [CLUSTER_ATTR_LOG_DEBUG] = &cluster_attr_log_debug.attr, |
| 176 | [CLUSTER_ATTR_PROTOCOL] = &cluster_attr_protocol.attr, | ||
| 173 | NULL, | 177 | NULL, |
| 174 | }; | 178 | }; |
| 175 | 179 | ||
| @@ -904,6 +908,7 @@ int dlm_our_addr(struct sockaddr_storage *addr, int num) | |||
| 904 | #define DEFAULT_TOSS_SECS 10 | 908 | #define DEFAULT_TOSS_SECS 10 |
| 905 | #define DEFAULT_SCAN_SECS 5 | 909 | #define DEFAULT_SCAN_SECS 5 |
| 906 | #define DEFAULT_LOG_DEBUG 0 | 910 | #define DEFAULT_LOG_DEBUG 0 |
| 911 | #define DEFAULT_PROTOCOL 0 | ||
| 907 | 912 | ||
| 908 | struct dlm_config_info dlm_config = { | 913 | struct dlm_config_info dlm_config = { |
| 909 | .ci_tcp_port = DEFAULT_TCP_PORT, | 914 | .ci_tcp_port = DEFAULT_TCP_PORT, |
| @@ -914,6 +919,7 @@ struct dlm_config_info dlm_config = { | |||
| 914 | .ci_recover_timer = DEFAULT_RECOVER_TIMER, | 919 | .ci_recover_timer = DEFAULT_RECOVER_TIMER, |
| 915 | .ci_toss_secs = DEFAULT_TOSS_SECS, | 920 | .ci_toss_secs = DEFAULT_TOSS_SECS, |
| 916 | .ci_scan_secs = DEFAULT_SCAN_SECS, | 921 | .ci_scan_secs = DEFAULT_SCAN_SECS, |
| 917 | .ci_log_debug = DEFAULT_LOG_DEBUG | 922 | .ci_log_debug = DEFAULT_LOG_DEBUG, |
| 923 | .ci_protocol = DEFAULT_PROTOCOL | ||
| 918 | }; | 924 | }; |
| 919 | 925 | ||
diff --git a/fs/dlm/config.h b/fs/dlm/config.h index 1e978611a9..967cc3d72e 100644 --- a/fs/dlm/config.h +++ b/fs/dlm/config.h | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | ******************************************************************************* | 2 | ******************************************************************************* |
| 3 | ** | 3 | ** |
| 4 | ** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. | 4 | ** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. |
| 5 | ** Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved. | 5 | ** Copyright (C) 2004-2007 Red Hat, Inc. All rights reserved. |
| 6 | ** | 6 | ** |
| 7 | ** This copyrighted material is made available to anyone wishing to use, | 7 | ** This copyrighted material is made available to anyone wishing to use, |
| 8 | ** modify, copy, or redistribute it subject to the terms and conditions | 8 | ** modify, copy, or redistribute it subject to the terms and conditions |
| @@ -26,6 +26,7 @@ struct dlm_config_info { | |||
| 26 | int ci_toss_secs; | 26 | int ci_toss_secs; |
| 27 | int ci_scan_secs; | 27 | int ci_scan_secs; |
| 28 | int ci_log_debug; | 28 | int ci_log_debug; |
| 29 | int ci_protocol; | ||
| 29 | }; | 30 | }; |
| 30 | 31 | ||
| 31 | extern struct dlm_config_info dlm_config; | 32 | ex |
