AnsweredAssumed Answered

qman_init_fq() fail when use kexec in ls1046

Question asked by 若钦 郑 on Feb 21, 2018
Latest reply on Mar 5, 2018 by 若钦 郑

Hi All:
I want to run kexec on ls1046a.


I have used kexec-tools v2.0.15 to start a new kernel, my boot log is in attachment. The kernel version is 4.9.35 (lsdk1709).


What I did is like this.

1. First, I boot the kernel in uboot with a itb file which includes Image and dtb. 
Well, In my first boot, it works well. 
uboot command:
=>setenv serverip; setenv ipaddr; tftp a0000000 ....../kernel-32le.itb
=>setenv bootargs "root=/dev/mmcblk0p3 rw ip= earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200";bootm a0000000#ls1046a-rdb


2. After the first kernel booted, I use kexec to boot the new kernel with dtb file, the kernel is failed to init qman_fq, the error is qman_init_fq(259) = -5 and NIC can't work when the second kernel booted.


qman_init_fq() action is be processed in dpaa_eth driver probe action, related kernel config is FSL_SDK_DPAA_ETH.

When I disable FSL_SDK_DPAA_ETH, the kernel can boot without error, but the eth net can't work, as the dpaa_eth is the eth driver, so the NIC can't work without it.


[ 1.375878] fsl_dpa soc:fsl,dpaa:ethernet@0: of_find_device_by_node(/soc/fman
@1a00000/ethernet@e0000) failed
[ 1.385719] fsl_dpa: probe of soc:fsl,dpaa:ethernet@0 failed with error -22
[ 1.392756] fsl_dpa soc:fsl,dpaa:ethernet@1: of_find_device_by_node(/soc/fman
@1a00000/ethernet@e2000) failed
[ 1.402595] fsl_dpa: probe of soc:fsl,dpaa:ethernet@1 failed with error -22
[ 1.410425] fsl_dpa soc:fsl,dpaa:ethernet@2: qman_init_fq(259) = -5
[ 1.416954] CRGID 0x1 is being used by FQID 0x104, CGR will be leaked
[ 1.423646] CRGID 0x0 is being used by FQID 0x105, CGR will be leaked
[ 1.430306] fsl_dpa: probe of soc:fsl,dpaa:ethernet@2 failed with error -5
[ 1.437389] BUG: Bad page state in process swapper/0 pfn:af7cc
[ 1.443305] page:cb09f8b0 count:-2 mapcount:0 mapping: (null) index:0x0
[ 1.450006] flags: 0x0()



Can anyone give me some help about this problem?