<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/include/linux/fs.h, branch v2.6.26</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=v2.6.26</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=v2.6.26'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2008-07-01T07:07:34+00:00</updated>
<entry>
<title>Properly notify block layer of sync writes</title>
<updated>2008-07-01T07:07:34+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2008-07-01T07:07:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=18ce3751ccd488c78d3827e9f6bf54e6322676fb'/>
<id>urn:sha1:18ce3751ccd488c78d3827e9f6bf54e6322676fb</id>
<content type='text'>
fsync_buffers_list() and sync_dirty_buffer() both issue async writes and
then immediately wait on them. Conceptually, that makes them sync writes
and we should treat them as such so that the IO schedulers can handle
them appropriately.

This patch fixes a write starvation issue that Lin Ming reported, where
xx is stuck for more than 2 minutes because of a large number of
synchronous IO in the system:

INFO: task kjournald:20558 blocked for more than 120 seconds.
"echo 0 &gt; /proc/sys/kernel/hung_task_timeout_secs" disables this
message.
kjournald     D ffff810010820978  6712 20558      2
ffff81022ddb1d10 0000000000000046 ffff81022e7baa10 ffffffff803ba6f2
ffff81022ecd0000 ffff8101e6dc9160 ffff81022ecd0348 000000008048b6cb
0000000000000086 ffff81022c4e8d30 0000000000000000 ffffffff80247537
Call Trace:
[&lt;ffffffff803ba6f2&gt;] kobject_get+0x12/0x17
[&lt;ffffffff80247537&gt;] getnstimeofday+0x2f/0x83
[&lt;ffffffff8029c1ac&gt;] sync_buffer+0x0/0x3f
[&lt;ffffffff8066d195&gt;] io_schedule+0x5d/0x9f
[&lt;ffffffff8029c1e7&gt;] sync_buffer+0x3b/0x3f
[&lt;ffffffff8066d3f0&gt;] __wait_on_bit+0x40/0x6f
[&lt;ffffffff8029c1ac&gt;] sync_buffer+0x0/0x3f
[&lt;ffffffff8066d48b&gt;] out_of_line_wait_on_bit+0x6c/0x78
[&lt;ffffffff80243909&gt;] wake_bit_function+0x0/0x23
[&lt;ffffffff8029e3ad&gt;] sync_dirty_buffer+0x98/0xcb
[&lt;ffffffff8030056b&gt;] journal_commit_transaction+0x97d/0xcb6
[&lt;ffffffff8023a676&gt;] lock_timer_base+0x26/0x4b
[&lt;ffffffff8030300a&gt;] kjournald+0xc1/0x1fb
[&lt;ffffffff802438db&gt;] autoremove_wake_function+0x0/0x2e
[&lt;ffffffff80302f49&gt;] kjournald+0x0/0x1fb
[&lt;ffffffff802437bb&gt;] kthread+0x47/0x74
[&lt;ffffffff8022de51&gt;] schedule_tail+0x28/0x5d
[&lt;ffffffff8020cac8&gt;] child_rip+0xa/0x12
[&lt;ffffffff80243774&gt;] kthread+0x0/0x74
[&lt;ffffffff8020cabe&gt;] child_rip+0x0/0x12

Lin Ming confirms that this patch fixes the issue. I've run tests with
it for the past week and no ill effects have been observed, so I'm
proposing it for inclusion into 2.6.26.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>[patch 4/4] flock: remove unused fields from file_lock_operations</title>
<updated>2008-06-23T15:52:30+00:00</updated>
<author>
<name>Denis V. Lunev</name>
<email>den@openvz.org</email>
</author>
<published>2008-06-09T23:40:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=f9f48ec72bfc9489a30bc6ddbfcf27d86a8bc651'/>
<id>urn:sha1:f9f48ec72bfc9489a30bc6ddbfcf27d86a8bc651</id>
<content type='text'>
fl_insert and fl_remove are not used right now in the kernel. Remove them.

