On Wed 2021-02-17 15:50:00, Andy Shevchenko wrote: > On Wed, Feb 17, 2021 at 01:15:43PM +0100, Enrico Weigelt, metux IT consult wrote: > > Under rare circumstances it may happen that a device node's name is NULL > > (most likely kernel bug in some other place). > > What circumstances? How can I reproduce this? More information, please! > > > In such situations anything > > but helpful, if the debug printout crashes, and nobody knows what actually > > happened here. > > > > Therefore protect it by an explicit NULL check and print out an extra > > warning. > > ... > > > + pr_warn("device_node without name. Kernel bug ?\n"); > > If it's not once, then it's possible to have log spammed with this, right? > > ... > > > + p = "<NULL>"; > > We have different standard de facto for NULL pointers to be printed. Actually > if you wish, you may gather them under one definition (maybe somewhere under > printk) and export to everybody to use. Please, use if (check_pointer(&buf, end, p, spec)) return buf; It will print "(null)" instead of the name. It should be enough to inform the user this way. The extra pr_warn() does not help much to localize the problem anyway. And it is better to avoid recursion in this path. Best Regards, Petr