|
@@ -92,14 +92,14 @@ int vm_dirty_ratio = 20;
|
|
unsigned long vm_dirty_bytes;
|
|
unsigned long vm_dirty_bytes;
|
|
|
|
|
|
/*
|
|
/*
|
|
- * The interval between `kupdate'-style writebacks, in jiffies
|
|
|
|
|
|
+ * The interval between `kupdate'-style writebacks
|
|
*/
|
|
*/
|
|
-int dirty_writeback_interval = 5 * HZ;
|
|
|
|
|
|
+unsigned int dirty_writeback_interval = 5 * 100; /* sentiseconds */
|
|
|
|
|
|
/*
|
|
/*
|
|
- * The longest number of jiffies for which data is allowed to remain dirty
|
|
|
|
|
|
+ * The longest time for which data is allowed to remain dirty
|
|
*/
|
|
*/
|
|
-int dirty_expire_interval = 30 * HZ;
|
|
|
|
|
|
+unsigned int dirty_expire_interval = 30 * 100; /* sentiseconds */
|
|
|
|
|
|
/*
|
|
/*
|
|
* Flag that makes the machine dump writes/reads and block dirtyings.
|
|
* Flag that makes the machine dump writes/reads and block dirtyings.
|
|
@@ -770,9 +770,9 @@ static void wb_kupdate(unsigned long arg)
|
|
|
|
|
|
sync_supers();
|
|
sync_supers();
|
|
|
|
|
|
- oldest_jif = jiffies - dirty_expire_interval;
|
|
|
|
|
|
+ oldest_jif = jiffies - msecs_to_jiffies(dirty_expire_interval);
|
|
start_jif = jiffies;
|
|
start_jif = jiffies;
|
|
- next_jif = start_jif + dirty_writeback_interval;
|
|
|
|
|
|
+ next_jif = start_jif + msecs_to_jiffies(dirty_writeback_interval * 10);
|
|
nr_to_write = global_page_state(NR_FILE_DIRTY) +
|
|
nr_to_write = global_page_state(NR_FILE_DIRTY) +
|
|
global_page_state(NR_UNSTABLE_NFS) +
|
|
global_page_state(NR_UNSTABLE_NFS) +
|
|
(inodes_stat.nr_inodes - inodes_stat.nr_unused);
|
|
(inodes_stat.nr_inodes - inodes_stat.nr_unused);
|
|
@@ -801,9 +801,10 @@ static void wb_kupdate(unsigned long arg)
|
|
int dirty_writeback_centisecs_handler(ctl_table *table, int write,
|
|
int dirty_writeback_centisecs_handler(ctl_table *table, int write,
|
|
struct file *file, void __user *buffer, size_t *length, loff_t *ppos)
|
|
struct file *file, void __user *buffer, size_t *length, loff_t *ppos)
|
|
{
|
|
{
|
|
- proc_dointvec_userhz_jiffies(table, write, file, buffer, length, ppos);
|
|
|
|
|
|
+ proc_dointvec(table, write, file, buffer, length, ppos);
|
|
if (dirty_writeback_interval)
|
|
if (dirty_writeback_interval)
|
|
- mod_timer(&wb_timer, jiffies + dirty_writeback_interval);
|
|
|
|
|
|
+ mod_timer(&wb_timer, jiffies +
|
|
|
|
+ msecs_to_jiffies(dirty_writeback_interval * 10));
|
|
else
|
|
else
|
|
del_timer(&wb_timer);
|
|
del_timer(&wb_timer);
|
|
return 0;
|
|
return 0;
|
|
@@ -905,7 +906,8 @@ void __init page_writeback_init(void)
|
|
{
|
|
{
|
|
int shift;
|
|
int shift;
|
|
|
|
|
|
- mod_timer(&wb_timer, jiffies + dirty_writeback_interval);
|
|
|
|
|
|
+ mod_timer(&wb_timer,
|
|
|
|
+ jiffies + msecs_to_jiffies(dirty_writeback_interval * 10));
|
|
writeback_set_ratelimit();
|
|
writeback_set_ratelimit();
|
|
register_cpu_notifier(&ratelimit_nb);
|
|
register_cpu_notifier(&ratelimit_nb);
|
|
|
|
|