On Thu 15-08-19 00:51:24, Al Viro wrote: > On Thu, Aug 15, 2019 at 12:39:46AM +0100, Al Viro wrote: > > > 1) introduction of EXPORT_SYMBOL_GPL garbage > > > 2) aforementioned garbage on something that doesn't need to be exported > > > 3) *way* too easily abused - get_super() is, at least, not tempting to > > > play with in random code. This one is, and it's too low-level to > > > allow. > > > > ... and this is a crap userland API. > > > > *IF* you want mountpoint-based variants of quotactl() commands, by all means, > > add those. Do not overload the old ones. And for path-based you don't > > need to mess with superblock references - just keep the struct path until > > the end. That will keep the superblock alive and active just fine. > > To clarify: I suggest something like #define Q_PATH 0x400000 > with users passing something like QCMD(Q_QUOTAON | Q_PATH, ...) instead > of QCMD(Q_QUOTAON, ...) to get a path-based behaviour. Yeah, this sounds like a good plan to me. If Sasha plans on using userspace quota-tools for handling ubifs, some work will be needed there as well but it's doable. Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR