Trouble backgrounding daemon process - Debian PowerPC Linux
Question
The stock Motion package works OK on my Debian
PowerPC Linux distro, however the daemon refuses to background. I've researched a little bit and it looks like there are some pthread differences between the PPC and Intel kernels. I don't know much about pthreads and signals, but I do know that after the clone() system call, PPC fails to background the process. I can see that the signals differ between architectures. Any suggestions?
syscalls on working ARM box:
send(4, "<14>Feb 12 07:21:59 motion: [0] "..., 53, MSG_NOSIGNAL) = 53
write(2, "[0] Motion 3.2.12 Started\n", 26[0] Motion 3.2.12 Started
) = 26
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x4180a4a8) = 27677
write(2, "[0] Motion going to daemon mode\n", 32[0] Motion going to daemon mode
) = 32
syscalls on PowerPC:
clone(child_stack=0x4883bfd0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x4883c4d8, tls=0x48843910, child_tidptr=0x4883c4d8) = 1745
mmap(NULL, 8388608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4883d000
mprotect(0x4883d000, 4096, PROT_NONE) = 0
clone(child_stack=0x4903bfd0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x4903c4d8, tls=0x49043910, child_tidptr=0x4903c4d8) = 1746
Environment
Motion version: |
3.2.12 |
ffmpeg version: |
4:0.5.6-3 |
Libraries: |
ffmpeg, mysql, postgresql |
Server OS: |
Debian PowerPC Linux |
--
KevinZedrick - 12 Feb 2012
Answer