On Mon, Nov 11, 2019 at 12:05:59PM +0100, Jan Kara wrote: > On Mon 11-11-19 11:08:07, Sascha Hauer wrote: > > On Fri, Nov 01, 2019 at 05:07:06PM +0100, Jan Kara wrote: > > > On Wed 30-10-19 16:26:56, Sascha Hauer wrote: > > > > This patch introduces the Q_PATH flag to the quotactl cmd argument. > > > > When given, the path given in the special argument to quotactl will > > > > be the mount path where the filesystem is mounted, instead of a path > > > > to the block device. > > > > This is necessary for filesystems which do not have a block device as > > > > backing store. Particularly this is done for upcoming UBIFS support. > > > > > > > > Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> > > > > > > Thanks for the patch! Some smaller comments below... > > > > > > > --- > > > > fs/quota/quota.c | 37 ++++++++++++++++++++++++++++--------- > > > > include/uapi/linux/quota.h | 1 + > > > > 2 files changed, 29 insertions(+), 9 deletions(-) > > > > > > > > - if (!quotactl_cmd_onoff(cmds)) > > > > - drop_super(sb); > > > > - else > > > > - drop_super_exclusive(sb); > > > > + if (!q_path) { > > > > + if (!quotactl_cmd_onoff(cmds)) > > > > + drop_super(sb); > > > > + else > > > > + drop_super_exclusive(sb); > > > > + } > > > > out: > > > > + if (q_path) > > > > + path_put(&qpath); > > > > +out1: > > > > > > Why do you need out1? If you leave 'out' as is, things should just work. > > > And you can also combine the above if like: > > > > See above where out1 is used. In this case qpath is not valid and I > > cannot call path_put() on it. > > Right. But you also don't need to do path_put(&qpath) in case > quotactl_block() failed. So you can just jump to out1 there as well and > then 'out' is unused... Ah, I see. Ok, will do this. Sascha -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |