Btrfs: always pin metadata in discard mode
authorChris Mason <chris.mason@oracle.com>
Wed, 14 Oct 2009 13:38:28 +0000 (09:38 -0400)
committerChris Mason <chris.mason@oracle.com>
Wed, 14 Oct 2009 14:32:50 +0000 (10:32 -0400)
commit444528b3e614f7f2391488d9bca8e0b872db909b
tree5326be87610ed3fc7a14d0f28e96e5e22207cf5f
parent0634857488ec6e28fa22920cd0bee3c2ac07ccfd
Btrfs: always pin metadata in discard mode

We have an optimization in btrfs to allow blocks to be
immediately freed if they were allocated in this transaction and never
written.  Otherwise they are pinned and freed when the transaction
commits.

This isn't optimal for discard mode because immediately freeing
them means immediately discarding them.  It is better to give the
block to the pinning code and letting the (slow) discard happen later.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
fs/btrfs/extent-tree.c