<feed xmlns='http://www.w3.org/2005/Atom'>
<title>talos-obmc-linux/mm/backing-dev.c, branch v2.6.33-rc5</title>
<subtitle>Talos™ II Linux sources for OpenBMC</subtitle>
<id>https://git.raptorcs.com/git/talos-obmc-linux/atom?h=v2.6.33-rc5</id>
<link rel='self' href='https://git.raptorcs.com/git/talos-obmc-linux/atom?h=v2.6.33-rc5'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/'/>
<updated>2009-12-03T12:49:43+00:00</updated>
<entry>
<title>flusher: Fix PF_FROZEN race</title>
<updated>2009-12-03T12:49:43+00:00</updated>
<author>
<name>OGAWA Hirofumi</name>
<email>hirofumi@mail.parknet.co.jp</email>
</author>
<published>2009-12-03T12:49:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=bf7ec5bb6114b2f086e536e24486fdacd1c0d339'/>
<id>urn:sha1:bf7ec5bb6114b2f086e536e24486fdacd1c0d339</id>
<content type='text'>
To touch task-&gt;flags directly is racy. thaw_process() still has race
(changing non_current-&gt;flags, but this is another issue) though, I think
it's much better off.

So, use thaw_process() instead.

Signed-off-by: OGAWA Hirofumi &lt;hirofumi@mail.parknet.co.jp&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>Thaw refrigerated bdi flusher threads before invoking kthread_stop on them</title>
<updated>2009-11-12T12:08:11+00:00</updated>
<author>
<name>Romit Dasgupta</name>
<email>romit@ti.com</email>
</author>
<published>2009-11-12T12:08:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=c62b17a58ab5e97534ff6487241addd5fcc606de'/>
<id>urn:sha1:c62b17a58ab5e97534ff6487241addd5fcc606de</id>
<content type='text'>
Unfreezes the bdi flusher task when the said task needs to exit.

Steps to reproduce this.
1) Mount a file system from MMC/SD card.
2) Unmount the file system. This creates a flusher task.
3) Attempt suspend to RAM. System is unresponsive.

This is because the bdi flusher thread is already in the refrigerator and will
remain so until it is thawed. The MMC driver suspend routine call stack will
ultimately issue a 'kthread_stop' on the bdi flusher thread and will block
until the flusher thread is exited. Since the bdi flusher thread is in the
refrigerator it never cleans up until thawed.

Signed-off-by: Romit Dasgupta &lt;romit@ti.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>backing-dev: bdi sb prune should be in the unregister path, not destroy</title>
<updated>2009-11-03T19:18:44+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2009-11-03T19:18:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=8c4db3355b0fcc9ad77431f15b955efa0645b5d0'/>
<id>urn:sha1:8c4db3355b0fcc9ad77431f15b955efa0645b5d0</id>
<content type='text'>
Commit 592b09a42fc3ae6737a0f3ecf4fee42ecd0296f8 was different from
the tested path, in that it moved the bdi super_block prune from
unregister to destroy context. This doesn't fully fix the sync hang
bug on unexpected device removal, as need to prune the bdi cache
pointer before killing flusher thread.

Tested-by: Artur Skawina &lt;art.08.09@gmail.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>backing-dev: ensure that a removed bdi no longer has super_block referencing it</title>
<updated>2009-10-29T10:46:12+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2009-10-29T10:46:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=592b09a42fc3ae6737a0f3ecf4fee42ecd0296f8'/>
<id>urn:sha1:592b09a42fc3ae6737a0f3ecf4fee42ecd0296f8</id>
<content type='text'>
When the bdi is being removed, we have to ensure that no super_blocks
currently have that cached in sb-&gt;s_bdi. Normally this is ensured by
the sb having a longer life span than the bdi, but if the device is
suddenly yanked, we have to kill this reference. sb-&gt;s_bdi is pointed
to freed memory at that point.

This fixes a problem with sync(1) hanging when a USB stick is pulled
without cleanly umounting it first.

Reported-by: Pavel Machek &lt;pavel@ucw.cz&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>writeback: kill space in debugfs item name</title>
<updated>2009-10-09T11:01:27+00:00</updated>
<author>
<name>Wu Fengguang</name>
<email>fengguang.wu@intel.com</email>
</author>
<published>2009-10-09T11:01:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=961515f613f26b7958c56c5c71061a8231e02be7'/>
<id>urn:sha1:961515f613f26b7958c56c5c71061a8231e02be7</id>
<content type='text'>
The space is not script friendly, kill it.

Signed-off-by: Wu Fengguang &lt;fengguang.wu@intel.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>writeback: splice dirty inode entries to default bdi on bdi_destroy()</title>
<updated>2009-09-16T13:18:52+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2009-09-14T10:57:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=ce5f8e7795195edb6f84f74aa9d72e739df38486'/>
<id>urn:sha1:ce5f8e7795195edb6f84f74aa9d72e739df38486</id>
<content type='text'>
We cannot safely ensure that the inodes are all gone at this point
in time, and we must not destroy this bdi with inodes having off it.
So just splice our entries to the default bdi since that one will
always persist.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>writeback: use RCU to protect bdi_list</title>
<updated>2009-09-16T13:18:51+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2009-09-14T11:12:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=cfc4ba5365449cb6b5c9f68d755a142f17da1e47'/>
<id>urn:sha1:cfc4ba5365449cb6b5c9f68d755a142f17da1e47</id>
<content type='text'>
Now that bdi_writeback_all() no longer handles integrity writeback,
it doesn't have to block anymore. This means that we can switch
bdi_list reader side protection to RCU.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>writeback: check for registered bdi in flusher add and inode dirty</title>
<updated>2009-09-11T07:20:26+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2009-09-09T07:10:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=500b067c5e6ceea49cf280a02597b1169320e08c'/>
<id>urn:sha1:500b067c5e6ceea49cf280a02597b1169320e08c</id>
<content type='text'>
Also a debugging aid. We want to catch dirty inodes being added to
backing devices that don't do writeback.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>writeback: add name to backing_dev_info</title>
<updated>2009-09-11T07:20:26+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2009-06-12T12:45:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=d993831fa7ffeb89e994f046f93eeb09ec91df08'/>
<id>urn:sha1:d993831fa7ffeb89e994f046f93eeb09ec91df08</id>
<content type='text'>
This enables us to track who does what and print info. Its main use
is catching dirty inodes on the default_backing_dev_info, so we can
fix that up.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>writeback: add some debug inode list counters to bdi stats</title>
<updated>2009-09-11T07:20:26+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2009-05-25T07:08:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=f09b00d3e789a88fa6c7c03cedc62cb65c1de0cb'/>
<id>urn:sha1:f09b00d3e789a88fa6c7c03cedc62cb65c1de0cb</id>
<content type='text'>
Add some debug entries to be able to inspect the internal state of
the writeback details.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
</feed>
