<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/ocfs2, branch linux-2.6.37.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2011-03-07T23:05:16Z</updated>
<entry>
<title>Ocfs2/refcounttree: Fix a bug for refcounttree to writeback clusters in a right number.</title>
<updated>2011-03-07T23:05:16Z</updated>
<author>
<name>Tristan Ye</name>
</author>
<published>2011-01-21T10:20:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4b33fadfd4eddc8a41fd2dc08c623ed401519fff'/>
<id>urn:sha1:4b33fadfd4eddc8a41fd2dc08c623ed401519fff</id>
<content type='text'>
commit acf3bb007e5636ef4c17505affb0974175108553 upstream.

Current refcounttree codes actually didn't writeback the new pages out in
write-back mode, due to a bug of always passing a ZERO number of clusters
to 'ocfs2_cow_sync_writeback', the patch tries to pass a proper one in.

Signed-off-by: Tristan Ye &lt;tristan.ye@oracle.com&gt;
Signed-off-by: Joel Becker &lt;jlbec@evilplan.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>ocfs2: Check heartbeat mode for kernel stacks only</title>
<updated>2011-03-07T23:05:16Z</updated>
<author>
<name>Mark Fasheh</name>
</author>
<published>2011-01-31T19:31:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dbb59808e7fca1d4c794a3bfeea7f2046fc25f12'/>
<id>urn:sha1:dbb59808e7fca1d4c794a3bfeea7f2046fc25f12</id>
<content type='text'>
commit 52c303c56c3638944b5f733e3961dc58eb8c7270 upstream.

Commit 2c442719e90a44a6982c033d69df4aae4b167cfa added some checks for proper
heartbeat mode when the o2cb stack is running.  Unfortunately, it didn't
take into account that a userpsace stack could be running. Fix this by only
doing the check if o2cb is in use. This patch allows userspace stacks to
mount the fs again.

Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
Signed-off-by: Joel Becker &lt;jlbec@evilplan.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2</title>
<updated>2010-12-24T00:36:48Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2010-12-24T00:36:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=eda4b716ea1f2a647a39cebae66b3fae4c4b80e4'/>
<id>urn:sha1:eda4b716ea1f2a647a39cebae66b3fae4c4b80e4</id>
<content type='text'>
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:
  ocfs2: Fix system inodes cache overflow.
  ocfs2: Hold ip_lock when set/clear flags for indexed dir.
  ocfs2: Adjust masklog flag values
  Ocfs2: Teach 'coherency=full' O_DIRECT writes to correctly up_read i_alloc_sem.
  ocfs2/dlm: Migrate lockres with no locks if it has a reference
</content>
</entry>
<entry>
<title>ocfs2: Fix system inodes cache overflow.</title>
<updated>2010-12-22T10:35:36Z</updated>
<author>
<name>Tao Ma</name>
</author>
<published>2010-12-22T09:50:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7d8f98769e7f4bc29c38789daeb416c6a7d7c241'/>
<id>urn:sha1:7d8f98769e7f4bc29c38789daeb416c6a7d7c241</id>
<content type='text'>
When we store system inodes cache in ocfs2_super,
we use a array for global system inodes. But unfortunately,
the range is calculated wrongly which makes it overflow and
pollute ocfs2_super-&gt;local_system_inodes.
This patch fix it by setting the range properly.

The corresponding bug is ossbug1303.
http://oss.oracle.com/bugzilla/show_bug.cgi?id=1303

Cc: stable@kernel.org
Signed-off-by: Tao Ma &lt;boyu.mt@taobao.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Hold ip_lock when set/clear flags for indexed dir.</title>
<updated>2010-12-16T08:36:15Z</updated>
<author>
<name>Tao Ma</name>
</author>
<published>2010-12-15T08:30:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8ac33dc86d37ca76d282aa112d4f2794a731064e'/>
<id>urn:sha1:8ac33dc86d37ca76d282aa112d4f2794a731064e</id>
<content type='text'>
When we set/clear the dyn_features for an inode we hold the ip_lock.
So do it when we set/clear OCFS2_INDEXED_DIR_FL also.

Signed-off-by: Tao Ma &lt;boyu.mt@taobao.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Adjust masklog flag values</title>
<updated>2010-12-16T08:36:11Z</updated>
<author>
<name>Sunil Mushran</name>
</author>
<published>2010-12-10T02:20:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=41b41a26d4d6e4e3ad877d02377844ab9552dc16'/>
<id>urn:sha1:41b41a26d4d6e4e3ad877d02377844ab9552dc16</id>
<content type='text'>
Two masklogs had the same flag value.

