Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp72573imm; Thu, 14 Jun 2018 15:36:32 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIRIyK0qnNfRx+Ot1g4InXaSR0FSefKfHyjc7pnJHGCJmjtlciilicLbaeBntehXmlGnHwH X-Received: by 2002:a65:4985:: with SMTP id r5-v6mr2945756pgs.110.1529015792513; Thu, 14 Jun 2018 15:36:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529015792; cv=none; d=google.com; s=arc-20160816; b=y9DQLj+ubAKlNzYgyOI4+yX2zi+XgoHvooFguWQlFKNYglCM2rHJlZ5KTGGPuC9lE0 lA7Wd9YgsVubs2zO6NQ9fKELEe/Y4RlUsF0e7HYK3oZqPHQyLS4GmhSOaWAy5o+pCAje YuXJL9t05os2eibHUrrw3jcWD2Lpl4Ys/CHd5bFrB1CTago9il7h4o9nIw5h8j2ju3B0 HB2JCHV6oCXq0Np1G4Uwc6elGGSB5f7RIW/mKB4gme3ua1/eeeSNT1SWsqARmxzIeXWc kEJHRvYfuqywvej5Lj9emZcqKrsGhBH+4QQtyjlbfAd2H31ltQQWis8mpRhKJZIjdeIr Kjig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :arc-authentication-results; bh=oC7f8kOyW+BRHh7C3HTKK6wNSqy0n12LfiLmbbD7u9s=; b=wAlG5aFgA5tIqKFDSWoZbGDnjJafu8xP6YzrDZUqrLPapqSO5IMGG00ny0kiJe9Bt2 dOKadcN1S5ajLFnZtqz00om25gJ0bImgCY2FDYc554gQFgtbyPgYltjBkGXm9UQ6MlJS wC3nj4j9ATVQgURXSsbg+wq2+r/mjYPic7nfP2PRLZs9uIpC3aJoS0Bb0DknWMLAMYcg 5ADMjCdPV9gT0QoI3VRvzwAu59IAsECdWQtE2OPq7nyq9yfJfsPODmqhAehtuvXrEiVG BuzDBtQKyEMy5E5A8CYNUssSTMJWBQ/mpOaVBqAxPwSYVBDodEL2NjI3Q0O+HVgmbzIV 7VnQ== ARC-Authentication-Results: i=1; mx.google.com; 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 k134-v6si5177610pga.149.2018.06.14.15.36.18; Thu, 14 Jun 2018 15:36:32 -0700 (PDT) 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; 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 S965066AbeFNWfv (ORCPT + 99 others); Thu, 14 Jun 2018 18:35:51 -0400 Received: from mail.kernel.org ([198.145.29.99]:33806 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965037AbeFNWft (ORCPT ); Thu, 14 Jun 2018 18:35:49 -0400 Received: from gandalf.local.home (cpe-66-24-56-78.stny.res.rr.com [66.24.56.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 4733320896; Thu, 14 Jun 2018 22:35:48 +0000 (UTC) Date: Thu, 14 Jun 2018 18:35:46 -0400 From: Steven Rostedt To: Mikulas Patocka Cc: Alan Stern , Thomas Gleixner , Ming Lei , Greg Kroah-Hartman , USB list , Kernel development list Subject: Re: [PATCH] usb: don't offload isochronous urb completions to ksoftirq Message-ID: <20180614183546.7e04024c@gandalf.local.home> In-Reply-To: References: <20180613183145.17564d82@gandalf.local.home> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 14 Jun 2018 18:23:11 -0400 (EDT) Mikulas Patocka wrote: > I don't think it's so easy. The kernel 2.4 and below did this. And the > problem was that if there's a storm of network packets, the softirq code > would cause lockup of the whole machine. In order to not lockup the > machine - somewhere in the 2.4 cycle - the ksoftirqd thread was > introduced. > > If you have CONFIG_PREEMPT_RT_FULL and you call softirqs in the interrupt > thread, you could only stall the interrupt thread. If you do the same > thing without CONFIG_PREEMPT_RT_FULL, you stall the whole CPU. > Note, PREEMPT_RT also uses ksoftirqd too. Although we may set it to RT prio 1. It is triggered if the softirq itself raises a softirq of the same kind, and then the work is passed off to the ksoftirqd. Causing the interrupt thread to stall (or by going into a loop of softirqs) is likely to lock up the CPU on RT too, as interrupt threads are usually run at priority 50, which will keep normal threads from running on that CPU. -- Steve