]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge remote-tracking branch 'writeback/writeback-for-next'
authorStephen Rothwell <sfr@canb.auug.org.au>
Mon, 7 Nov 2011 02:06:06 +0000 (13:06 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Mon, 7 Nov 2011 02:06:06 +0000 (13:06 +1100)
1  2 
fs/buffer.c
fs/ext4/inode.c
fs/quota/quota.c
include/linux/sched.h
kernel/fork.c
mm/backing-dev.c
mm/page-writeback.c
mm/vmscan.c

diff --cc fs/buffer.c
Simple merge
diff --cc fs/ext4/inode.c
Simple merge
Simple merge
Simple merge
diff --cc kernel/fork.c
Simple merge
Simple merge
index 793e9874de51f39f1a1b4a2e86c974a671b6574d,b4ac4b23fc418881c5e4c559c7dc88279d41d619..7b784c73b5d874a24d91c37e2ba2d48fec029aff
@@@ -260,54 -250,8 +250,10 @@@ static void bdi_writeout_fraction(struc
                                numerator, denominator);
  }
  
- static inline void task_dirties_fraction(struct task_struct *tsk,
-               long *numerator, long *denominator)
- {
-       prop_fraction_single(&vm_dirties, &tsk->dirties,
-                               numerator, denominator);
- }
- /*
-  * task_dirty_limit - scale down dirty throttling threshold for one task
-  *
-  * task specific dirty limit:
-  *
-  *   dirty -= (dirty/8) * p_{t}
-  *
-  * To protect light/slow dirtying tasks from heavier/fast ones, we start
-  * throttling individual tasks before reaching the bdi dirty limit.
-  * Relatively low thresholds will be allocated to heavy dirtiers. So when
-  * dirty pages grow large, heavy dirtiers will be throttled first, which will
-  * effectively curb the growth of dirty pages. Light dirtiers with high enough
-  * dirty threshold may never get throttled.
-  */
- #define TASK_LIMIT_FRACTION 8
- static unsigned long task_dirty_limit(struct task_struct *tsk,
-                                      unsigned long bdi_dirty)
- {
-       long numerator, denominator;
-       unsigned long dirty = bdi_dirty;
-       u64 inv = dirty / TASK_LIMIT_FRACTION;
-       task_dirties_fraction(tsk, &numerator, &denominator);
-       inv *= numerator;
-       do_div(inv, denominator);
-       dirty -= inv;
-       return max(dirty, bdi_dirty/2);
- }
- /* Minimum limit for any task */
- static unsigned long task_min_dirty_limit(unsigned long bdi_dirty)
- {
-       return bdi_dirty - bdi_dirty / TASK_LIMIT_FRACTION;
- }
  /*
 - *
 + * bdi_min_ratio keeps the sum of the minimum dirty shares of all
 + * registered backing devices, which, for obvious reasons, can not
 + * exceed 100%.
   */
  static unsigned int bdi_min_ratio;
  
diff --cc mm/vmscan.c
Simple merge