some weird problem about the poweroff, halt

Dear Sir,

Environment : Jetpack 3.3
U-boot/Kernel : tegra-l4t-r28.2.1

There’re two weird question while we validate the halt/poweroff of Jetson TX2 with the EVB
(some kind validate about power on/off, booting stable reference).

  1. halt
    We have validate the ‘halt’ function/shell command’s correct that only type halt without any parameter,
    it will show those message that seems like kernel panic about 2 mins after ‘reboot: System halted’, then reset Jetson TX2 automatically.
    That seems not correct about ‘halt’ behavior, how should I fixed that.
[   54.462372] reboot: System halted
[   16..09270] Bad modee in Synchronous Abort handler detected, code 0x86000005 -- IABT (current EL)

[  166.909275] Internal error: Oops - bad mode: 0 [#1] PREEMPT SMP
 0x86000005 -- IABT (current EL)
[  166.909294] Modules linked in: fuse ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4[  166.909297] CPU: 0 PID: 1 Comm: systemd-shutdow Not tainted 4.4.[  166.909298] Hardware name: quill (DT)
d-shutdow Not tainted 4.4.38-tegra #1
table_nat nf_nat_ipv4 xt_addrtype iptable_filter ip_tables xt_conntrack nf_nat br_netfilter overlay bcmdhd pci_tegra bluedroid_pm
[  166.909300] task: ffffffc1ece38000 ti: ffffffc1ecdcc000 task.ti: ffffffc1ecd[  166.909302] PC is at 0x0
1ece38000 ti:[  166.909308] LR is at machine_halt+0x14/0x18
fc1ecdcc000 task.ti: ffffffc1ecdcc000
[  166.909309] pc : [<000000[  166.909310] sp : ffffffc1ecdcfd60
0>] lr : [[  166.909312] x29: ffffffc1ecdcfd60 x28: ffffffc1ecdcc000
619c>] pstate: 600000c5
[  166.909314] x27: ffffffc000b84000 [  166.909316] x25: 000000000000011d x24: 0000000000000015
[  166.909318] x23: 002e6d6574737973 x22: ffffffc001294f50
[  166.909320] x21: ffffffc001294000 x20: 0000000000000000
[  166.909321] x19: ffffffffcdef0123 x18: 0000007fc1ad3a38
[  166.909323] x17: 0000007f9bf06cc8 x16: ffffffc000b88a60
[  166.909325] x15: ffffffc000b88a60 x14: 0000000000000008
[  166.909326] x13: ffffffc1eb834b20 x12: 0000000000000001
[  166.909328] x11: 00000000ffffffff x10: 0000000000aaaaaa
[  166.909330] x9 : 00000000000003e7 x8 : 0000000000000000
[  166.909331] x7 : ffffffc1ecdcc000 x6 : ffffffc001299738
[  166.909333] x5 : ffffffffffffffc0 x4 : 0000000000000000
[  166.909334] x3 : 0000000000000000 x2 : 00000000000057d9
[  166.909336] x1 : 0000000000000000 x0 : 0000000000000000
[  166.909336]
1 : 0000000000000000 x0 : 0000000000000000
[  166.909338] Process systemd-shutdow (pid: 1, stack limit [  166.909339] C[  166.909340] [<          (null)>]           (null)
 limit = 0xffffffc1ecdcc020)
[  166.909344] [<ffffffc000[  166.909346] [<ffffffc0000c48f4>] SyS_reboot+0x18c/[  166.909349] [<ffffffc000084ff0>] el0_svc_naked+0x24/0x2[  166.909351] Internal error: Oops - bad mode: 0 [#2] PREE[  166.909360] Modules linked in: fuse ipt_MASQUERADE nf_nat[  166.909362] CPU: 5 PID: 0 Comm: swapper/5 Tainted: G      D     [  166.909363] Hardware name: quill (DT)
r/5 Tainted: G      D         4.4.38-tegra #1
t nf_nat_ipv4 xt_addrtype iptable_filter ip_tables xt_conntrack nf_nat br_netfilter overlay bcmdhd pci_tegra bluedroid_pm
[  166.909364] task: ffffffc1ece83e80 ti: ffffffc1ecea0000 task.ti: ffffffc1ecea0000
1
[  166.909365] PC is at 0x0
1ece83e80 ti:[  166.909369] LR is at handle_IPI+0x15c/0x30c
fc1ecea0000 task.ti: ffffffc1ecea0000
[  166.909371] pc : [<000000[  166.909371] sp : ffffffc1ecea3d30
0>] lr : [[  166.909374] x29: ffffffc1ecea3d30 x28: ffffffc1ecea0000
f2c4>] pstate: 200001c5
[  166.909376] x27: ffffffc000b87f00 [  166.909378] x25: ffffffc000f7ede8 x24: ffffffc1ecea3dc0
[  166.909379] x23: 0000000000000000 x22: ffffffc001251000
[  166.909381] x21: 0000000000000005 x20: ffffffc00140c818
[  166.909383] x19: 0000000000000002 x18: 0000000000000a03
[  166.909384] x17: ffffffc000b88a60 x16: ffffffc000b88a60
[  166.909386] x15: ffffffc000b88a60 x14: 0000000000000001
[  166.909388] x13: 000000000000a570 x12: 00006bf17a3dc800
[  166.909389] x11: 0000000000000000 x10: 00000000000008b0
[  166.909391] x9 : 00000000ffff1031 x8 : ffffffc1ece84790
[  166.909392] x7 : 0000000000000000 x6 : 0000000000003ce4
[  166.909394] x5 : 0000000079c02a2d x4 : 0000000000000001
[  166.909395] x3 : 0000000000000020 x2 : 0000000000000009
[  166.909397] x1 : ffffffc0012809c8 x0 : 0000000000000000
[  166.909397]
1 : ffffffc0012809c8 x0 : 0000000000000000
[  166.909399] Process swapper/5 (pid: 0, stack limit = 0xff[  166.909399] C[  166.909400] [<          (null)>]           (null)
 = 0xffffffc1ecea0020)
[  166.909403] [<ffffffc000[  166.909405] [<ffffffc000084740>] el1_irq+0x80/0xf8[  166.909410] [<ffffffc000820d20>] cpuidle_enter+0x18/0x20

[  166.909412] [<ffffffc0000e8354>] call_cpuidle+0x28/[  166.909414] [<ffffffc0000e84f8>] cpu_startup_entry+0x17c/[  166.909416] [<ffffffc00008ee44>] secondary_start_kernel+[  166.909418] [<0000000080081acc>] 0x80081acc
tart_kernel+0x12c/0[  166.909668] ---[ end trace 71c0802cca8346ec ]---
kernel+0x12c/0x164
[  166.910715] ---[ end trace 71c0802cca8346ed [  166.910852] Kernel panic - not syncing: Fatal exc[[  167.301902] Internal error: Oops - bad mode: 0 [#3] PREEMPT SMP
[[  167.307889] Rebooting in 5 seconds...ad mode: 0 [#3] PREEMPT SMP
rupt
[  167.307892] Modules linked in: fuse ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 xt_addrtype iptable_filter ip_tables xt_conntrack nf_nat br_netfilter overlay bcmdhd pci_tegra bluedroid_pm
[  167.332883] CPU: 3 PID: 0 Comm: swapper/3 Tainted: G      D         4.4.38-tegra #1
[  167.340525] Hardware name: quill (DT)
[  167.344180] task: ffffffc1ece82580 ti: ffffffc1ece98000 task.ti: ffffffc1ece98000
[  167.351648] PC is at 0x0
[  167.354178] LR is at handle_IPI+0x15c/0x30c
[  167.358352] pc : [<0000000000000000>] lr : [<ffffffc00008f2c4>] pstate: 200001c5
[  167.365733] sp : ffffffc1ece9bd30
[  167.369039] x29: ffffffc1ece9bd30 x28: ffffffc1ece98000
[  167.374360] x27: ffffffc000b87f00 x26: 0000000ca98a6e40
[  167.379682] x25: ffffffc000f7ede8 x24: ffffffc1ece9bdc0
[  167.385003] x23: 0000000000000000 x22: ffffffc001251000
[  167.390323] x21: 0000000000000003 x20: ffffffc00140c818
[  167.395646] x19: 0000000000000002 x18: 0000007fc1ad3a38
[  167.400966] x17: ffffffc000b88a60 x16: ffffffc000b88a60
[  167.406286] x15: 00000000eac0c6e6 x14: 0000000000000000
[  167.411607] x13: 00000000eac0c6e6 x12: 0000000000000000
[  167.416927] x11: 0000000000000400 x10: 00000000000008b0
[  167.422246] x9 : 00000000ffff1025 x8 : ffffffc1ece82e90
[  167.427565] x7 : 0000000000000000 x6 : 0000000000003ce4
[  167.432885] x5 : 0000000079c02a2d x4 : 0000000000000001
[  167.438205] x3 : 0000000000000008 x2 : 0000000000000001
[  167.443525] x1 : ffffffc0012809c8 x0 : 0000000000000000
[  167.448844]
[  167.450331] Process swapper/3 (pid: 0, stack limit = 0xffffffc1ece98020)
[  167.457018] Call trace:
[  167.459458] [<          (null)>]           (null)
[  167.464155] [<ffffffc0000817b4>] gic_handle_irq+0x9c/0xb4
[  167.469544] [<ffffffc000084740>] el1_irq+0x80/0xf8
[  167.474326] [<ffffffc000820d20>] cpuidle_enter+0x18/0x20
[  167.479628] [<ffffffc0000e8354>] call_cpuidle+0x28/0x50
[  167.484843] [<ffffffc0000e84f8>] cpu_startup_entry+0x17c/0x340
[  167.490664] [<ffffffc00008ee44>] secondary_start_kernel+0x12c/0x164
[  167.496920] [<0000000080081acc>] 0x80081acc
[  [  167.501257] ---[ end trace 71c0802cca8346ee ]---
 PREEMPT SMP
[  167.507174] Modules linked in: fuse ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 xt_addrtype iptable_filter ip_tables xt_conntrack nf_nat br_netfilter overlay bcmdhd pci_tegra bluedroid_pm
[  167.525566] CPU: 4 PID: 0 Comm: swapper/4 Tainted: G      D         4.4.38-tegra #1
[  167.533208] Hardware name: quill (DT)
[  167.536862] task: ffffffc1ece83200 ti: ffffffc1ece9c000 task.ti: ffffffc1ece9c000
[  167.544329] PC is at 0x0
[  167.546857] LR is at handle_IPI+0x15c/0x30c
[  167.551032] pc : [<0000000000000000>] lr : [<ffffffc00008f2c4>] pstate: 200001c5
[  167.558412] sp : ffffffc1ece9fd30
[  167.561718] x29: ffffffc1ece9fd30 x28: ffffffc1ece9c000
[  167.567041] x27: ffffffc000b87f00 x26: 0000000caa62cb80
[  167.572361] x25: ffffffc000f7ede8 x24: ffffffc1ece9fdc0
[  167.577683] x23: 0000000000000000 x22: ffffffc001251000
[  167.583001] x21: 0000000000000004 x20: ffffffc00140c818
[  167.588323] x19: 0000000000000002 x18: 0000007fc1ad3a38
[  167.593646] x17: ffffffc000b88a60 x16: ffffffc000b88a60
[  167.598966] x15: 00000000f5257d14 x14: 000000000000dd12
[  167.604286] x13: 00000000f5257d14 x12: 0000000000000000
[  167.609605] x11: 0000000000000400 x10: 00000000000008b0
[  167.614926] x9 : 00000000ffff1027 x8 : ffffffc1ece83b10
[  167.620246] x7 : 0000000cab08cdc0 x6 : 0000000000003ce4
[  167.625567] x5 : 0000000079c02a2d x4 : 0000000000000001
[  167.630886] x3 : 0000000000000010 x2 : 0000000000000029
[  167.636206] x1 : ffffffc0012809c8 x0 : 0000000000000000
[  167.641526]
[  167.643014] Process swapper/4 (pid: 0, stack limit = 0xffffffc1ece9c020)
[  167.649701] Call trace:
[  167.652142] [<          (null)>]           (null)
[  167.656839] [<ffffffc0000817b4>] gic_handle_irq+0x9c/0xb4
[  167.662226] [<ffffffc000084740>] el1_irq+0x80/0xf8
[  167.667008] [<ffffffc000820d20>] cpuidle_enter+0x18/0x20
[  167.672308] [<ffffffc0000e8354>] call_cpuidle+0x28/0x50
[  167.677522] [<ffffffc0000e84f8>] cpu_startup_entry+0x17c/0x340
[  167.683343] [<ffffffc00008ee44>] secondary_start_kernel+0x12c/0x164
[  167.689598] [<0000000080081acc>] 0x80081acc
[  167.693841] ---[ end trace 71c0802cca8346ef ]---
  1. poweroff and rtc/wakealarm
    We also validate the time what ‘poweroff’ need,
    It seems not stable/fixed about the ‘poweroff’ time that Jetson Tx2 need,
    Sometime it will shutdown within 0.5 min, but sometime it will cost more than 1.5 min.

Is that possible any unvisible error while function close/umount that cause system pending??
Is that possible to figured out??
Many Thanks.

Best Regards,
MOMO Chen

Hi momo_chen

  1. Could you share the command you are using?

  2. Could you also try if rel-32.2.1 resolves this issue?

Dear WayneWWW,

there’re the command below show,

  1. halt
$ sudo halt
  1. poweroff and rtc/wakealarm(use the marco of TeraTerm v4.88 for auto-run)
i=1
while i<2001
sprintf2 msg 'loop %d' i
settitle msg

wait '~$'
pause 1
sendln 'sudo -s'
wait 'nvidia:'
pause 1
sendln 'nvidia'
wait '~#'
pause 1
sendln 'dmesg | grep "mmcblk0: mmc" >> /home/nvidia/mmc.log'
wait '~#'
pause 1
sendln 'echo 0 > /sys/class/rtc/rtc0/wakealarm'
wait '~#'
pause 1
sendln 'echo `expr $(date +%s) + 30` > /sys/class/rtc/rtc0/wakealarm'
wait '~#'
pause 1
sendln 'poweroff
i=i+1
endwhile

I will try that rel-32.2.1 ASAP. Many Thanks

Best Regards,
MOMO Chen

Dear WayneWWW,

About the rel-32.2.1 that I need to confirm with you, Is that means the tegra-l4t-r32.2.1 which download by source_sync.sh of Jetpack-3.3?

If above is right, those version seems not all be r32.2.1 in nvidia’s git web.
ex: there is only tegra-l4t-r28.3.1 in the nvidia’s git web(link as below show which fetch from source_sync.sh)
http://nv-tegra.nvidia.com/gitweb/?p=linux-4.4.git

Best Regards,
MOMO Chen

Hi,

  1. Why do you have to download the source code? I think you could directly use sdkmanager to flas the board to rel-32.2.1.

  2. Because rel-32.x all move to k4.9 branch, the correct git link should be http://nv-tegra.nvidia.com/gitweb/?p=linux-4.9.git

I can reproduce the halt problem on my side. Will look into this.

Dear WayneWWW,

That’s great, our EVB’s micro usb port was broken so that I can’t update Jetson-TX2 for now…
I will consult how to repair with my colleague or supplier.

Many Thanks for that.

Best Regards,
MOMO Chen

Hi momo,

I think the issue that you cannot halt the device is due to the WDT (watchdog timer) which reboot the device.

Could you try to flash the board with ODMDATA=0x1080000 and see if it can resolve? It works on my side.

Dear WayneWWW,

It doesn’t work so far, that is my flash command under Jetpack_3.3/64_TX2/Linux_for_Tegra
$ sudo ./flash.sh ODMDATA=0x1080000 jetson-tx2 mmcblk0p1

Best Regards,
MOMO Chen

NO… that is not what I mean.

Please go to p2771-0000.conf.common and modify the ODMDATA. If it is working, you should see the odmdata is the value you set during flash procedure.

Dear WayneWWW,

Got it, I thought that might add in script’s argument since I saw the ODMDATA seems also be used in flash.sh…
As you say, there’re few message about ODMDATA while flash.
[ 0.3896 ] Updating Odmdata
[ 0.3903 ] tegrabct_v2 --brbct br_bct_BR.bct --chip 0x18 --updatefields Odmdata =0x1080000"
And It seems work now, many thanks.

Best Regards,
MOMO Chen