On Wed, Dec 14, 2016 at 11:26:07AM -0800, Christoph Hellwig wrote: > On Wed, Dec 14, 2016 at 10:38:45AM -0800, Darrick J. Wong wrote: > > > > +struct fake_btrfs_ioctl_same_args { > > > > + struct btrfs_ioctl_same_args args; > > > > + struct btrfs_ioctl_same_extent_info info; > > > > +}; > > > > > > Why does this need a fake structure here? > > > > In order to test the ioctl we have to fill out at least one > > btrfs_ioctl_same_extent_info so that we get far enough into the fs-specific > > dedupe_range handler that we've verified that the fs is capable of dedupe and > > that the fs is willing to try to satisfy the request. > > Oh, got it, it's just the fake that tripped me up. > > > We could just malloc sizeof(_same_args) + sizeof(_same_extent_info)... > > Either that, or more simply just don't give the structure a name > by just declaring it locally on the stack: > > struct { > struct btrfs_ioctl_same_args args; > struct btrfs_ioctl_same_extent_info info; > } sa = { 0 }; Fair enough, no need to pollute the namespace. --D > > -- > To unsubscribe from this list: send the line "unsubscribe linux-xfs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html