Signed-off-by: Denis V. Lunev &lt;den@openvz.org&gt;
Cc: Matthew Wilcox &lt;matthew@wil.cx&gt;
Cc: Alexander Viro &lt;viro@zeniv.linux.org.uk&gt;
Cc: "J. Bruce Fields" &lt;bfields@fieldses.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>introduce memory_read_from_buffer()</title>
<updated>2008-06-06T18:29:11+00:00</updated>
<author>
<name>Akinobu Mita</name>
<email>akinobu.mita@gmail.com</email>
</author>
<published>2008-06-06T05:46:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=93b071139a956e51c98cdefd50a47981a4eb852e'/>
<id>urn:sha1:93b071139a956e51c98cdefd50a47981a4eb852e</id>
<content type='text'>
This patch introduces memory_read_from_buffer().

The only difference between memory_read_from_buffer() and
simple_read_from_buffer() is which address space the function copies to.

simple_read_from_buffer copies to user space memory.
memory_read_from_buffer copies to normal memory.

Signed-off-by: Akinobu Mita &lt;akinobu.mita@gmail.com&gt;
Cc: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Cc: Doug Warzecha &lt;Douglas_Warzecha@dell.com&gt;
Cc: Zhang Rui &lt;rui.zhang@intel.com&gt;
Cc: Matt Domsch &lt;Matt_Domsch@dell.com&gt;
Cc: Abhay Salunke &lt;Abhay_Salunke@dell.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Cc: Markus Rechberger &lt;markus.rechberger@amd.com&gt;
Cc: Kay Sievers &lt;kay.sievers@vrfy.org&gt;
Cc: Bob Moore &lt;robert.moore@intel.com&gt;
Cc: Thomas Renninger &lt;trenn@suse.de&gt;
Cc: Len Brown &lt;lenb@kernel.org&gt;
Cc: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Cc: "Antonino A. Daplas" &lt;adaplas@pol.net&gt;
Cc: Krzysztof Helt &lt;krzysztof.h1@poczta.fm&gt;
Cc: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Cc: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Cc: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Cc: Peter Oberparleiter &lt;peter.oberparleiter@de.ibm.com&gt;
Cc: Michael Holzheu &lt;holzheu@de.ibm.com&gt;
Cc: Brian King &lt;brking@us.ibm.com&gt;
Cc: James E.J. Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
Cc: Andrew Vasquez &lt;linux-driver@qlogic.com&gt;
Cc: Seokmann Ju &lt;seokmann.ju@qlogic.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>vfs: splice remove_suid() cleanup</title>
<updated>2008-05-07T07:29:00+00:00</updated>
<author>
<name>Miklos Szeredi</name>
<email>mszeredi@suse.cz</email>
</author>
<published>2008-05-07T07:22:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=7f3d4ee108c184ab215036051087aaaaa8de7661'/>
<id>urn:sha1:7f3d4ee108c184ab215036051087aaaaa8de7661</id>
<content type='text'>
generic_file_splice_write() duplicates remove_suid() just because it
doesn't hold i_mutex.  But it grabs i_mutex inside splice_from_pipe()
anyway, so this is rather pointless.

Move locking to generic_file_splice_write() and call remove_suid() and
__splice_from_pipe() instead.

Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>[PATCH] kill -&gt;put_inode</title>
<updated>2008-05-06T17:45:34+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2008-04-29T15:46:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=33dcdac2df54e66c447ae03f58c95c7251aa5649'/>
<id>urn:sha1:33dcdac2df54e66c447ae03f58c95c7251aa5649</id>
<content type='text'>
And with that last patch to affs killing the last put_inode instance we
can finally, after many years of transition kill this racy and awkward
interface.

(It's kinda funny that even the description in
Documentation/filesystems/vfs.txt was entirely wrong..)

