Re: Running linux ldconfig on tmpfs results in unkillable process

From: Kostik Belousov <kostikbel_at_gmail.com>
Date: Tue, 18 Jan 2011 16:46:12 +0200
On Tue, Jan 18, 2011 at 03:16:27PM +0100, Beat G?tzi wrote:
> Hi,
> 
> I've a tinderbox which uses tmpfs to build ports. Every time I build a
> port which executes linux ldconfig it results in an unkillable process
> which uses 100% CPU. The problem is reproduceable without tinderbox:
> 
> # uname -a
> FreeBSD daedalus.network.local 9.0-CURRENT FreeBSD 9.0-CURRENT #3
> r216761: Tue Dec 28 15:32:26 CET 2010
> root_at_daedalus.network.local:/usr/obj/usr/src/sys/GENERIC  i386
> # mkdir /compat/test
> # mount -t tmpfs tmpfs /compat/test
> # cp -Rp /compat/linux/* /compat/test/
> # mount -t linprocfs linprocfs /compat/test/proc
> # /compat/linux/sbin/ldconfig -r /compat/test/
> # pgrep ldconfig
> 3449
> # procstat -i 3449 | grep KILL
>  3449 ldconfig         KILL     ---
> # kill -9 3449
> # procstat -i 3449 | grep KILL
>  3449 ldconfig         KILL     P--
> 
> >From top(1):
> PID USERNAME THR PRI NICE  SIZE   RES STATE    C  TIME   WCPU COMMAND
> 3449 root     1  44    0   992K   712K CPU1    1  10:06 100.00% ldconfig
> 
> When I reboot the machine it hangs after "All buffers synced.".
> 
> I've uploaded some additional output of procstat and ktrace here:
> http://people.freebsd.org/~beat/logs/linux-ldconfig-tmpfs.txt
> 
> Anyone knows how to fix this?
kdump for the trace of the linux binary is a garbage. You need to
use linux_kdump (from ports).

I think that your process is looping in the kernel, you can confirm this
by dropping in the ddb and doing "bt <pid>".

Received on Tue Jan 18 2011 - 13:46:24 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:10 UTC