Re: [PATCH] FS-Cache: print hexadecimal value for special cookies type

From: JÃrÃmy Lefaure
Date: Thu Apr 27 2017 - 11:11:46 EST


On Thu, 27 Apr 2017 16:03:45 +0100
David Howells <dhowells@xxxxxxxxxx> wrote:

> JÃrÃmy Lefaure <jeremy.lefaure@xxxxxxxxxxxx> wrote:
>
> > When building object-list.o, gcc 6 raises a warning on the sprintf call
> > in fscache_objlist_show:
> >
> > CC fs/fscache/object-list.o
> > fs/fscache/object-list.c: In function âfscache_objlist_showâ:
> > fs/fscache/object-list.c:265:19: warning: âsprintfâ may write a
> > terminating nul past the end of the destination [-Wformat-overflow=]
> > sprintf(_type, "%02u", cookie->def->type);
> > ^~~~~~
> > fs/fscache/object-list.c:265:4: note: âsprintfâ output between 3 and 4
> > bytes into a destination of size 3
> > sprintf(_type, "%02u", cookie->def->type);
> > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > Moreover, the documentation says that we should have an hex value for
> > special cookies (see Documentation/filesystems/caching/fscache.txt).
> >
> > Printing hexadecimal value for special cookies fixes the overflow
> > warning and complies with the documentation.
>
> Fine by me. We don't actually handle special type cookies at the moment, so
> you're not going to see anything other than DT or IX for now anyway.
>
> I'll push this in the next merge window if that's okay with you.
>
Did you see the v2 of my patch (in which I keep the decimal value but
fix the buffer size) ? If special type cookies aren't handled, I guess
that this v1 is better, isn't it ?