On Tue, Mar 8, 2016 at 12:40 PM, Rasmus Villemoes <li...@rasmusvillemoes.dk> wrote: > Doing snprintf(buf, len, "%s...", buf, ...) for appending to a buffer > currently works, but it is somewhat fragile, and any other overlap > between source and destination buffers would be a definite bug. This > is an attempt at eliminating the relatively few occurences of this > pattern in the kernel. > > I could use another set of eyes on all of these. The drm/amdkfd patch > is unfortunately rather large, but I couldn't find a better way to do > this.
Best alternative would be to have the macros just use side-effects to bump "ret" without passing it in, etc, but that's ugly/fragile, so I'd agree: what you have is best. Consider all the changes: Reviewed-by: Kees Cook <keesc...@chromium.org> -Kees > > Rasmus Villemoes (7): > drm/amdkfd: avoid fragile and inefficient snprintf use > Input: joystick - avoid fragile snprintf use > leds: avoid fragile sprintf use > drivers/media/pci/zoran: avoid fragile snprintf use > wlcore: avoid fragile snprintf use > [media] ati_remote: avoid fragile snprintf use > USB: usbatm: avoid fragile and inefficient snprintf use > > drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 168 > +++++++++++++++--------------- > drivers/input/joystick/analog.c | 8 +- > drivers/leds/led-class-flash.c | 3 +- > drivers/media/pci/zoran/videocodec.c | 5 +- > drivers/media/rc/ati_remote.c | 11 +- > drivers/net/wireless/ti/wlcore/boot.c | 12 ++- > drivers/usb/atm/usbatm.c | 11 +- > 7 files changed, 110 insertions(+), 108 deletions(-) > > -- > 2.1.4 > -- Kees Cook Chrome OS & Brillo Security