On 11.03.2013 15:15, Wang Shilong wrote: > > <snip> > >>> The worst thing is that i don't think users can master this magic >>> concept very well. >> >> Normally users don't need very sophisticated scenarios. In fact, they >> don't even need higher level quota groups, the basic tracking is >> enough. In this case, everything just works as expected for the user. >> If you start creating and assigning qgroups manually, prepare to handle >> the complexity. >> > Considering this case: > > a subvolume related to a user, we limit the space by limiting every subvolume > qgroup, but we also want to limit the total space all the users can use. So > we create > a parent qgroup(1/1 for example) and assign all subvolume group to this > parent group. > > The above case is regularly used i think, What's more, many snapshots may be > done. > So i think what i am concerning is not a corner case..
So you just missed to assign the new subvolume to 1/1 by using -i on snapshot creation. -Arne > > Thanks, > Wang >> >>> >>>> >>>>> If so, i think it really confusing and too complex for users to do >>>>> such work, is't it?... >>>> >>>> It is complex. That is why I always point anyone asking to do some work >>>> on btrfs or qgroups to writing an enhanced interface to simplify this >>>> task for the user. I don't think the kernel should handle this. >>>> And that's why I took the effort to write a pdf to explain the >>>> concepts :) >>> >>> I don't have any good ideas about this yet.. >>> >>>> But the current interface is not only complex, it also is very powerful. >>>> You can solve problems with it that no other quota system I know of can >>>> solve. >>>> >>>>> >>>>> BTW, i have a question about the function btrfs_qgroup_inherit(), >>>>> when copying exclusive value from src_qgroup to dst_qgroup: >>>>> >>>>> dst_qgroup->exclusive = src_qgroup->exclusive + level_size >>>>> >>>>> while copying referenced value from src_qgroup to dot_qgroup: >>>>> >>>>> dst_qgroup->referenced = src_qgroup->referenced -level_size >>>>> >>>>> I can't really figure out...~_~ >>>> >>>> level_size is just a small correction for the space the tree root >>>> occupies. The tree root is never shared between sub volumes. >>> >>> O.K. I got it.. >>> >>> Thanks, >>> Wang >>> >>>> >>>> -Arne >>>> >>>>> >>>>> Thanks, >>>>> Wang >>>> >>> >> > -- 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