Enlarge Linux Kernel Log Buffer more that 2M
Asked Answered
M

1

12

I am in the process of collecting some sort of Linux Kernel activities. I have placed multiple printk statements with in the kernel source code and would like to monitor those during regular kernel activities. Unfortunately, I have realized that the Kernel Log Buffer size (CONFIG_LOG_BUF_SHIFT) cannot be more that 2^21 which is essentially equal to 2M entries.

Is there any other way to record more than 2M Kernel messages ?

Monagan answered 24/12, 2014 at 17:10 Comment(0)
A
17

You can set the kernel log buffer to log_buf_len=4M in your /boot/grub/grub.conf. This should increase the log buffer size to 4 MiB. Note you can also edit the grub during boot, and append the log_buf_len=4M at the end of the line starting with the kernel ....

CONFIG_LOG_BUF_SHIFT shows the default size of the kernel log buffer not the maximum size, you can set this to larger value but would require to recompile the kernel.

ex:
2 ^ 19 = 512 KiB
2 ^ 20 = 1 MiB
2 ^ 21 = 2 MiB
2 ^ 22 = 4 MiB

Which flavor or kernel version of Linux are you on, this works well on SuSE and RHEL.

Alephnull answered 25/12, 2014 at 4:52 Comment(2)
log_buf_len doesn't seems to exist anymore in grub.cfg. What's the alternative?Votaw
log_buf_len still existsRios

© 2022 - 2024 — McMap. All rights reserved.