Received: by 10.223.148.5 with SMTP id 5csp6580255wrq; Wed, 17 Jan 2018 15:57:49 -0800 (PST) X-Google-Smtp-Source: ACJfBovueqCOH2xsCHFDgpu+VHN1cYEJ5txLHe0SugihCiMa3R/mKybHSOe+VF3PRZGrWzM5smee X-Received: by 10.99.115.4 with SMTP id o4mr18580712pgc.206.1516233468891; Wed, 17 Jan 2018 15:57:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516233468; cv=none; d=google.com; s=arc-20160816; b=frHuuBbOsgwsxahInmL3WPwdABBgBwpkFlMJNXG8utkRogusOopIrTl3fxBaoxkMxY MZrFoa2Ti9tn6lS+/6J0OaNMYkX2hycpKGzzdjULWIykqvM6REi4IrAInxDnwxiBv8f1 haYdJRwe/6OzWgqpEwW38Cg4RGPAC5Yz8siyGWNUpp42lVtbCxmfx7MWK0dpDjBzXdtz Wkz+iAitOZ5wVAaLUgmBPbBuC7pjDNC9Qz3wdl1GPnoFUItKHOqXEQcfvIqu33dOnZSo dPltJfs5JHTVBkMchrQIruLmVQrrOSNNtF7YoKyJhWIQGzO6xroXJsoW/dwhBb1CMDSI c19g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=5nST2vO0rls6dDKyHwRZ8rLvKaSszF1hnhwmhGkq78c=; b=MeWE23E4gbaomBO5OwWTNzawYGRcKoj2Qdhg2i9jSCwiVPR2p8DQwLRmJ4w6XHhPn7 5yJxxzCQAWO3V77VUeBkw57wrp7nOegae9G96CBlRxvWKjPGi1rPc3FZ11NjPtBhyR/5 BxKVIvaSfMKwGXiK+QC6pjuMeun6eEfcyPPNez+zhxvkecYd7Igt6LlY4ey9E7ZTo3sS gmMLbO6hg+1NDgsLjG+8jLPEAlmLltYTRVvxq1bSkJTzOK3cC3U1MMhlhZ+HsrH9RjYS RKQOQXFZJfCY+fBDo4tFmNDuin37AlBZ5LlHBJBTC/V/yQNe+ohSSJ1ru8+tsSFzvQHd lF6g== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=ralk8IAG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e6si4618266pgt.283.2018.01.17.15.57.34; Wed, 17 Jan 2018 15:57:48 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=ralk8IAG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754504AbeAQX4p (ORCPT + 99 others); Wed, 17 Jan 2018 18:56:45 -0500 Received: from mail-it0-f51.google.com ([209.85.214.51]:33996 "EHLO mail-it0-f51.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754350AbeAQX4o (ORCPT ); Wed, 17 Jan 2018 18:56:44 -0500 Received: by mail-it0-f51.google.com with SMTP id m11so183407iti.1 for ; Wed, 17 Jan 2018 15:56:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=5nST2vO0rls6dDKyHwRZ8rLvKaSszF1hnhwmhGkq78c=; b=ralk8IAGrWResnF7IDQ0IDq/UiNGPYXunPvTH3iAWjQmcmxS2rVO/5Y9aFVO61F9Pp 3c3PyQfCyc5DNaCOwvdk2cOcM0PckUw20CQa0UsRdgONsH9+f0ucbG9GlHAYxN4ZidB4 aYXFNNaXZoYUOEJXrnpnwZZJXGr5dsucoGDFyeZufOzo1t80Ks+pha9EObCJ2+OowaRo 7D7DvZPynJbWHfz48+3DEJ9nmQ7zZoCOaNq4Y4wNWQls6FzldQRO1t20MwFZArcIxpVe cYlgjdee5e1dtmNB77Kgh9OTg7kFTT0JRjgqB3d7DoKPE7slvAlqFpxSdTeVp+Mb0Jhq A6Pw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=5nST2vO0rls6dDKyHwRZ8rLvKaSszF1hnhwmhGkq78c=; b=IZVYrVSbhy9e5gIBgZICvle3V6nuvrNPUntPdY/X7J2u5PKxha21rM9nJ8etWLtGPd oIbfRMza3/AWmDnCe8SvPuQYspPT2ju9OGw/jMyrIyDV9xzHjqulaL22LgQ0T76Ef/0a ooIRtz+6q17dqQbQgCwK5G0woPuDkIyIUCQvhO+w5rCvFahExcoQZ8os+9tlrIKWMCMK oVKlZbZWrQ0cNwOjHQs+8HYzIT8Wkm1IHJVicZV0j68Df9m7fBfTiaezsc86AbQ2aQfa pzmmhzA9tnTAOdTGI4/DPlQXUcEZT5M/8lIxO0hmHCoknc6UVa36dj1qDXpa1IKTBNuy mHRw== X-Gm-Message-State: AKwxyteSb6b+3pNtEJOdTrHCR7Eh9vtXvgORELnJgN9GJQwQnT38qQgM nmXPNH23tcgpwnDLHaCKErZTyhhCkHJXte8/GQmInBex X-Received: by 10.36.47.5 with SMTP id j5mr17320546itj.123.1516233403740; Wed, 17 Jan 2018 15:56:43 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.6.147 with HTTP; Wed, 17 Jan 2018 15:56:43 -0800 (PST) In-Reply-To: <20180117180713.GA17735@lerouge> References: <1516077640-19718-1-git-send-email-frederic@kernel.org> <20180117145620.213cb5ad@vento.lan> <20180117180713.GA17735@lerouge> From: Linus Torvalds Date: Wed, 17 Jan 2018 15:56:43 -0800 X-Google-Sender-Auth: K2QRvNd0jA3HA7c3U3zjInuuDCA Message-ID: Subject: Re: [RFC PATCH 0/5] softirq: Per vector threading v2 To: Frederic Weisbecker Cc: Mauro Carvalho Chehab , LKML , Levin Alexander , Peter Zijlstra , Hannes Frederic Sowa , "Paul E . McKenney" , Wanpeng Li , Dmitry Safonov , Thomas Gleixner , Eric Dumazet , Radu Rendec , Ingo Molnar , Stanislaw Gruszka , Paolo Abeni , Rik van Riel , Andrew Morton , David Miller Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jan 17, 2018 at 10:07 AM, Frederic Weisbecker wrote: > > I see, so you may want to test (possibly much) higher values of MAX_SOFTIRQ_RESTART, > such as 50 or 100. I suspect the "number of softiqs per jiffy" is hardly interesting at all. We used to allow up to 2mS or ten iterations per _invocation_, never mind per timer tick. I thought you were going to actally account for time, but I don't think you ended up doing that. Maybe time isn't necessarily the thing to do, but just pure "count per jiffy" seems very bad. What I might suggest using instead: - do it by time. This may be too expensive, though. Keeping track of ns-level timing per invocation can be nasty. - do it by "we got a new softirq event while handling another softirq event". That was our old count per invocation, except you could do it per softirq, and just allow *one* (ie keep a bitmask of "I've already handled this softirq", and if the restart results in it being triggered *again* you say "ok, I'll just move this to a workqueue" - .. something else? I'd suggest trying the "if we get a new softirq event that we've already seen while we were already handling softirq events" thing. That should really take care of the networking case of "90% time spend in softirq handling during packet storms" thing. If we spend that much time on softirqs, we *will* get a new softirq while handling an old one occasionally. Linus