On Wed, 2021-02-10 at 13:51 +0100, Petr Mladek wrote: > On Wed 2021-02-10 00:21:37, Yafang Shao wrote: > > On Tue, Feb 9, 2021 at 9:53 PM Petr Mladek <pmla...@suse.com> wrote: [] > > for (p = pff; p < pff + ARRAY_SIZE(pff); p++) { > > This looks a bit non-standard. IMHO, Joe was not against using index. > He proposed: > > for (i = 0; i < ARRAY_SIZE(pfl) && buf < end; i++) { > > , see > https://lore.kernel.org/lkml/e5ea9e8b1190c2a397a1b84dd55bb9c706dc7058.ca...@perches.com/ > > I am not sure about the (buf < end) check. It might be some > optimization or it did fit the the old code.
I believe the buf < end bit was broken anyway. I believe vsprintf is supposed to return the maximum possible length of the output and the function should not restrict that. The function should not write beyond the specified end. > Anyway, I like the currently used: > > for (i = 0; i < ARRAY_SIZE(pff); i++) { > > It is standard, easy to understand, and thus more safe. I am sure that > compiler will optimize it very well. true.