On Mon, Aug 07, 2023 at 06:09:54PM +0300, Andy Shevchenko wrote: > On Mon, Aug 07, 2023 at 05:03:19PM +0200, Petr Mladek wrote: > > On Sat 2023-08-05 20:50:26, Andy Shevchenko wrote: ... > > I agree that kernel.h is not the right place. But are there any > > numbers how much separate sprintf.h might safe? > > Maybe, we should not reinvent the wheel and get inspired by > > userspace. > > > > sprintf() and friends are basic functions which most people know > > from userspace. And it is pretty handy that the kernel variants > > are are mostly compatible as well. > > > > IMHO, it might be handful when they are also included similar way > > as in userspace. From my POV printk.h is like stdio.h. And we already > > have include/linux/stdarg.h where the v*print*() function might > > fit nicely. > > > > How does this sound, please? > > Not every user (especially _header_) wants to have printk.h included just for > sprintf.h that may have nothing to do with real output. So, same reasoning > from me as keeping that in kernel.h, i.e. printk.h no better. (haven't check these, just to show how many _headers_ uses sprintf() call) $ git grep -lw s.*printf -- include/linux/ include/linux/acpi.h include/linux/audit.h include/linux/btf.h include/linux/dev_printk.h include/linux/device-mapper.h include/linux/efi.h include/linux/fortify-string.h include/linux/fs.h include/linux/gameport.h include/linux/kdb.h include/linux/kdev_t.h include/linux/kernel.h include/linux/mmiotrace.h include/linux/netlink.h include/linux/pci-p2pdma.h include/linux/perf_event.h include/linux/printk.h include/linux/seq_buf.h include/linux/seq_file.h include/linux/shrinker.h include/linux/string.h include/linux/sunrpc/svc_xprt.h include/linux/tnum.h include/linux/trace_seq.h include/linux/usb.h include/linux/usb/gadget_configfs.h -- With Best Regards, Andy Shevchenko