mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
writeback: get rid of generic_sync_sb_inodes() export
This adds two new exported functions: - writeback_inodes_sb(), which only attempts to writeback dirty inodes on this super_block, for WB_SYNC_NONE writeout. - sync_inodes_sb(), which writes out all dirty inodes on this super_block and also waits for the IO to complete. Acked-by: Jan Kara <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
This commit is contained in:
parent
0d03d59d9b
commit
d8a8559cd7
7 changed files with 58 additions and 68 deletions
|
|
@ -65,26 +65,14 @@
|
|||
static int shrink_liability(struct ubifs_info *c, int nr_to_write)
|
||||
{
|
||||
int nr_written;
|
||||
struct writeback_control wbc = {
|
||||
.sync_mode = WB_SYNC_NONE,
|
||||
.range_end = LLONG_MAX,
|
||||
.nr_to_write = nr_to_write,
|
||||
};
|
||||
|
||||
generic_sync_sb_inodes(c->vfs_sb, &wbc);
|
||||
nr_written = nr_to_write - wbc.nr_to_write;
|
||||
|
||||
nr_written = writeback_inodes_sb(c->vfs_sb);
|
||||
if (!nr_written) {
|
||||
/*
|
||||
* Re-try again but wait on pages/inodes which are being
|
||||
* written-back concurrently (e.g., by pdflush).
|
||||
*/
|
||||
memset(&wbc, 0, sizeof(struct writeback_control));
|
||||
wbc.sync_mode = WB_SYNC_ALL;
|
||||
wbc.range_end = LLONG_MAX;
|
||||
wbc.nr_to_write = nr_to_write;
|
||||
generic_sync_sb_inodes(c->vfs_sb, &wbc);
|
||||
nr_written = nr_to_write - wbc.nr_to_write;
|
||||
nr_written = sync_inodes_sb(c->vfs_sb);
|
||||
}
|
||||
|
||||
dbg_budg("%d pages were written back", nr_written);
|
||||
|
|
|
|||
|
|
@ -438,12 +438,6 @@ static int ubifs_sync_fs(struct super_block *sb, int wait)
|
|||
{
|
||||
int i, err;
|
||||
struct ubifs_info *c = sb->s_fs_info;
|
||||
struct writeback_control wbc = {
|
||||
.sync_mode = WB_SYNC_ALL,
|
||||
.range_start = 0,
|
||||
.range_end = LLONG_MAX,
|
||||
.nr_to_write = LONG_MAX,
|
||||
};
|
||||
|
||||
/*
|
||||
* Zero @wait is just an advisory thing to help the file system shove
|
||||
|
|
@ -462,7 +456,7 @@ static int ubifs_sync_fs(struct super_block *sb, int wait)
|
|||
* the user be able to get more accurate results of 'statfs()' after
|
||||
* they synchronize the file system.
|
||||
*/
|
||||
generic_sync_sb_inodes(sb, &wbc);
|
||||
sync_inodes_sb(sb);
|
||||
|
||||
/*
|
||||
* Synchronize write buffers, because 'ubifs_run_commit()' does not
|
||||
|
|
|
|||
Loading…
Reference in a new issue