mirror of https://gitee.com/openkylin/linux.git
bcache: bch_writeback_thread() is not freezable
bch_writeback_thread() is calling try_to_freeze(), but that's just an expensive no-op given the fact that the thread is not marked freezable. I/O helper kthreads, exactly such as the bcache writeback thread, actually shouldn't be freezable, because they are potentially necessary for finalizing the image write-out. Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Jens Axboe <axboe@fb.com>
This commit is contained in:
parent
ba36c21b0c
commit
7c87df9c15
|
@ -12,7 +12,6 @@
|
||||||
#include "writeback.h"
|
#include "writeback.h"
|
||||||
|
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
#include <linux/freezer.h>
|
|
||||||
#include <linux/kthread.h>
|
#include <linux/kthread.h>
|
||||||
#include <trace/events/bcache.h>
|
#include <trace/events/bcache.h>
|
||||||
|
|
||||||
|
@ -228,7 +227,6 @@ static void read_dirty(struct cached_dev *dc)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
while (!kthread_should_stop()) {
|
while (!kthread_should_stop()) {
|
||||||
try_to_freeze();
|
|
||||||
|
|
||||||
w = bch_keybuf_next(&dc->writeback_keys);
|
w = bch_keybuf_next(&dc->writeback_keys);
|
||||||
if (!w)
|
if (!w)
|
||||||
|
@ -433,7 +431,6 @@ static int bch_writeback_thread(void *arg)
|
||||||
if (kthread_should_stop())
|
if (kthread_should_stop())
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
try_to_freeze();
|
|
||||||
schedule();
|
schedule();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue