I have seem cannot either reboot or poweroff, need to be forced either reboot -f or poweroff -f.
This is just happening recently, before it doesn't happened like these. Using my old image I am able to reboot or poweroff normally without forcing it.
diffconfig in here.
This is also happened in luci->system->reboot->perform reboot. After either executing the command reboot in ssh or through luci, it's like nothing happened.
Countless build have happened to try to fix this, but nothing seems to be worked to make reboot command happens normally.
This is on x86_64, glibc
Some processes details :
root@router:~# ps -eo 'stat,pid,args' | grep -E 'D'
STAT PID COMMAND
Ss 8788 /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
Sl 9508 /usr/sbin/netdata -D -c /etc/netdata/netdata.conf
S 11262 /usr/sbin/pppd nodetach ipparam wan ifname pppoe-wan set NOSOURCEFILTER=1 set DELEGATE=0 nodefaultroute usepeerdns maxfail 1 user username password ?????? ip-up-script /lib/netifd/ppp-up ip-down-script /lib/netifd/ppp-down mtu 1492 mru 1492 plugin pppoe.so nic-eth5
Ss 12033 /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
Ss 12496 /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
Ss 14090 /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
Ss 14415 /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
Ss 14431 /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
S+ 17224 grep -E D
root@router:~# ps -weo pid,stat,wchan:32,args | grep -E 'D'
PID STAT WCHAN COMMAND
8788 Ss do_sys_poll /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
9508 Sl do_sys_pause /usr/sbin/netdata -D -c /etc/netdata/netdata.conf
11262 S do_select /usr/sbin/pppd nodetach ipparam wan ifname pppoe-wan set NOSOURCEFILTER=1 set DELEGATE=0 nodefaultroute usepeerdns maxfail 1 user username password ?????? ip-up-script /lib/netifd/ppp-up ip-down-script /lib/netifd/ppp-down mtu 1492 mru 1492 plugin pppoe.so nic-eth5
12033 Ss do_sys_poll /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
12496 Ss do_sys_poll /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
14090 Ss do_sys_poll /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
14415 Ss do_sys_poll /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
14431 Ss do_sys_poll /usr/sbin/arpwatch -ibr-lan -f/etc/arpwatch/arp.dat -D/etc/arpwatch
17239 S+ pipe_read grep -E D
Kill all of these * * 'D' = UNINTERRUPTABLE_SLEEP processes also doesn't help.
strace reboot :
root@router:~# strace reboot
execve("/sbin/reboot", ["reboot"], 0x7ffefa9ce380 /* 15 vars */) = 0
brk(NULL) = 0x403b5000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1b25f4e000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/glibc-hwcaps/x86-64-v4/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/lib/glibc-hwcaps/x86-64-v4/", 0x7ffe94d34d80, 0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/glibc-hwcaps/x86-64-v3/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/lib/glibc-hwcaps/x86-64-v3/", 0x7ffe94d34d80, 0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/glibc-hwcaps/x86-64-v2/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/lib/glibc-hwcaps/x86-64-v2/", 0x7ffe94d34d80, 0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/lib/", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v4/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v4/", 0x7ffe94d34d80, 0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v3/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v3/", 0x7ffe94d34d80, 0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v2/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v2/", 0x7ffe94d34d80, 0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/libcrypt.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=116592, ...}) = 0
mmap(NULL, 151808, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1b25f28000
mmap(0x7f1b25f29000, 45056, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f1b25f29000
mmap(0x7f1b25f34000, 65536, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f1b25f34000
mmap(0x7f1b25f44000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b000) = 0x7f1b25f44000
mmap(0x7f1b25f46000, 28928, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1b25f46000
close(3) = 0
openat(AT_FDCWD, "/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=968712, ...}) = 0
mmap(NULL, 970776, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1b25e3a000
mmap(0x7f1b25e4b000, 507904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x11000) = 0x7f1b25e4b000
mmap(0x7f1b25ec7000, 389120, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8d000) = 0x7f1b25ec7000
mmap(0x7f1b25f26000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xeb000) = 0x7f1b25f26000
close(3) = 0
openat(AT_FDCWD, "/lib/libpam.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/libpam.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=67512, ...}) = 0
mmap(NULL, 65552, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1b25e29000
mmap(0x7f1b25e2c000, 36864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f1b25e2c000
mmap(0x7f1b25e35000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f1b25e35000
mmap(0x7f1b25e38000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7f1b25e38000
close(3) = 0
openat(AT_FDCWD, "/lib/libpam_misc.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/libpam_misc.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=18304, ...}) = 0
mmap(NULL, 20560, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1b25e23000
mmap(0x7f1b25e25000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f1b25e25000
mmap(0x7f1b25e26000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f1b25e26000
mmap(0x7f1b25e27000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f1b25e27000
close(3) = 0
openat(AT_FDCWD, "/lib/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=63720, ...}) = 0
mmap(NULL, 71816, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1b25e11000
mmap(0x7f1b25e14000, 36864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f1b25e14000
mmap(0x7f1b25e1d000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f1b25e1d000
mmap(0x7f1b25e1f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7f1b25e1f000
mmap(0x7f1b25e21000, 6280, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1b25e21000
close(3) = 0
openat(AT_FDCWD, "/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=120832, ...}) = 0
mmap(NULL, 123368, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1b25df2000
mmap(0x7f1b25df6000, 86016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f1b25df6000
mmap(0x7f1b25e0b000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19000) = 0x7f1b25e0b000
mmap(0x7f1b25e0f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c000) = 0x7f1b25e0f000
close(3) = 0
openat(AT_FDCWD, "/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\255\2\0\0\0\0\0"..., 832) = 832
pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784
fstat(3, {st_mode=S_IFREG|0755, st_size=2097816, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1b25df0000
pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784
mmap(NULL, 2150264, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1b25a00000
mmap(0x7f1b25a28000, 1556480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x28000) = 0x7f1b25a28000
mmap(0x7f1b25ba4000, 352256, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a4000) = 0x7f1b25ba4000
mmap(0x7f1b25bfa000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1f9000) = 0x7f1b25bfa000
mmap(0x7f1b25c00000, 53112, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1b25c00000
close(3) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1b25dee000
arch_prctl(ARCH_SET_FS, 0x7f1b25dee740) = 0
set_tid_address(0x7f1b25dee7d0) = 17545
set_robust_list(0x7f1b25dee7e0, 24) = 0
rseq(0x7f1b25deee60, 0x20, 0, 0x53053053) = -1 ENOSYS (Function not implemented)
mprotect(0x7f1b25bfa000, 16384, PROT_READ) = 0
mprotect(0x7f1b25e0f000, 4096, PROT_READ) = 0
mprotect(0x7f1b25e1f000, 4096, PROT_READ) = 0
mprotect(0x7f1b25f44000, 4096, PROT_READ) = 0
mprotect(0x7f1b25e38000, 4096, PROT_READ) = 0
mprotect(0x7f1b25e27000, 4096, PROT_READ) = 0
mprotect(0x7f1b25f26000, 4096, PROT_READ) = 0
mprotect(0x489000, 4096, PROT_READ) = 0
mprotect(0x7f1b25f8d000, 8192, PROT_READ) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
getrandom("\x6e\x9e\xa4\x55\x42\x5a\x56\x2b", 8, GRND_NONBLOCK) = 8
prctl(PR_GET_NAME, "reboot") = 0
clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=0, tv_nsec=0}, 0x7ffe94d35b70) = 0
sync() = 0
kill(1, SIGTERM) = 0
exit_group(0) = ?
+++ exited with 0 +++