3 Replies Latest reply on Mar 27, 2015 5:25 PM by Unn

    Edison boot log (dmesg and friends)


      I am working with the Edison module with yocto linux and need some help getting the boot messages from the beginning of kernel boot. I created a custom yocto image which includes verbose debugging for the MMC driver (I am working with my own SD device, so I need to see exactly what that driver is doing), so the problem is that the circular buffer fills up very fast with messages from the eMMC memory used as non-volatile memory in the Edison compute module. (Note, I am adding verbosity to the MMC driver so mmc0 (the 4 GB storage) is flooding the buffer with commands and responses, which pushes out all the mmc1 (my device) messages that I need to understand whats going on with it)


      I have tried increasing the buffer size by setting CONFIG_LOG_BUF_SHIFT=22 (was 18 I think) as part of the kernel configuration in my image but that doesnt seem to be enough (it doesnt seem to help at all which is kinda weird).


      Anyone know how to/where to get a boot log with the level of detail I need or possibly print all of the messages that would go into the dmesg buffer to the console during boot (it doesnt do that now for some reason even though my /proc/sys/kernel/printk is 4 7 1 7)?




      Edit: After looking through some of the menu config, it seems 22+ are invalid numbers for the CONFIG_LOG_BUF_SHIFT, but even setting it to 21 isnt enough (slash, is there a way to confirm the buffer length?)

        • 1. Re: Edison boot log (dmesg and friends)

          Hi Unn


          Do you have different results after changing printk, or is it always the same?

          Have you tried with /etc/kmsg?




          • 2. Re: Edison boot log (dmesg and friends)



            What do you mean by same results? (Note, Im not sure I was 100% clear; these arent my print messages; they are the print messages resulting from turning CONFIG_MMC_DEBUG=y in the kernel config)


            Also, I dont have a /etc/kmsg file in my build for some reason, is there something I have to do to get that file (aside from messing with a few kernel configs like those mentioned above, this is a pretty vanilla yocto build out of bitbake)?

            • 3. Re: Edison boot log (dmesg and friends)

              So, I "fixed" this issue by replacing all the pr_debug messages with pr_info instead, after setting the kernel command line to have loglevel 7 instead of loglevel 4. Once I remade the image with my modifications (just a find and replace across all the files in the mmc driver), I was able to have all the debug messages print to Putty whose buffer I made REALLY big