From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 749A2C432C3 for ; Sat, 16 Nov 2019 15:54:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 44C1321843 for ; Sat, 16 Nov 2019 15:54:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1573919683; bh=dvvlDb/+0VMhtBKkl1moFhh/et82E8jtpyGoaFbPt7I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=JymuTwANW/JcRRfyNI8lOZUU0nFQFw9MKEZU6RtJkGIXGdbpZoUs/CaWwj4zRsyek TBzkBZ8bDY/isQsRFB7w21oA29bsMNU1E/ZWjlxNtrH3hthBe+tnWDYPnOgYaDzGKe hU8Yfoj8SfyPKSl2+OfDFJ4aL8Y5lLedzUSTmo1o= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729839AbfKPPym (ORCPT ); Sat, 16 Nov 2019 10:54:42 -0500 Received: from mail.kernel.org ([198.145.29.99]:36380 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731473AbfKPPyg (ORCPT ); Sat, 16 Nov 2019 10:54:36 -0500 Received: from sasha-vm.mshome.net (unknown [50.234.116.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 21B50208E3; Sat, 16 Nov 2019 15:54:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1573919676; bh=dvvlDb/+0VMhtBKkl1moFhh/et82E8jtpyGoaFbPt7I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=evjR2RHT3QIlj262p48vE9Y5XkChUEbqEk14VaGcf67c3P0nlefwyj0aAJT7fBQYo x/e0zHrzoc6IyOGgoTW/I9cRoTdiEsPMa2gKhCp7U2x3rwsfIyzmUpNYXCGkFUnYeA CCqh2vEf2LhBZoaWLbV1FuO1pEE3+W9MXLA26t78= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Anton Ivanov , Richard Weinberger , Sasha Levin , linux-um@lists.infradead.org Subject: [PATCH AUTOSEL 4.4 43/77] um: Make line/tty semantics use true write IRQ Date: Sat, 16 Nov 2019 10:53:05 -0500 Message-Id: <20191116155339.11909-43-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191116155339.11909-1-sashal@kernel.org> References: <20191116155339.11909-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Anton Ivanov [ Upstream commit 917e2fd2c53eb3c4162f5397555cbd394390d4bc ] This fixes a long standing bug where large amounts of output could freeze the tty (most commonly seen on stdio console). While the bug has always been there it became more pronounced after moving to the new interrupt controller. The line semantics are now changed to have true IRQ write semantics which should further improve the tty/line subsystem stability and performance Signed-off-by: Anton Ivanov Signed-off-by: Richard Weinberger Signed-off-by: Sasha Levin --- arch/um/drivers/line.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/um/drivers/line.c b/arch/um/drivers/line.c index 62087028a9ce1..d2ad45c101137 100644 --- a/arch/um/drivers/line.c +++ b/arch/um/drivers/line.c @@ -260,7 +260,7 @@ static irqreturn_t line_write_interrupt(int irq, void *data) if (err == 0) { spin_unlock(&line->lock); return IRQ_NONE; - } else if (err < 0) { + } else if ((err < 0) && (err != -EAGAIN)) { line->head = line->buffer; line->tail = line->buffer; } -- 2.20.1