Li Zefan 2a0f7f5769 Btrfs: fix recursive auto-defrag
Follow those steps:

  # mount -o autodefrag /dev/sda7 /mnt
  # dd if=/dev/urandom of=/mnt/tmp bs=200K count=1
  # sync
  # dd if=/dev/urandom of=/mnt/tmp bs=8K count=1 conv=notrunc

and then it'll go into a loop: writeback -> defrag -> writeback ...

It's because writeback writes [8K, 200K] and then writes [0, 8K].

I tried to make writeback know if the pages are dirtied by defrag,
but the patch was a bit intrusive. Here I simply set writeback_index
when we defrag a file.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2011-10-10 15:43:34 -04:00
..
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-10-10 15:43:34 -04:00
2011-03-31 11:26:23 -03:00
2011-05-19 16:55:28 +09:30
2011-03-10 08:52:07 +01:00
2011-07-17 23:20:29 -04:00
2011-06-06 09:51:52 -04:00
2011-06-03 18:24:58 -04:00
2011-06-20 17:53:24 -05:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-06-03 18:24:58 -04:00
2011-01-07 17:50:26 +11:00
2011-03-10 08:52:07 +01:00
2011-04-14 16:06:56 -07:00
2011-07-17 23:21:35 -04:00
2011-07-06 12:15:16 -07:00
2010-10-29 04:16:28 -04:00
2011-03-31 11:26:23 -03:00
2011-03-21 00:16:08 -04:00
2011-07-06 10:41:13 -07:00
2011-05-26 10:01:43 -06:00
2011-03-21 01:10:41 -04:00
2011-01-07 17:50:33 +11:00
2011-05-23 19:58:53 +02:00
2011-03-14 09:15:28 -04:00
2011-06-03 18:24:58 -04:00