<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/ocfs2/dir.c, branch linux-3.7.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.7.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.7.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2011-12-01T22:55:34Z</updated>
<entry>
<title>Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2</title>
<updated>2011-12-01T22:55:34Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2011-12-01T22:55:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0a4ebed781dbb9ecbfef2374d29da1ab3b1a63f3'/>
<id>urn:sha1:0a4ebed781dbb9ecbfef2374d29da1ab3b1a63f3</id>
<content type='text'>
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (31 commits)
  ocfs2: avoid unaligned access to dqc_bitmap
  ocfs2: Use filemap_write_and_wait() instead of write_inode_now()
  ocfs2: honor O_(D)SYNC flag in fallocate
  ocfs2: Add a missing journal credit in ocfs2_link_credits() -v2
  ocfs2: send correct UUID to cleancache initialization
  ocfs2: Commit transactions in error cases -v2
  ocfs2: make direntry invalid when deleting it
  fs/ocfs2/dlm/dlmlock.c: free kmem_cache_zalloc'd data using kmem_cache_free
  ocfs2: Avoid livelock in ocfs2_readpage()
  ocfs2: serialize unaligned aio
  ocfs2: Implement llseek()
  ocfs2: Fix ocfs2_page_mkwrite()
  ocfs2: Add comment about orphan scanning
  ocfs2: Clean up messages in the fs
  ocfs2/cluster: Cluster up now includes network connections too
  ocfs2/cluster: Add new function o2net_fill_node_map()
  ocfs2/cluster: Fix output in file elapsed_time_in_ms
  ocfs2/dlm: dlmlock_remote() needs to account for remastery
  ocfs2/dlm: Take inflight reference count for remotely mastered resources too
  ocfs2/dlm: Cleanup dlm_wait_for_node_death() and dlm_wait_for_node_recovery()
  ...
</content>
</entry>
<entry>
<title>ocfs2: make direntry invalid when deleting it</title>
<updated>2011-11-17T09:46:46Z</updated>
<author>
<name>Wengang Wang</name>
</author>
<published>2011-07-12T08:43:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8298524803339a9a8df053ebdfebc2975ec55be9'/>
<id>urn:sha1:8298524803339a9a8df053ebdfebc2975ec55be9</id>
<content type='text'>
When we deleting a direntry from a directory, if it's the first in a block we
invalid it by setting inode to 0; otherwise, we merge the deleted one to the
prior and contiguous direntry. And we don't truncate directories.

There is a problem for the later case since inode is not set to 0.
This problem happens when the caller passes a file position as parameter to
ocfs2_dir_foreach_blk(). If the position happens to point to a stale(not
the first, deleted in betweens of ocfs2_dir_foreach_blk()s) direntry, we are
not able to recognize its staleness. So that we treat it as a live one wrongly.

The fix is to set inode to 0 in both cases indicating the direntry is stale.
This won't introduce additional IOs.

Signed-off-by: Wengang Wang &lt;wen.gang.wang@oracle.com&gt;
Signed-off-by: Joel Becker &lt;jlbec@evilplan.org&gt;
</content>
</entry>
<entry>
<title>filesystems: add set_nlink()</title>
<updated>2011-11-02T11:53:43Z</updated>
<author>
<name>Miklos Szeredi</name>
</author>
<published>2011-10-28T12:13:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bfe8684869601dacfcb2cd69ef8cfd9045f62170'/>
<id>urn:sha1:bfe8684869601dacfcb2cd69ef8cfd9045f62170</id>
<content type='text'>
Replace remaining direct i_nlink updates with a new set_nlink()
updater function.

Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
Tested-by: Toshiyuki Okajima &lt;toshi.okajima@jp.fujitsu.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
</entry>
<entry>
<title>ocfs2: Initialize data_ac (might be used uninitialized)</title>
<updated>2011-05-13T18:26:15Z</updated>
<author>
<name>Marcus Meissner</name>
</author>
<published>2011-05-05T17:44:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5d44670facd3205212f8fe89eb422e3b5f309612'/>
<id>urn:sha1:5d44670facd3205212f8fe89eb422e3b5f309612</id>
<content type='text'>
CLANG found that there is a path that has data_ac uninitialized,
this place
	2917	/* This gets us the dx_root */
	2918	ret = ocfs2_reserve_new_metadata_blocks(osb, 1, &amp;meta_ac);
	2919	if (ret) {

	3
		Taking true branch
	2920	mlog_errno(ret);
	2921	goto out;

	4
		Control jumps to line 3168
	2922	}

Goes to the out: label without data_ac being initialized.

Ciao, Marcus

Signed-Off-By: Marcus Meissner &lt;meissner@suse.de&gt;
Signed-off-by: Mark Fasheh &lt;mfasheh@suse.com&gt;
Signed-off-by: Joel Becker &lt;jlbec@evilplan.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2</title>
<updated>2011-03-28T20:03:31Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2011-03-28T20:03:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=03e4970c10151c5fb25ddd7e9a142d63c6a8d058'/>
<id>urn:sha1:03e4970c10151c5fb25ddd7e9a142d63c6a8d058</id>
<content type='text'>
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (39 commits)
  Treat writes as new when holes span across page boundaries
  fs,ocfs2: Move o2net_get_func_run_time under CONFIG_OCFS2_FS_STATS.
  ocfs2/dlm: Move kmalloc() outside the spinlock
  ocfs2: Make the left masklogs compat.
  ocfs2: Remove masklog ML_AIO.
  ocfs2: Remove masklog ML_UPTODATE.
  ocfs2: Remove masklog ML_BH_IO.
  ocfs2: Remove masklog ML_JOURNAL.
  ocfs2: Remove masklog ML_EXPORT.
  ocfs2: Remove masklog ML_DCACHE.
  ocfs2: Remove masklog ML_NAMEI.
  ocfs2: Remove mlog(0) from fs/ocfs2/dir.c
  ocfs2: remove NAMEI from symlink.c
  ocfs2: Remove masklog ML_QUOTA.
  ocfs2: Remove mlog(0) from quota_local.c.
  ocfs2: Remove masklog ML_RESERVATIONS.
  ocfs2: Remove masklog ML_XATTR.
  ocfs2: Remove masklog ML_SUPER.
  ocfs2: Remove mlog(0) from fs/ocfs2/heartbeat.c
  ocfs2: Remove mlog(0) from fs/ocfs2/slot_map.c
  ...

Fix up trivial conflict in fs/ocfs2/super.c
</content>
</entry>
<entry>
<title>Merge branch 'mlog_replace_for_39' of git://repo.or.cz/taoma-kernel into ocfs2-merge-window-fix</title>
<updated>2011-03-28T16:44:26Z</updated>
<author>
<name>Joel Becker</name>
</author>
<published>2011-03-28T16:44:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=99bdc3880c611c7f2061fbd5372ef81b40217e26'/>
<id>urn:sha1:99bdc3880c611c7f2061fbd5372ef81b40217e26</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ocfs2: Remove mlog(0) from fs/ocfs2/dir.c</title>
<updated>2011-02-23T14:30:23Z</updated>
<author>
<name>Tao Ma</name>
</author>
<published>2011-02-23T14:30:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f1088d471f8d846e817eb4d673212d18d9820c61'/>
<id>urn:sha1:f1088d471f8d846e817eb4d673212d18d9820c61</id>
<content type='text'>
This is the 2nd step to remove the debug info of NAMEI.

Signed-off-by: Tao Ma &lt;boyu.mt@taobao.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Remove EXIT from masklog.</title>
<updated>2011-03-07T08:43:21Z</updated>
<author>
<name>Tao Ma</name>
</author>
<published>2011-03-07T08:43:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c1e8d35ef5ffb393b94a192034b5e3541e005d75'/>
<id>urn:sha1:c1e8d35ef5ffb393b94a192034b5e3541e005d75</id>
<content type='text'>
mlog_exit is used to record the exit status of a function.
But because it is added in so many functions, if we enable it,
the system logs get filled up quickly and cause too much I/O.
So actually no one can open it for a production system or even
for a test.

This patch just try to remove it or change it. So:
1. if all the error paths already use mlog_errno, it is just removed.
   Otherwise, it will be replaced by mlog_errno.
2. if it is used to print some return value, it is replaced with
   mlog(0,...).
mlog_exit_ptr is changed to mlog(0.
All those mlog(0,...) will be replaced with trace events later.

Signed-off-by: Tao Ma &lt;boyu.mt@taobao.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: Remove ENTRY from masklog.</title>
<updated>2011-02-21T03:10:44Z</updated>
<author>
<name>Tao Ma</name>
</author>
<published>2011-02-21T03:10:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ef6b689b63b9f5227ccee6f16dd9ee3faf58a464'/>
<id>urn:sha1:ef6b689b63b9f5227ccee6f16dd9ee3faf58a464</id>
<content type='text'>
ENTRY is used to record the entry of a function.
But because it is added in so many functions, if we enable it,
the system logs get filled up quickly and cause too much I/O.
So actually no one can open it for a production system or even
for a test.

So for mlog_entry_void, we just remove it.
for mlog_entry(...), we replace it with mlog(0,...), and they
will be replace by trace event later.

Signed-off-by: Tao Ma &lt;boyu.mt@taobao.com&gt;
</content>
</entry>
<entry>
<title>ocfs2: optimize ocfs2_check_dir_entry() with unlikely() annotations</title>
<updated>2011-02-20T11:56:12Z</updated>
<author>
<name>Tao Ma</name>
</author>
<published>2011-01-24T15:23:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1dd9ffc827b8591aabcf5fea6ea83b69e846deb9'/>
<id>urn:sha1:1dd9ffc827b8591aabcf5fea6ea83b69e846deb9</id>
<content type='text'>
In cad3f00, ext4_check_dir_entry was modified by adding some unlikely.
Ted described it as "This function gets called a lot for large
directories, and the answer is almost always 'no, no, there's no problem'.
This means using unlikely() is a good thing."
ext3 added the similar change in commit a4ae309.

So change it accordingly in ocfs2.

Cc: Joel Becker &lt;jlbec@evilplan.org&gt;
Signed-off-by: Tao Ma &lt;boyu.mt@taobao.com&gt;
Signed-off-by: Joel Becker &lt;jlbec@evilplan.org&gt;
</content>
</entry>
</feed>
