<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/mm/filemap.c, branch linux-2.6.25.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.25.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.25.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-08-06T17:10:58Z</updated>
<entry>
<title>jbd: fix race between free buffer and commit transaction</title>
<updated>2008-08-06T17:10:58Z</updated>
<author>
<name>Mingming Cao</name>
</author>
<published>2008-07-25T08:46:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=53f501a19fc08631458f228b5ad2bdc46d65846b'/>
<id>urn:sha1:53f501a19fc08631458f228b5ad2bdc46d65846b</id>
<content type='text'>
commit 3f31fddfa26b7594b44ff2b34f9a04ba409e0f91 upstream

journal_try_to_free_buffers() could race with jbd commit transaction when
the later is holding the buffer reference while waiting for the data
buffer to flush to disk.  If the caller of journal_try_to_free_buffers()
request tries hard to release the buffers, it will treat the failure as
error and return back to the caller.  We have seen the directo IO failed
due to this race.  Some of the caller of releasepage() also expecting the
buffer to be dropped when passed with GFP_KERNEL mask to the
releasepage()-&gt;journal_try_to_free_buffers().

With this patch, if the caller is passing the __GFP_WAIT and __GFP_FS to
indicating this call could wait, in case of try_to_free_buffers() failed,
let's waiting for journal_commit_transaction() to finish commit the
current committing transaction, then try to free those buffers again.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Mingming Cao &lt;cmm@us.ibm.com&gt;
Reviewed-by: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Acked-by: Jan Kara &lt;jack@suse.cz&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>Fix off-by-one error in iov_iter_advance()</title>
<updated>2008-08-01T18:51:02Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2008-07-30T22:20:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=18b8506ad15f608f7c0e0745c55dd2cd5ff7c091'/>
<id>urn:sha1:18b8506ad15f608f7c0e0745c55dd2cd5ff7c091</id>
<content type='text'>
commit 94ad374a0751f40d25e22e036c37f7263569d24c upstream

The iov_iter_advance() function would look at the iov-&gt;iov_len entry
even though it might have iterated over the whole array, and iov was
pointing past the end.  This would cause DEBUG_PAGEALLOC to trigger a
kernel page fault if the allocation was at the end of a page, and the
next page was unallocated.

The quick fix is to just change the order of the tests: check that there
is any iovec data left before we check the iov entry itself.

Thanks to Alexey Dobriyan for finding this case, and testing the fix.

Reported-and-tested-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Cc: Nick Piggin &lt;npiggin@suse.de&gt;
Cc: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mm: fix various kernel-doc comments</title>
<updated>2008-03-20T01:53:35Z</updated>
<author>
<name>Randy Dunlap</name>
</author>
<published>2008-03-20T00:00:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7682486b3ee06f800d5b11033371c7c5e92e3057'/>
<id>urn:sha1:7682486b3ee06f800d5b11033371c7c5e92e3057</id>
<content type='text'>
Fix various kernel-doc notation in mm/:

filemap.c: add function short description; convert 2 to kernel-doc
fremap.c: change parameter 'prot' to @prot
pagewalk.c: change "-" in function parameters to ":"
slab.c: fix short description of kmem_ptr_validate()
swap.c: fix description &amp; parameters of put_pages_list()
swap_state.c: fix function parameters
vmalloc.c: change "@returns" to "Returns:" since that is not a parameter

Signed-off-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>iov_iter_advance() fix</title>
<updated>2008-03-11T01:01:20Z</updated>
<author>
<name>Nick Piggin</name>
</author>
<published>2008-03-10T18:43:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7009264c519603b8ec67c881bd368a56703cfc9'/>
<id>urn:sha1:f7009264c519603b8ec67c881bd368a56703cfc9</id>
<content type='text'>
iov_iter_advance() skips over zero-length iovecs, however it does not properly
terminate at the end of the iovec array.  Fix this by checking against
i-&gt;count before we skip a zero-length iov.

