Até onde eu sei, klogd usa um read() de bloqueio para ler /proc/kmsg . Pode ajudar se você aumentar sua prioridade via renice. Você também pode tentar gravar os logs do kernel em um ramfs / tmpfs para economizar alguma sobrecarga de disco, seja por meio de syslog ou com a opção klogd -f para gravar diretamente em um arquivo.
Caso contrário, o plano B é ftrace e trace_printk() : link