> -----Original Message----- > From: Justin He > Sent: Friday, June 25, 2021 5:33 PM > To: Al Viro <viro@xxxxxxxxxxxxxxxxxx>; Linus Torvalds <torvalds@linux- > foundation.org> > Cc: Petr Mladek <pmladek@xxxxxxxx>; Steven Rostedt <rostedt@xxxxxxxxxxx>; > Sergey Senozhatsky <senozhatsky@xxxxxxxxxxxx>; Andy Shevchenko > <andriy.shevchenko@xxxxxxxxxxxxxxx>; Rasmus Villemoes > <linux@xxxxxxxxxxxxxxxxxx>; Jonathan Corbet <corbet@xxxxxxx>; Heiko > Carstens <hca@xxxxxxxxxxxxx>; Vasily Gorbik <gor@xxxxxxxxxxxxx>; Christian > Borntraeger <borntraeger@xxxxxxxxxx>; Eric W . Biederman > <ebiederm@xxxxxxxxxxxx>; Darrick J. Wong <darrick.wong@xxxxxxxxxx>; Peter > Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>; Ira Weiny <ira.weiny@xxxxxxxxx>; > Eric Biggers <ebiggers@xxxxxxxxxx>; Ahmed S. Darwish > <a.darwish@xxxxxxxxxxxxx>; open list:DOCUMENTATION <linux- > doc@xxxxxxxxxxxxxxx>; Linux Kernel Mailing List <linux- > kernel@xxxxxxxxxxxxxxx>; linux-s390 <linux-s390@xxxxxxxxxxxxxxx>; linux- > fsdevel <linux-fsdevel@xxxxxxxxxxxxxxx> > Subject: RE: [PATCH 02/14] d_path: saner calling conventions for > __dentry_path() > > Hi Al > > > -----Original Message----- > > From: Al Viro <viro@xxxxxxxxxxxxxxxx> On Behalf Of Al Viro > > Sent: Wednesday, May 19, 2021 8:49 AM > > To: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> > > Cc: Justin He <Justin.He@xxxxxxx>; Petr Mladek <pmladek@xxxxxxxx>; Steven > > Rostedt <rostedt@xxxxxxxxxxx>; Sergey Senozhatsky > > <senozhatsky@xxxxxxxxxxxx>; Andy Shevchenko > > <andriy.shevchenko@xxxxxxxxxxxxxxx>; Rasmus Villemoes > > <linux@xxxxxxxxxxxxxxxxxx>; Jonathan Corbet <corbet@xxxxxxx>; Heiko > > Carstens <hca@xxxxxxxxxxxxx>; Vasily Gorbik <gor@xxxxxxxxxxxxx>; > Christian > > Borntraeger <borntraeger@xxxxxxxxxx>; Eric W . Biederman > > <ebiederm@xxxxxxxxxxxx>; Darrick J. Wong <darrick.wong@xxxxxxxxxx>; Peter > > Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>; Ira Weiny <ira.weiny@xxxxxxxxx>; > > Eric Biggers <ebiggers@xxxxxxxxxx>; Ahmed S. Darwish > > <a.darwish@xxxxxxxxxxxxx>; open list:DOCUMENTATION <linux- > > doc@xxxxxxxxxxxxxxx>; Linux Kernel Mailing List <linux- > > kernel@xxxxxxxxxxxxxxx>; linux-s390 <linux-s390@xxxxxxxxxxxxxxx>; linux- > > fsdevel <linux-fsdevel@xxxxxxxxxxxxxxx> > > Subject: [PATCH 02/14] d_path: saner calling conventions for > __dentry_path() > > > > 1) lift NUL-termination into the callers > > 2) pass pointer to the end of buffer instead of that to beginning. > > > > (1) allows to simplify dentry_path() - we don't need to play silly > > games with restoring the leading / of "//deleted" after __dentry_path() > > would've overwritten it with NUL. > > > > We also do not need to check if (either) prepend() in there fails - > > if the buffer is not large enough, we'll end with negative buflen > > after prepend() and __dentry_path() will return the right value > > (ERR_PTR(-ENAMETOOLONG)) just fine. > > > > Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx> > > --- > > fs/d_path.c | 33 +++++++++++++-------------------- > > 1 file changed, 13 insertions(+), 20 deletions(-) > > > > diff --git a/fs/d_path.c b/fs/d_path.c > > index 01df5dfa1f88..1a1cf05e7780 100644 > > --- a/fs/d_path.c > > +++ b/fs/d_path.c > > @@ -326,22 +326,21 @@ char *simple_dname(struct dentry *dentry, char > > *buffer, int buflen) > > /* > > * Write full pathname from the root of the filesystem into the buffer. > > */ > I suggest adding the comments to remind NUL terminator should be prepended > before invoking __dentry_path() > Except for my suggestion about adding comments Reviewed-by: Jia He <justin.he@xxxxxxx>