<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/ocfs2/stackglue.c, branch linux-2.6.28.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-10-14T00:02:44Z</updated>
<entry>
<title>ocfs2: Remove pointless !!</title>
<updated>2008-10-14T00:02:44Z</updated>
<author>
<name>Mark Fasheh</name>
</author>
<published>2008-10-06T23:16:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=009d37502a7b9fc89741e66b4454afca4edc1c26'/>
<id>urn:sha1:009d37502a7b9fc89741e66b4454afca4edc1c26</id>
<content type='text'>
ocfs2_stack_supports_plocks() doesn't need this to properly return a zero or
one value.

Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: POSIX file locks support</title>
<updated>2008-10-13T20:57:57Z</updated>
<author>
<name>Mark Fasheh</name>
</author>
<published>2008-07-21T21:29:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=53da4939f349d4edd283b043219221ca5b78e4d4'/>
<id>urn:sha1:53da4939f349d4edd283b043219221ca5b78e4d4</id>
<content type='text'>
This is actually pretty easy since fs/dlm already handles the bulk of the
work. The Ocfs2 userspace cluster stack module already uses fs/dlm as the
underlying lock manager, so I only had to add the right calls.

Cluster-aware POSIX locks ("plocks") can be turned off by the same means at
UNIX locks - mount with 'noflocks', or create a local-only Ocfs2 volume.
Internally, the file system uses two sets of file_operations, depending on
whether cluster aware plocks is required. This turns out to be easier than
implementing local-only versions of -&gt;lock.

Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Increment the reference count of an already-active stack.</title>
<updated>2008-08-25T14:29:47Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2008-08-22T21:30:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d6817cdbd143f87f9d7c59a4c3194091190eeb84'/>
<id>urn:sha1:d6817cdbd143f87f9d7c59a4c3194091190eeb84</id>
<content type='text'>
The ocfs2_stack_driver_request() function failed to increment the
refcount of an already-active stack.  It only did the increment on the
first reference.  Whoops.

Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Tested-by: Marcos Matsunaga &lt;marcos.matsunaga@oracle.com&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Remove -&gt;hangup() from stack glue operations.</title>
<updated>2008-06-16T17:46:52Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2008-05-30T22:58:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2c39450b39880e162b3eb339672314101f58ee1a'/>
<id>urn:sha1:2c39450b39880e162b3eb339672314101f58ee1a</id>
<content type='text'>
The -&gt;hangup() call was only used to execute ocfs2_hb_ctl.  Now that
the generic stack glue code handles this, the underlying stack drivers
don't need to know about it.

Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Move the call of ocfs2_hb_ctl into the stack glue.</title>
<updated>2008-06-16T17:46:51Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2008-05-30T22:43:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9f9a99f4eccc64650e932090cff0ebd07b81e334'/>
<id>urn:sha1:9f9a99f4eccc64650e932090cff0ebd07b81e334</id>
<content type='text'>
Take o2hb_stop() out of the o2cb code and make it part of the generic
stack glue as ocfs2_leave_group().  This also allows us to remove the
ocfs2_get_hb_ctl_path() function - everything to do with hb_ctl is now
part of stackglue.c.  o2cb no longer needs a -&gt;hangup() function.

Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Move the hb_ctl_path sysctl into the stack glue.</title>
<updated>2008-06-16T17:46:50Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2008-05-30T22:30:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3878f110f71a0971ff7acc15dd6db711b6ef37c6'/>
<id>urn:sha1:3878f110f71a0971ff7acc15dd6db711b6ef37c6</id>
<content type='text'>
ocfs2 needs to call out to the hb_ctl program at unmount for all cluster
stacks.  The first step is to move the hb_ctl_path sysctl out of the
o2cb code and into the generic stack glue.

Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: add fsdlm to stackglue</title>
<updated>2008-04-18T15:56:07Z</updated>
<author>
<name>David Teigland</name>
</author>
<published>2008-02-20T22:29:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cf4d8d75d8aba537a19b313a9364fd08ddbd5622'/>
<id>urn:sha1:cf4d8d75d8aba537a19b313a9364fd08ddbd5622</id>
<content type='text'>
Add code to use fs/dlm.

[ Modified to be part of the stack_user module -- Joel ]

Signed-off-by: David Teigland &lt;teigland@redhat.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Add the 'cluster_stack' sysfs file.</title>
<updated>2008-04-18T15:56:05Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2008-02-01T23:17:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9c6c877c04ce17d76a35d2173d3a3840d6b796a2'/>
<id>urn:sha1:9c6c877c04ce17d76a35d2173d3a3840d6b796a2</id>
<content type='text'>
Userspace can now query and specify the cluster stack in use via the
/sys/fs/ocfs2/cluster_stack file.  By default, it is 'o2cb', which is
the classic stack.  Thus, old tools that do not know how to modify this
file will work just fine.  The stack cannot be modified if there is a
live filesystem.

ocfs2_cluster_connect() now takes the expected cluster stack as an
argument.  This way, the filesystem and the stack glue ensure they are
speaking to the same backend.

If the stack is 'o2cb', the o2cb stack plugin is used.  For any other
value, the fsdlm stack plugin is selected.

Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Create stack glue sysfs files.</title>
<updated>2008-04-18T15:56:05Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2008-02-01T07:56:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=74ae4e104dfc57017783fc07d5f2f9129062207f'/>
<id>urn:sha1:74ae4e104dfc57017783fc07d5f2f9129062207f</id>
<content type='text'>
Introduce a set of sysfs files that describe the current stack glue
state.  The files live under /sys/fs/ocfs2.  The locking_protocol file
displays the version of ocfs2's locking code.  The
loaded_cluster_plugins file displays all of the currently loaded stack
plugins.  When filesystems are mounted, the active_cluster_plugin file
will display the plugin in use.

Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Break out stackglue into modules.</title>
<updated>2008-04-18T15:56:05Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2008-02-01T23:03:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=286eaa95c5c5915a6b72cc3f0a2534161fd7928b'/>
<id>urn:sha1:286eaa95c5c5915a6b72cc3f0a2534161fd7928b</id>
<content type='text'>
We define the ocfs2_stack_plugin structure to represent a stack driver.
The o2cb stack code is split into stack_o2cb.c.  This becomes the
ocfs2_stack_o2cb.ko module.

The stackglue generic functions are similarly split into the
ocfs2_stackglue.ko module.  This module now provides an interface to
register drivers.  The ocfs2_stack_o2cb driver registers itself.  As
part of this interface, ocfs2_stackglue can load drivers on demand.
This is accomplished in ocfs2_cluster_connect().

ocfs2_cluster_disconnect() is now notified when a _hangup() is pending.
If a hangup is pending, it will not release the driver module and will
let _hangup() do that.

Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
</content>
</entry>
</feed>
