When I mount an iso image using mount -t iso9660 -o loop file.iso /mnt/iso the load will increase to >1.0 and all the memory becomes used. also there will apear an process in the processlist that is not killable. root 720 0.0 0.3 1568 752 ? D 01:25 0:00 /sbin/modprobe -s -k block-major-7 if I unmount the iso, the load will be still >1.0 and modprobe process keeps running. this bug apeared on two servers with different configuration.
Transferred to kernel
I made a provisional patch, see bug 19065 or http://www.fenrus.demon.nl/loop.diff Feel free to test; it is only a first draft though, and not finished, although it solves the problem for me.
I've observed similiar behavior on two different machines... shortly after mounting an iso image my load will go up to 1.0 or greater. If a machine is idle for a while, I login and check the load and w reports a 1.00 1.00 1.00. I find it odd that it is a perfect 1.00 load for 15 minutes (or whatever) straight. I even telinit 1 to stop everything and the load remains at 1 or greater. In single user mode it was easier to spot the "loopd" process with a stat of "D" which according to the ps man page: "D uninterruptible sleep (usually IO)". Until a new kernel or module fix is provided, I guess I'll not mount any iso images.
I've put a kernel compiled with a fix up at ftp://nl.linux.org/pub/people/arjan/rpm This is the Red Hat 2.2.16-22 kernel with the fix for loop, as well as the fixes for 19302 and 19072. (Note: This is NOT an official Red Hat kernel, nor is it even looked at by Red Hat employees !)
fixed in errata kernel
When installing the kernel-2.2.17-14 rpm (from a machine running 2.2.16-22) which resides on an NFS mount, the next reboot fails to unmount the NFS mount which causes the machine to hang with RPC failures after the network is stopped. This is due to the '/sbin/modprobe loop' process being in 'D' state, which prevents the NFS mount from unmounting, even with umount -f.