Signed-off-by: Sunil Mushran &lt;sunil.mushran@oracle.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
</content>
</entry>
<entry>
<title>Ocfs2: Teach 'coherency=full' O_DIRECT writes to correctly up_read i_alloc_sem.</title>
<updated>2010-12-09T23:36:48Z</updated>
<author>
<name>Tristan Ye</name>
</author>
<published>2010-12-07T06:35:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=39c99f12f15c8bf8257985d9b2a2548a03d18c00'/>
<id>urn:sha1:39c99f12f15c8bf8257985d9b2a2548a03d18c00</id>
<content type='text'>
Due to newly-introduced 'coherency=full' O_DIRECT writes also takes the EX
rw_lock like buffered writes did(rw_level == 1), it turns out messing the
usage of 'level' in ocfs2_dio_end_io() up, which caused i_alloc_sem being
failed to get up_read'd correctly.

This patch tries to teach ocfs2_dio_end_io to understand well on all locking
stuffs by explicitly introducing a new bit for i_alloc_sem in iocb's private
data, just like what we did for rw_lock.

Signed-off-by: Tristan Ye &lt;tristan.ye@oracle.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
</content>
</entry>
<entry>
<title>ocfs2/dlm: Migrate lockres with no locks if it has a reference</title>
<updated>2010-12-09T23:36:00Z</updated>
<author>
<name>Sunil Mushran</name>
</author>
<published>2010-11-19T23:06:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=388c4bcb4e63e88fb1f312a2f5f9eb2623afcf5b'/>
<id>urn:sha1:388c4bcb4e63e88fb1f312a2f5f9eb2623afcf5b</id>
<content type='text'>
o2dlm was not migrating resources with zero locks because it assumed that that
resource would get purged by dlm_thread. However, some usage patterns involve
creating and dropping locks at a high rate leading to the migrate thread seeing
zero locks but the purge thread seeing an active reference. When this happens,
the dlm_thread cannot purge the resource and the migrate thread sees no reason
to migrate that resource. The spell is broken when the migrate thread catches
the resource with a lock.

The fix is to make the migrate thread also consider the reference map.

This usage pattern can be triggered by userspace on userdlm locks and flocks.

Signed-off-by: Sunil Mushran &lt;sunil.mushran@oracle.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
</content>
</entry>
<entry>
<title>ocfs2_connection_find() returns pointer to bad structure</title>
<updated>2010-11-18T23:41:41Z</updated>
<author>
<name>dann frazier</name>
</author>
<published>2010-11-18T22:03:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=226291aa4641fa13cb5dec3bcb3379faa83009e2'/>
<id>urn:sha1:226291aa4641fa13cb5dec3bcb3379faa83009e2</id>
<content type='text'>
If ocfs2_live_connection_list is empty, ocfs2_connection_find() will return
a pointer to the LIST_HEAD, cast as a ocfs2_live_connection. This can cause
an oops when ocfs2_control_send_down() dereferences c-&gt;oc_conn:

Call Trace:
  [&lt;ffffffffa00c2a3c&gt;] ocfs2_control_message+0x28c/0x2b0 [ocfs2_stack_user]
  [&lt;ffffffffa00c2a95&gt;] ocfs2_control_write+0x35/0xb0 [ocfs2_stack_user]
  [&lt;ffffffff81143a88&gt;] vfs_write+0xb8/0x1a0
  [&lt;ffffffff8155cc13&gt;] ? do_page_fault+0x153/0x3b0
  [&lt;ffffffff811442f1&gt;] sys_write+0x51/0x80
  [&lt;ffffffff810121b2&gt;] system_call_fastpath+0x16/0x1b

Fix by explicitly returning NULL if no match is found.

Signed-off-by: dann frazier &lt;dann.frazier@canonical.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: char is not always signed</title>
<updated>2010-11-18T22:10:56Z</updated>
<author>
<name>Milton Miller</name>
</author>
<published>2010-11-18T04:20:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a2a2f55291918f6cf9287d7beaecc7bc007a9f1c'/>
<id>urn:sha1:a2a2f55291918f6cf9287d7beaecc7bc007a9f1c</id>
<content type='text'>
Commit 1c66b360fe262 (Change some lock status member in ocfs2_lock_res
to char.)  states that these fields need to be signed due to comparision
to -1, but only changed the type from unsigned char to char.   However, it
is a compiler option if char is a signed or unsigned type.  Change these
fields to signed char so the code will work with all compilers.

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