Re: [PATCH] makedumpfile: printk: add support for lockless ringbuffer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2020-11-19, HAGIO KAZUHITO(萩尾 一仁)	<k-hagio-ab@xxxxxxx> wrote:
> From: John Ogness <john.ogness@xxxxxxxxxxxxx>
>
> Linux 5.10 introduces a new lockless ringbuffer.  The new ringbuffer
> is structured completely different to the previous iterations.
> Add support for retrieving the ringbuffer from debug information
> and/or using vmcoreinfo.  The new ringbuffer is detected based on
> the availability of the "prb" symbol.
>
> Signed-off-by: John Ogness <john.ogness@xxxxxxxxxxxxx>
> Signed-off-by: Kazuhito Hagio <k-hagio-ab@xxxxxxx>
> ---
> I've updated John's RFC makedumpfile patch to match 5.10-rc4 kernel.
> Changes from the RFC patch:
> - followed the following kernel commit
>     cfe2790b163a ("printk: move printk_info into separate array")
> - divided members of struct printk_log in offset_table into each structure
>   for readability
> - added some error handlings
> - also dump head record that was missed

I confirm that these changes are correct. Thanks for updating this,
adding the needed error handling, and catching that the head record was
missed!

I tested this by:

1. Boot kernel with: crashkernel=512M

2. Setup and trigger crash:

   kexec -p /boot/bzImage --initrd=/boot/rescue-initrd --append="console=ttyS0,115200"
   echo c > /proc/sysrq-trigger

3. From rescue environment, copy crashed vmcore to external machine:

   cp /proc/vmcore /remote/nfs/mount/

4. From external machine, extract kernel log using vmcoreinfo:

   makedumpfile -g ./vmcoreinfo -x ./vmlinux
   makedumpfile --dump-dmesg -i ./vmcoreinfo ./vmcore dmesg1.txt

5. From external machine, extract kernel log using debug symbols:

   makedumpfile --dump-dmesg -x ./vmlinux ./vmcore dmesg2.txt

6. Compare and inspect the kernel logs:

   diff dmesg1.txt dmesg2.txt
   cat dmesg1.txt

John Ogness

_______________________________________________
kexec mailing list
kexec@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/kexec




[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux