On Fri, Apr 01, 2016 at 08:09:56PM +0800, Qu Wenruo wrote: > > > 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'm working on it. -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
