xfs: rework xfs_alloc_vextent()