Running linux ldconfig on tmpfs results in unkillable process

Beat Gätzi beat at chruetertee.ch
Tue Jan 18 14:16:29 UTC 2011


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?

Thanks,
Beat


More information about the freebsd-current mailing list