Date: Mon, 22 Jun 1998 18:00:59 +0000 (GMT) From: Terry Lambert <tlambert@primenet.com> To: daniel.sundin@engelholm.se (Daniel Sundin) Cc: freebsd-hackers@FreeBSD.ORG Subject: Re: state inode (top) problem Message-ID: <199806221800.LAA12894@usr06.primenet.com> In-Reply-To: <2.2.32.19980620011743.00862a58@pop.engelholm.se> from "Daniel Sundin" at Jun 20, 98 03:17:43 am
next in thread | previous in thread | raw e-mail | index | archive | help
> What happens when it pauses for 5-6 seconds, according to top, is that it > goes into an 'inode' state. During that time the CPU usage and SIZE usage > decreases alot, but RES stays normal. You are hung waiting for the inode to be inserted into the inode hash list. Most likely, you are suffering a priority inversion on the combination of the simple_lock on the ufs_ihash_slock, and the i_lock on the inode. You could find out if this is the case by placing a printf() before the lockmgr() call in ufs_ihashins(), and another one after the simple_unlock() call in the same function. If there is a delay showing the lock/unlock on the console, then that could be it. Typically, this would happen if a single inode were attempted to be placed onto the hashlist twice; this should never happen. What this might mean is that an inode is being reused before it is freed. Note that I didn't see anywhere where the lock was released. Depending on the implementation, this could be a problem. I would *expect* to see the release in ufs_ihashrem(), for parity's sake. Given the way this is being used, the lock implementation is less opaque than I'd like. > I'd appricate it alot if someone could either tell me what this > might be caused of, and/or what the STATE inode in top means exactly. > The man pages for -current hasnt been updated to describe the new > states. Neither have the block comments in ufs_ihash.c and ffs_vfsops.c. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199806221800.LAA12894>