On Fri, Nov 02, 2018 at 10:31:55PM +0900, Tetsuo Handa wrote: > get_printk_buffer() tries to assign a "struct printk_buffer" from > statically preallocated array. get_printk_buffer() returns NULL if > all "struct printk_buffer" are in use, but the caller does not need to > check for NULL. This seems like a great way of wasting 16kB of memory. Since you've already made printk_buffered() work with a NULL initial argument, what's the advantage over just doing kmalloc(1024, GFP_ATOMIC)?