On 04/01/2016 07:39 PM, David Sterba wrote:
On Fri, Apr 01, 2016 at 04:50:06PM +0800, Qu Wenruo wrote:
After another look, why don't we use nodesize directly? Or stripesize
where applies. With max_size == 0 the test does not make sense, we ought
to know the alignment.

Yes, my first though is also to use nodesize directly, which should be
always correct.

But the problem is, the related function call stack doesn't have any
member to reach btrfs_root or btrfs_fs_info.

In the very beginning version of such crossing stripe check, I used to
add a btrfs_root/btrfs_fs_info parameter to the function.

But the code change are too many, so I use 'max_size'.

I can try to re-do such modification, but IIRC it didn't cause a good
result.

Yes it would require refactoring, which would be good on itself, because
add_extent_rec takes 12(!) parameters. Some of its callers would need to
be updated, but it seems doable.

I'll try to refactor.
I though current extent-tree rework would change all these mess, but considering the case of btrfs-convert, I'd better refactor current code other than waiting other reviewers to appear.

Thanks,
Qu

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to