Exit-Status

atop 死亡,退出狀態為 53

  • June 20, 2019

我在跑步atop。它正在工作,但後來它以退出狀態 53 死亡。

$ atop
$ echo $?
53

這是一個錯誤atop嗎?還是我的系統出現故障?

先發製人的額外細節:-)

我檢查了核心日誌 ( dmesg)。我發現沒有什麼特別令人擔憂的,但有一些錯誤。見下文。

這台筆記型電腦已經可靠使用了幾個月了。核心沒有被“污染”,因此沒有核心 WARN 或 OOPS 消息。

$ cat /proc/sys/kernel/tainted
0
$ rpm -q atop
atop-2.3.0-10.fc28.x86_64

$ uname -r  # My kernel version
5.1.6-200.fc29.x86_64

dmesg提醒我,我最近將電腦從睡眠中喚醒,並atop在它進入睡眠之前啟動。

dmesg也發生顯示 USB 和 FAT 錯誤,因為在此期間我與連接不良的 USB 記憶棒失去了連接。

從掛起恢復期間有一些硬體消息。但在過去的幾個月裡,我沒有遇到任何使用者可見的睡眠/喚醒問題。

還有一些早期的dmesg錯誤。


[40654.082396] PM: suspend exit
[40654.205336] Bluetooth: hci0: Intel Bluetooth firmware file: intel/ibt-hw-37.8.10-fw-1.10.3.11.e.bseq
[40654.517627] Bluetooth: hci0: unexpected event for opcode 0xfc2f
[40654.534651] Bluetooth: hci0: Intel firmware patch completed and activated
[40655.519592] e1000e 0000:00:19.0 eno1: Detected Hardware Unit Hang:
                TDH                  <0>
                TDT                  <10>
                next_to_use          <10>
                next_to_clean        <0>
              buffer_info[next_to_clean]:
                time_stamp           <10267d16b>
                next_to_watch        <1>
                jiffies              <10267d740>
                next_to_watch.status <0>
              MAC Status             <80000>
              PHY Status             <7949>
              PHY 1000BASE-T Status  <0>
              PHY Extended Status    <3000>
              PCI Status             <10>