The bug was reproduced with a test program that continually randomly creates
iovs to writev.  The fix was also verified with the same program and also it
could verify that the correct data was contained in the file after each
writev.

Signed-off-by: Nick Piggin &lt;npiggin@suse.de&gt;
Tested-by: "Kevin Coffman" &lt;kwc@citi.umich.edu&gt;
Cc: "Alexey Dobriyan" &lt;adobriyan@gmail.com&gt;
Cc: &lt;stable@kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Do not include linux/backing-dev.h twice</title>
<updated>2008-03-10T05:21:52Z</updated>
<author>
<name>Jesper Juhl</name>
</author>
<published>2008-03-10T00:12:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3426fadfa20454f124203768857e8f18ab4909bd'/>
<id>urn:sha1:3426fadfa20454f124203768857e8f18ab4909bd</id>
<content type='text'>
Don't include linux/backing-dev.h twice in mm/filemap.c, it's pointless.

Signed-off-by: Jesper Juhl &lt;jesper.juhl@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>remove final fastcall users</title>
<updated>2008-02-14T00:21:18Z</updated>
<author>
<name>Harvey Harrison</name>
</author>
<published>2008-02-13T23:03:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b5606c2d4447e80b1d72406af4e78af1eda611d4'/>
<id>urn:sha1:b5606c2d4447e80b1d72406af4e78af1eda611d4</id>
<content type='text'>
fastcall always expands to empty, remove it.

Signed-off-by: Harvey Harrison &lt;harvey.harrison@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>kill do_generic_mapping_read</title>
<updated>2008-02-08T17:22:39Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2008-02-08T12:21:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=36e789144267105e0b3f2b9bca7db3184fce50dc'/>
<id>urn:sha1:36e789144267105e0b3f2b9bca7db3184fce50dc</id>
<content type='text'>
do_generic_mapping_read was used by gfs2 for internals reads, but this use
of the interface was rather suboptimal (as was the whole interface) and has
been replaced by an internal helper now.  This patch kills
do_generic_mapping_read and surrounding damage in preparation of additional
cleanups for the buffered read path.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Use pgoff_t instead of unsigned long</title>
<updated>2008-02-08T17:22:32Z</updated>
<author>
<name>Jan Kara</name>
</author>
<published>2008-02-08T12:20:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2004dc8eec1b4f0692b3be87ea80c70faa44d619'/>
<id>urn:sha1:2004dc8eec1b4f0692b3be87ea80c70faa44d619</id>
<content type='text'>
Convert variables containing page indexes to pgoff_t.

Signed-off-by: Jan Kara &lt;jack@suse.cz&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>mem-controller gfp-mask fix</title>
<updated>2008-02-07T16:42:19Z</updated>
<author>
<name>Badari Pulavarty</name>
</author>
<published>2008-02-07T08:14:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4c6bc8dd5a0932f2c0b30a5f0a124464b7f614d0'/>
<id>urn:sha1:4c6bc8dd5a0932f2c0b30a5f0a124464b7f614d0</id>
<content type='text'>
Need to strip __GFP_HIGHMEM flag while passing to mem_container_cache_charge().

Signed-off-by: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>memory controller BUG_ON()</title>
<updated>2008-02-07T16:42:19Z</updated>
<author>
<name>Balbir Singh</name>
</author>
<published>2008-02-07T08:14:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=35c754d79f4da80d5e8972f6403dd26f7962fd88'/>
<id>urn:sha1:35c754d79f4da80d5e8972f6403dd26f7962fd88</id>
<content type='text'>
Move mem_controller_cache_charge() above radix_tree_preload().
radix_tree_preload() disables preemption, even though the gfp_mask passed
contains __GFP_WAIT, we cannot really do __GFP_WAIT allocations, thus we
hit a BUG_ON() in kmem_cache_alloc().

This patch moves mem_controller_cache_charge() to above radix_tree_preload()
for cache charging.

Signed-off-by: Balbir Singh &lt;balbir@linux.vnet.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
