Re: 21 million inodes is causing severe pauses.
From: Robin Holt
Date: Mon Nov 15 2004 - 16:38:09 EST
On Mon, Nov 15, 2004 at 03:57:44PM -0500, linux-os wrote:
>
> Another temporary fix is to do:
>
> while true ; do sleep 5 ; sync ; done
I don't think we are looking at a flushing buffers to disk problem.
Even after doing a sync, I see 1.3M entries. Before the sync, I
was at 1.2M, so the count went up during the sync.
I am specifically noticing problems with the inode_list and not
buffers.
>
> ... or some 'C' code equivalent to force most of the stuff to
> disk before it takes so much time that it's obvious to the
> users.
>
> If you have soooo much data buffered, it is going to take a
> verrrry long time to write it to disk so. Just write it before
> you have so much buffered!
This is already being done. Nearly all of the inodes have
buffers that are expired and have been pushed to disk.
>
> NULL pointer problems shouldn't happen. However, you don't say
> if its a kernel crash problem or a user-mode problem. If it's
> a user-mode problem, the possibility exists that somebody isn't
> properly checking the return value of read/write, etc. If EIO
> (from attempting to modify an inode) was return in errno, you
> get -1 in the return value, it that's used as an index into the
> next bunch of data, you are dorked.
Kernel null pointer dereference in remove_inode_buffers().
Thanks,
Robin
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/