[40656.239991] Process accounting resumed
[40656.318355] e1000e: eno1 NIC Link is Down
...
[41013.654127] usb 2-2: USB disconnect, device number 43
[41013.901953] usb 2-2: new full-speed USB device number 46 using xhci_hcd
[41020.270316] FAT-fs (sdb4): Directory bread(block 22704) failed
[41020.270322] FAT-fs (sdb4): Directory bread(block 22705) failed
[41020.270325] FAT-fs (sdb4): Directory bread(block 22706) failed
[41020.270328] FAT-fs (sdb4): Directory bread(block 22707) failed
[41020.270331] FAT-fs (sdb4): Directory bread(block 22708) failed
[41020.270333] FAT-fs (sdb4): Directory bread(block 22709) failed
[41020.270336] FAT-fs (sdb4): Directory bread(block 22710) failed
[41020.270339] FAT-fs (sdb4): Directory bread(block 22711) failed
[41020.270354] FAT-fs (sdb4): Directory bread(block 22704) failed
[41020.270357] FAT-fs (sdb4): Directory bread(block 22705) failed
[41029.558085] usb 2-2: device descriptor read/64, error -110
[41029.780057] usb 2-2: device descriptor read/64, error -71
[41029.996102] usb 2-2: new full-speed USB device number 47 using xhci_hcd
[41030.110057] usb 2-2: device descriptor read/64, error -71
[41030.332052] usb 2-2: device descriptor read/64, error -71
[41030.434046] usb usb2-port2: attempt power cycle
[41031.061973] usb 2-2: new full-speed USB device number 48 using xhci_hcd
[41031.062086] usb 2-2: Device not responding to setup address.
[41031.266212] usb 2-2: Device not responding to setup address.
[41031.474101] usb 2-2: device not accepting address 48, error -71
[41031.588100] usb 2-2: new full-speed USB device number 49 using xhci_hcd
[41031.588294] usb 2-2: Device not responding to setup address.
[41031.794271] usb 2-2: Device not responding to setup address.
[41032.002095] usb 2-2: device not accepting address 49, error -71
[41032.002202] usb usb2-port2: unable to enumerate USB device
[41070.004040] usb 2-1: new high-speed USB device number 50 using xhci_hcd
[41075.638042] usb 2-1: device descriptor read/64, error -110
[41075.877302] usb 2-1: New USB device found, idVendor=0718, idProduct=063d, bcdDevice= 1.00
[41075.877309] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[41075.877313] usb 2-1: Product: Nano Pro
[41075.877316] usb 2-1: Manufacturer: Imation
[41075.877319] usb 2-1: SerialNumber: 0703335B0AF92D86
[41075.881530] usb-storage 2-1:1.0: USB Mass Storage device detected
[41075.882899] scsi host3: usb-storage 2-1:1.0
[41077.004052] scsi 3:0:0:0: Direct-Access     Imation  Nano Pro         PMAP PQ: 0 ANSI: 4
[41077.005015] sd 3:0:0:0: Attached scsi generic sg1 type 0
[41078.366583] sd 3:0:0:0: [sdc] 15116736 512-byte logical blocks: (7.74 GB/7.21 GiB)
[41078.366732] sd 3:0:0:0: [sdc] Write Protect is off
[41078.366735] sd 3:0:0:0: [sdc] Mode Sense: 23 00 00 00
[41078.366935] sd 3:0:0:0: [sdc] No Caching mode page found
[41078.366939] sd 3:0:0:0: [sdc] Assuming drive cache: write through
[41078.389637]  sdc: sdc1 sdc2 sdc3 sdc4
[41078.392305] sd 3:0:0:0: [sdc] Attached SCSI removable disk

之前的錯誤:

$ journalctl -o short-monotonic -k -p err
[   14.953318] alan-laptop kernel: i801_smbus 0000:00:1f.3: Failed to enable SMBus PCI device (-16)
[   15.919042] alan-laptop kernel: uvcvideo: Failed to query (GET_INFO) UVC control 3 on unit 1: -32 (exp. 1).
[   15.974276] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[   19.812805] alan-laptop kernel: db_root: cannot open: /etc/target
[   35.219443] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
...
[19625.693967] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[20606.292276] alan-laptop kernel: ACPI Error: Thread 3649118016 cannot release Mutex [PATM] acquired by thread 2284756800 (20190215/exmutex-382)
[20606.292282] alan-laptop kernel: ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_AML_NOT_OWNER) (20190215/psparse-53>
[20609.491788] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[22006.616549] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[28469.301081] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[28472.604260] alan-laptop kernel: Bluetooth: hci0: command 0x0c56 tx timeout
[30297.940165] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[30355.700904] alan-laptop kernel: mmc0: error -110 doing runtime resume
[30355.939525] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f

這是atop. 當出現致命錯誤時,它無法列印錯誤消息。我已經向 atop 項目報告了這個錯誤。

atop錯誤是我在將目錄 ( ) 更改為掛載的 USB 後碰巧執行cd了……後來我失去連接的掛載的 USB。

src/atop$ grep -r 'exit[ ]*[(]' .
...
various.c
577:        exit(13);
590:    exit(exitcode);
...
src/atop$ grep -r '53' .
...
photosyst.c
101:** Revision 1.16  2004/05/06 09:53:31  gerlof
107:** Revision 1.14  2003/07/08 13:53:21  gerlof
305:        cleanstop(53);
...

在函式中photosyst()

   if ( getcwd(origdir, sizeof origdir) == NULL)
   {
       perror("save current dir");
       cleanstop(53);
   }

哦,我看到atop 嘗試列印錯誤消息。但後來我希望cleanstop()恢復原來的螢幕。所以它消除了錯誤消息:-)。

引用自:https://unix.stackexchange.com/questions/526075