Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S262584AbUCaVdi (ORCPT ); Wed, 31 Mar 2004 16:33:38 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S262574AbUCaVcz (ORCPT ); Wed, 31 Mar 2004 16:32:55 -0500 Received: from ppp-217-133-42-200.cust-adsl.tiscali.it ([217.133.42.200]:4235 "EHLO dualathlon.random") by vger.kernel.org with ESMTP id S262584AbUCaVbK (ORCPT ); Wed, 31 Mar 2004 16:31:10 -0500 Date: Wed, 31 Mar 2004 23:31:09 +0200 From: Andrea Arcangeli To: Dipankar Sarma Cc: "David S. Miller" , kuznet@ms2.inr.ac.ru, linux-kernel@vger.kernel.org, netdev@oss.sgi.com, Robert.Olsson@data.slu.se, paulmck@us.ibm.com, akpm@osdl.org Subject: Re: route cache DoS testing and softirqs Message-ID: <20040331213109.GR2143@dualathlon.random> References: <20040329222926.GF3808@dualathlon.random> <200403302005.AAA00466@yakov.inr.ac.ru> <20040330211450.GI3808@dualathlon.random> <20040330133000.098761e2.davem@redhat.com> <20040330213742.GL3808@dualathlon.random> <20040330142210.080dbe38.davem@redhat.com> <20040330224902.GM3808@dualathlon.random> <20040331204611.GC4543@in.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040331204611.GC4543@in.ibm.com> User-Agent: Mutt/1.4.1i X-GPG-Key: 1024D/68B9CB43 13D9 8355 295F 4823 7C49 C012 DFA1 686E 68B9 CB43 X-PGP-Key: 1024R/CB4660B9 CC A0 71 81 F4 A0 63 AC C0 4B 81 1D 8C 15 C8 E5 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1169 Lines: 22 On Thu, Apr 01, 2004 at 02:16:11AM +0530, Dipankar Sarma wrote: > I don't do any of this. I just have a separate quiescent state counter > for softirq RCU. It is incremented for regular quiescent points > like cswitch, userland, idle loop as well as at the completion > of each softirq handler. call_rcu_bh() uses its own queues. > Everything else works like call_rcu(). the point is that you want this counter to increase in every cpu quick, that's why I was thinking at posting the tasklet, if the counter doesn't increase from softirq, you fallback in the grace period length of the non-bh rcu. maybe the softirq load is so high in all cpus that just the additional counter will fix it w/o having to post any additional tasklet (I very much hope so but especially with irq binding I don't see it happening, however with irq binding you may have a call_rcu_bh_cpuset). You should give it a try and see if it just works. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/