Also remove a very misleading comment above the defintion of
struct super_operations.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>make vfs_ioctl() static</title>
<updated>2008-04-29T15:06:00+00:00</updated>
<author>
<name>Adrian Bunk</name>
<email>bunk@kernel.org</email>
</author>
<published>2008-04-29T07:58:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=67cde595374dd0e4e4a537dbf9dff70fd3d7bd7b'/>
<id>urn:sha1:67cde595374dd0e4e4a537dbf9dff70fd3d7bd7b</id>
<content type='text'>
Make the needlessly global vfs_ioctl() static.

Signed-off-by: Adrian Bunk &lt;bunk@kernel.org&gt;
Acked-by: Christoph Hellwig &lt;hch@infradead.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>make __put_super() static</title>
<updated>2008-04-29T15:06:00+00:00</updated>
<author>
<name>Adrian Bunk</name>
<email>bunk@kernel.org</email>
</author>
<published>2008-04-29T07:58:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=6b09ae66922ca198e5830c0a4d74400a507a9170'/>
<id>urn:sha1:6b09ae66922ca198e5830c0a4d74400a507a9170</id>
<content type='text'>
Make the needlessly global __put_super() static.

Signed-off-by: Adrian Bunk &lt;bunk@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>xip: support non-struct page backed memory</title>
<updated>2008-04-28T15:58:23+00:00</updated>
<author>
<name>Nick Piggin</name>
<email>npiggin@suse.de</email>
</author>
<published>2008-04-28T09:13:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=70688e4dd1647f0ceb502bbd5964fa344c5eb411'/>
<id>urn:sha1:70688e4dd1647f0ceb502bbd5964fa344c5eb411</id>
<content type='text'>
Convert XIP to support non-struct page backed memory, using VM_MIXEDMAP for
the user mappings.

This requires the get_xip_page API to be changed to an address based one.
Improve the API layering a little bit too, while we're here.

This is required in order to support XIP filesystems on memory that isn't
backed with struct page (but memory with struct page is still supported too).

Signed-off-by: Nick Piggin &lt;npiggin@suse.de&gt;
Acked-by: Carsten Otte &lt;cotte@de.ibm.com&gt;
Cc: Jared Hulbert &lt;jaredeh@gmail.com&gt;
Cc: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Cc: Heiko Carstens &lt;heiko.carstens@de.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>return pfn from direct_access, for XIP</title>
<updated>2008-04-28T15:58:23+00:00</updated>
<author>
<name>Jared Hulbert</name>
<email>jaredeh@gmail.com</email>
</author>
<published>2008-04-28T09:13:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=30afcb4bd2762fa4b87b17ada9500aa46dc10b1b'/>
<id>urn:sha1:30afcb4bd2762fa4b87b17ada9500aa46dc10b1b</id>
<content type='text'>
Alter the block device -&gt;direct_access() API to work with the new
get_xip_mem() API (that requires both kaddr and pfn are returned).

Some architectures will not do the right thing in their virt_to_page() for use
by XIP (to translate from the kernel virtual address returned by
direct_access(), to a user mappable pfn in XIP's page fault handler.

However, we can't switch it to just return the pfn and not the kaddr, because
we have no good way to get a kva from a pfn, and XIP requires the kva for its
read(2) and write(2) handlers.  So we have to return both.

Signed-off-by: Jared Hulbert &lt;jaredeh@gmail.com&gt;
Signed-off-by: Nick Piggin &lt;npiggin@suse.de&gt;
Cc: Carsten Otte &lt;cotte@de.ibm.com&gt;
Cc: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Cc: linux-mm@kvack.org
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>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6</title>
<updated>2008-04-26T02:05:55+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2008-04-26T02:05:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=bc84e0a160e383deb56568f4e03bc51b1ce16775'/>
<id>urn:sha1:bc84e0a160e383deb56568f4e03bc51b1ce16775</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
  [PATCH] sanitize locate_fd()
  [PATCH] sanitize unshare_files/reset_files_struct
  [PATCH] sanitize handling of shared descriptor tables in failing execve()
  [PATCH] close race in unshare_files()
  [PATCH] restore sane -&gt;umount_begin() API
  cifs: timeout dfs automounts +little fix.
</content>
</entry>
</feed>
