Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp2215879ybt; Fri, 3 Jul 2020 03:53:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyKTT9b5taOq+xjleCn6YuXdvZS8Fl7PiLzOdL8jp7myTLDu6H4MmDbsD2wS3l8DjDDlsuN X-Received: by 2002:aa7:c887:: with SMTP id p7mr25747970eds.240.1593773621784; Fri, 03 Jul 2020 03:53:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593773621; cv=none; d=google.com; s=arc-20160816; b=i/A85KbgQ21zyDK63An9YgG60GzhWprGei1xlZJlSDTjAmiN2racEgaXQv6JMpfAF5 xkktQGD2iFhwrromfjjIOcUjGH6fzFwM2PCG47uhVxDsuHLxSpcY2/yfyr685PvMMiBj es4NeVyHiUccAQECYaLk4D98Y4wOviO4ztzYgjZ2tFFjVeu4SY27PNvhJveYwzKrF6Sh UzQgkxWkHNHwS4H564c42yJ/zF6Cr+BihIoYQZhyJ6c2U68wY6a11npfdqoxZqUpn72o WI5TBZTmhfSmoWyc49f0eEt1AAdtti4IXHeOvgoY4a3rAKIFcMxRUUWhAwoqmmWbMgqZ dMOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:date:from :dkim-signature; bh=OGpuzxy+MIp1rENc9jMCC/mFYHbkQY9vYIT5QTgbmWY=; b=RzoZzD0ay1/pxG/wy8S+Ib99JQA5iDXU26Zdpo7DCEMR1AFxHR+PiVgBECLhe1ZrmX wEXpVgu8i+/ODy9Y79aVcxsj9xso30DgXTw1Poxi4Ec4IeAI4Y8F87608U4wTUgPwp3G sgJ8j/2ZLQOs4sF4dTXfP8OXu8yq7RUEnwlkalcBTdvDJ5h0frtyaPGVt6nTrCQ9HOPZ XuwoiqpMI3pQi+FZoXHyFvhns1w8lJYhqDdhWG92mxGzNxzFeqV9D7eIF5jCvDAs6dqt B8d3ZBgnCDFf3vVeC6HCmGmraTnaSrHX2i/85eEPKsu3fmGLF7rPunuDA6Fbabu7ilBG k49g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="Y8omVD//"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dp14si9451693ejc.412.2020.07.03.03.53.18; Fri, 03 Jul 2020 03:53:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="Y8omVD//"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726063AbgGCKxH (ORCPT + 99 others); Fri, 3 Jul 2020 06:53:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38094 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725915AbgGCKxG (ORCPT ); Fri, 3 Jul 2020 06:53:06 -0400 Received: from mail-pl1-x642.google.com (mail-pl1-x642.google.com [IPv6:2607:f8b0:4864:20::642]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B439CC08C5C1 for ; Fri, 3 Jul 2020 03:53:05 -0700 (PDT) Received: by mail-pl1-x642.google.com with SMTP id x11so12523604plo.7 for ; Fri, 03 Jul 2020 03:53:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:date:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=OGpuzxy+MIp1rENc9jMCC/mFYHbkQY9vYIT5QTgbmWY=; b=Y8omVD//GCbGlXcKzoFyVJ3TZNxqpcQrcXvYGjk7s8ZSMiLHmndCYMhy5FFzSfehLp +mqnAq6R85+kF02ylNBK0KRxaiJ7WkJCk74+Fr7X9dsfhjbsO6jCzLXrvaeAgccJXtiV khACNA2bp67N58fQGUDb9MZ8tKy2vSmU4NrEL9a870Y135yTSJCz/iFzbH8A0/02/UDx vUtppSY4IwBNT5TcFm6Jqy8MS464JomSUzShRLYXbS8UMBrvMeq6E6DStDBhLvADvPae VLwfnjVVSFN/Ja1M0zMOxyxpKSBNam0bRKJSyMjebYT75vleYgFhjKfOJ8nnBshSQYiO vTXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:date:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=OGpuzxy+MIp1rENc9jMCC/mFYHbkQY9vYIT5QTgbmWY=; b=WAUE6G2iYui2yvYuHuVLIjtfjmDbA1ukAsV5e7rVCNvxG7vLsij0t6T7GFjcZXhjFK pFUXfkWbFFJ4lQmZqMlqts9r38TaOtO+T1KduJOqC7QFdcLMwKQ71hbgFJMDrV0SKkLu vf1SU3FRNf3e4a2RxDusyyHgQy1qNApYhXsoTSZhzNdKgqId9OlAx9caUVIAh6Qd7fNy mk1IvQqD6L+Sps9mn0jQlFcWbZJFc+cOcB2RuscQ/+UKNLBhFF/G4oKlX4liTxIhSMjg 9tOG2lVbFgkx8E/aDzIQ+vpnkFpfvihk2TbiI9D6RKFyzCzCI2yX9TPU38eENBbG/yEY nqnw== X-Gm-Message-State: AOAM531zFtoN53MDjzENpFlrRgfhRQHy8Af+7q0JhrlCanBob7p9vA4p Q+LdPLnwbgDWxf1bW+KkiDR0L28+ X-Received: by 2002:a17:90a:db48:: with SMTP id u8mr6673988pjx.169.1593773584539; Fri, 03 Jul 2020 03:53:04 -0700 (PDT) Received: from localhost ([2409:10:2e40:5100:6e29:95ff:fe2d:8f34]) by smtp.gmail.com with ESMTPSA id x10sm528364pfp.144.2020.07.03.03.53.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Jul 2020 03:53:03 -0700 (PDT) From: Sergey Senozhatsky X-Google-Original-From: Sergey Senozhatsky Date: Fri, 3 Jul 2020 19:53:02 +0900 To: Andy Shevchenko Cc: Sergey Senozhatsky , Tony Lindgren , Petr Mladek , Raul Rangel , Sergey Senozhatsky , linux-kernel , Greg Kroah-Hartman , kurt@linutronix.de, "S, Shirish" , Peter Zijlstra , John Ogness , Steven Rostedt Subject: Re: UART/TTY console deadlock Message-ID: <20200703105302.GC182102@jagdpanzerIV.localdomain> References: <20200630035816.GA21591@jagdpanzerIV.localdomain> <20200630102141.GA11587@alley> <20200630105512.GA530@jagdpanzerIV.localdomain> <20200630122239.GD6173@alley> <20200630130534.GB145027@jagdpanzerIV.localdomain> <20200630180255.GD37466@atomide.com> <20200702051213.GB3450@jagdpanzerIV.localdomain> <20200702054033.GC3450@jagdpanzerIV.localdomain> <20200702082008.GE3703480@smile.fi.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200702082008.GE3703480@smile.fi.intel.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On (20/07/02 11:20), Andy Shevchenko wrote: > > I didn't look into this deeply, but my understanding that this is something for > special case when you have several UART ports sharing the IRQ (multi-port card) > and IRQ even maybe undesirable b/c it will confuse real IRQ handler. I don't > remember details, but AFAIR IRQ handler does a busyloop to service as much as > possible and in between it may release the lock (again, multi-port UART cards), > that's why we better avoid IRQ event in the first place. > But it's my pure speculation. Hmm. Would different IRQ handlers use different UART port structures? ->irq might be the only thing they share. Even if they use the same port, we keep IRQs disabled on local CPU, and UART port locked. To unlock the UART port during IRQ, the handler (on another CPU) first needs to acquire the port->lock, which is locked by serial8250_do_startup(). -ss