rpms/kernel/F-13 fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch, 1.1, 1.2
Kyle McMartin
kyle at fedoraproject.org
Sun May 9 19:49:33 UTC 2010
- Previous message: rpms/kernel/F-13 fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch, NONE, 1.1 kernel.spec, 1.2022, 1.2023
- Next message: rpms/bigloo/F-12 .cvsignore, 1.17, 1.18 bigloo.spec, 1.36, 1.37 sources, 1.18, 1.19
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: kyle
Update of /cvs/pkgs/rpms/kernel/F-13
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv4270
Modified Files:
fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch
Log Message:
use the correct patch..
fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch:
fs/fs-writeback.c | 48 +++++++++++++++++++++++++++++++++-----------
fs/sync.c | 3 +-
include/linux/backing-dev.h | 2 -
include/linux/writeback.h | 10 +++++++++
mm/page-writeback.c | 2 -
5 files changed, 51 insertions(+), 14 deletions(-)
Index: fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-13/fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch 9 May 2010 18:43:23 -0000 1.1
+++ fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch 9 May 2010 19:49:33 -0000 1.2
@@ -1,8 +1,8 @@
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
-index 4b37f7c..c9ac9cb 100644
+index 1a7c42c..92c6708 100644
--- a/fs/fs-writeback.c
+++ b/fs/fs-writeback.c
-@@ -45,6 +45,7 @@ struct wb_writeback_args {
+@@ -44,6 +44,7 @@ struct wb_writeback_args {
int for_kupdate:1;
int range_cyclic:1;
int for_background:1;
@@ -10,7 +10,7 @@ index 4b37f7c..c9ac9cb 100644
};
/*
-@@ -230,6 +231,11 @@ static void bdi_sync_writeback(struct backing_dev_info *bdi,
+@@ -229,6 +230,11 @@ static void bdi_sync_writeback(struct backing_dev_info *bdi,
.sync_mode = WB_SYNC_ALL,
.nr_pages = LONG_MAX,
.range_cyclic = 0,
@@ -22,7 +22,7 @@ index 4b37f7c..c9ac9cb 100644
};
struct bdi_work work;
-@@ -245,21 +251,23 @@ static void bdi_sync_writeback(struct backing_dev_info *bdi,
+@@ -244,21 +250,23 @@ static void bdi_sync_writeback(struct backing_dev_info *bdi,
* @bdi: the backing device to write from
* @sb: write inodes from this super_block
* @nr_pages: the number of pages to write
@@ -48,16 +48,16 @@ index 4b37f7c..c9ac9cb 100644
};
/*
-@@ -577,7 +585,7 @@ static enum sb_pin_state pin_sb_for_writeback(struct writeback_control *wbc,
+@@ -585,7 +593,7 @@ static int pin_sb_for_writeback(struct writeback_control *wbc,
/*
* Caller must already hold the ref for this
*/
- if (wbc->sync_mode == WB_SYNC_ALL) {
+ if (wbc->sync_mode == WB_SYNC_ALL || wbc->sb_pinned) {
WARN_ON(!rwsem_is_locked(&sb->s_umount));
- return SB_NOT_PINNED;
+ return 0;
}
-@@ -751,6 +759,7 @@ static long wb_writeback(struct bdi_writeback *wb,
+@@ -733,6 +741,7 @@ static long wb_writeback(struct bdi_writeback *wb,
.for_kupdate = args->for_kupdate,
.for_background = args->for_background,
.range_cyclic = args->range_cyclic,
@@ -65,7 +65,7 @@ index 4b37f7c..c9ac9cb 100644
};
unsigned long oldest_jif;
long wrote = 0;
-@@ -1183,6 +1192,18 @@ static void wait_sb_inodes(struct super_block *sb)
+@@ -1165,6 +1174,18 @@ static void wait_sb_inodes(struct super_block *sb)
iput(old_inode);
}
@@ -84,7 +84,7 @@ index 4b37f7c..c9ac9cb 100644
/**
* writeback_inodes_sb - writeback dirty inodes from given super_block
* @sb: the superblock
-@@ -1194,18 +1215,23 @@ static void wait_sb_inodes(struct super_block *sb)
+@@ -1176,18 +1197,23 @@ static void wait_sb_inodes(struct super_block *sb)
*/
void writeback_inodes_sb(struct super_block *sb)
{
@@ -117,25 +117,30 @@ index 4b37f7c..c9ac9cb 100644
* @sb: the superblock
*
diff --git a/fs/sync.c b/fs/sync.c
-index 92b2281..de6a441 100644
+index 418727a..234bcff 100644
--- a/fs/sync.c
+++ b/fs/sync.c
-@@ -42,7 +42,7 @@ static int __sync_filesystem(struct super_block *sb, int wait)
- if (wait)
- sync_inodes_sb(sb);
- else
+@@ -37,11 +37,12 @@ static int __sync_filesystem(struct super_block *sb, int wait)
+ /* Avoid doing twice syncing and cache pruning for quota sync */
+ if (!wait) {
+ writeout_quota_sb(sb, -1);
- writeback_inodes_sb(sb);
+ writeback_inodes_sb_locked(sb);
-
+ } else {
+ sync_quota_sb(sb, -1);
+ sync_inodes_sb(sb);
+ }
++
if (sb->s_op->sync_fs)
sb->s_op->sync_fs(sb, wait);
+ return __sync_blockdev(sb->s_bdev, wait);
diff --git a/include/linux/backing-dev.h b/include/linux/backing-dev.h
-index bd0e3c6..90e677a 100644
+index fcbc26a..a249798 100644
--- a/include/linux/backing-dev.h
+++ b/include/linux/backing-dev.h
-@@ -103,7 +103,7 @@ int bdi_register_dev(struct backing_dev_info *bdi, dev_t dev);
+@@ -102,7 +102,7 @@ int bdi_register(struct backing_dev_info *bdi, struct device *parent,
+ int bdi_register_dev(struct backing_dev_info *bdi, dev_t dev);
void bdi_unregister(struct backing_dev_info *bdi);
- int bdi_setup_and_register(struct backing_dev_info *, char *, unsigned int);
void bdi_start_writeback(struct backing_dev_info *bdi, struct super_block *sb,
- long nr_pages);
+ long nr_pages, int sb_locked);
@@ -143,10 +148,10 @@ index bd0e3c6..90e677a 100644
int bdi_has_dirty_io(struct backing_dev_info *bdi);
diff --git a/include/linux/writeback.h b/include/linux/writeback.h
-index 36520de..3790165 100644
+index 76e8903..05e64d2 100644
--- a/include/linux/writeback.h
+++ b/include/linux/writeback.h
-@@ -65,6 +65,15 @@ struct writeback_control {
+@@ -62,6 +62,15 @@ struct writeback_control {
* so we use a single control to update them
*/
unsigned no_nrwrite_index_update:1;
@@ -162,7 +167,7 @@ index 36520de..3790165 100644
};
/*
-@@ -73,6 +82,7 @@ struct writeback_control {
+@@ -70,6 +79,7 @@ struct writeback_control {
struct bdi_writeback;
int inode_wait(void *);
void writeback_inodes_sb(struct super_block *);
- Previous message: rpms/kernel/F-13 fs-explicitly-pass-in-whether-sb-is-pinned-or-not.patch, NONE, 1.1 kernel.spec, 1.2022, 1.2023
- Next message: rpms/bigloo/F-12 .cvsignore, 1.17, 1.18 bigloo.spec, 1.36, 1.37 sources, 1.18, 1.19
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list