This was held up a little trying to track down a use-after-free in btrfsraid5/6. It's not clear yet if this is just made easier to trigger withthis pull or if its a new bug from the raid5/6 cleanups. Dave Sterba isthe only one to trigger it so far, but he has a consistent way toreproduce, so we'll get it nailed shortly.

This pull is mostly cleanups and fixes.

The raid5/6 cleanups from Zhao Lei fixup some long standing warts in thecode and add improvements on top of the scrubbing support from 3.19.

Josef has round one of our ENOSPC fixes coming from large btrfs clustershere at FB.

Dave Sterba continues a long series of cleanups (thanks Dave), andFilipe continues hammering on corner cases in fsync and others.

Josef Bacik (5) commits (+177/-147): Btrfs: only adjust outstanding_extents when we do a short write (+6/-5) Btrfs: don't set and clear delalloc for O_DIRECT writes (+2/-6) Btrfs: track dirty block groups on their own list (+72/-124) Btrfs: account for large extents with enospc (+76/-7) Btrfs: change how we track dirty roots (+21/-5)