Re: CONFIG_PREEMPT and server workloads

From: Dipankar Sarma
Date: Fri Mar 19 2004 - 12:23:55 EST


On Thu, Mar 18, 2004 at 10:10:06PM -0800, Andrew Morton wrote:
> The worst-case latency is during umount, fs/inode.c:invalidate_list() when
> the filesystem has a zillion inodes in icache. Measured 250 milliseconds
> on a 256MB 2.7GHz P4 here. OK, so don't do that.
>
> The unavoidable worst case is in the RCU callbacks for dcache shrinkage -
> I've seen 25 millisecond holdoffs on the above machine during filesystem
> stresstests when RCU is freeing a huge number of dentries in softirq
> context.

What filesystem stresstest was that ?

>
> This if Hard To Fix. Dipankar spent quite some time looking into it and
> had patches, but I lost track of where they're at.

And I am still working on this on a larger scope/scale. Yes, I have
a patch that hands over the rcu callbacks to a per-cpu kernel thread
reducing the softirq time. However this is not really a solution to
the overall problem, IMO. I am collecting some instrumentation
data to understand softirq/rcu behavior during heavy loads and
ways to counter long running softirqs.

Latency isn't the only issue. DoS on route cache is another
issue that needs to be addressed. I have been experimenting
with Robert Olsson's router test and should have some more results
out soon.

Thanks
Dipankar
-
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/