Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp924313imu; Tue, 11 Dec 2018 09:37:42 -0800 (PST) X-Google-Smtp-Source: AFSGD/WEmK7LfZ5rQeQozx+CdviwoSonATR5uDI1KSgk/69I55AHNh73WvQsRxmy03R7M7Gg0ti1 X-Received: by 2002:a17:902:7896:: with SMTP id q22mr17125692pll.280.1544549862645; Tue, 11 Dec 2018 09:37:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544549862; cv=none; d=google.com; s=arc-20160816; b=ptp6jvxv9yI2RPokRfVXhOyLS2BHW/5Lz4b/Typ8t8xHIoiM7QxVdEjzt5vaMGAz0l IdC39YAlRfzxvf2c9D7ZgcvH7kURZbvngQAtPqdRzlHGd4wz2FZiTgrOkVJ8RPL8nqD1 WlsQU9nKF8fr1WRqdF0IBJjqa+2+G6J6UETa/Z46JTeO0qa6y47AUnbUj6YNiFSImpJu IzR2ZNFH3o7f8F0u9Crk+9d+un/2mo2mqWN3xQtBt80+MOA9xYJL6oZwYUvGXvJLoKg7 w6abAy2+V9lzsGxZUsO7l+6L5jI1r88s03F0p8oRZqPVWkB3LzlR4jdErXgUFLSdw4jy c7Mg== 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 :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=PzcCzjBTBgSEHDJLNeEwa8ArDLHrSje9lT8oqqsYhic=; b=oAPsWEMLtZc2h0KKTyuTr1kLhXwzdAfbjutMr+jtZjhVVbtoXZRlk9NEH68QmxOpIj ikkqwVotT52k/UaZTdLkQdkeDngvsYRhwfNJ+UrXPBTJwBN5sx9nT271bE9gN8VvtlNp rpYyeEfvZjjesDI0HiSvPnYZvgldgGtkk/CWudfeUF8yUXEeOO5DM8ln/SUgAsNStivv PguJUZpvMUCJloVvNTdy/59kLdOinfyENnQHGUFjyK7PPHtwjMuOgqoBdviVyRKnLoSC E5Jdp1FjSWsVYTgoB2ffgtGXzRWMYSQYU3Et8vB3Yt0/KyEWGz708BwA2pYHPWQ8lW0B veag== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=v3r9aWOo; 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 v14si13798535pfc.76.2018.12.11.09.37.27; Tue, 11 Dec 2018 09:37:42 -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=pass header.i=@kernel.org header.s=default header.b=v3r9aWOo; 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 S1729944AbeLKPx2 (ORCPT + 99 others); Tue, 11 Dec 2018 10:53:28 -0500 Received: from mail.kernel.org ([198.145.29.99]:42060 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729927AbeLKPxW (ORCPT ); Tue, 11 Dec 2018 10:53:22 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (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 9DB2620855; Tue, 11 Dec 2018 15:53:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1544543602; bh=DmP3cRKWQKG54BAanPuXh1HWk5cuA2PGcTWgDcurLkk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=v3r9aWOoe1UaSXyyftOnAEc38KGEnU83v3svki1iYQciGQmvH02aWS+o22hmaIPja HTS75OVE7d/OUciUX/hUiIFFyp2xm3dwIn/wyB3AA2dXw128wbpjP6nPa4ISSLpIfG Ves2BiD59ouUROwj4+nQT3AY6Z6bqt8PoDhujvOQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Geert Uytterhoeven , Rob Herring , Jiri Slaby , Chanho Park Subject: [PATCH 4.14 60/67] tty: do not set TTY_IO_ERROR flag if console port Date: Tue, 11 Dec 2018 16:42:00 +0100 Message-Id: <20181211151633.408720788@linuxfoundation.org> X-Mailer: git-send-email 2.20.0 In-Reply-To: <20181211151630.378216233@linuxfoundation.org> References: <20181211151630.378216233@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Chanho Park commit 2a48602615e0a2f563549c7d5c8d507f904cf96e upstream. Since Commit 761ed4a94582 ('tty: serial_core: convert uart_close to use tty_port_close') and Commit 4dda864d7307 ('tty: serial_core: Fix serial console crash on port shutdown), a serial port which is used as console can be stuck when logging out if there is a remained process. After logged out, agetty will try to grab the serial port but it will be failed because the previous process did not release the port correctly. To fix this, TTY_IO_ERROR bit should not be enabled of tty_port_close if the port is console port. Reproduce step: - Run background processes from serial console $ while true; do sleep 10; done & - Log out $ logout -> Stuck - Read journal log by journalctl | tail Jan 28 16:07:01 ubuntu systemd[1]: Stopped Serial Getty on ttyAMA0. Jan 28 16:07:01 ubuntu systemd[1]: Started Serial Getty on ttyAMA0. Jan 28 16:07:02 ubuntu agetty[1643]: /dev/ttyAMA0: not a tty Fixes: 761ed4a94582 ("tty: serial_core: convert uart_close to use tty_port_close") Cc: Geert Uytterhoeven Cc: Rob Herring Cc: Jiri Slaby Signed-off-by: Chanho Park Cc: stable Signed-off-by: Greg Kroah-Hartman --- drivers/tty/tty_port.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- a/drivers/tty/tty_port.c +++ b/drivers/tty/tty_port.c @@ -639,7 +639,8 @@ void tty_port_close(struct tty_port *por if (tty_port_close_start(port, tty, filp) == 0) return; tty_port_shutdown(port, tty); - set_bit(TTY_IO_ERROR, &tty->flags); + if (!port->console) + set_bit(TTY_IO_ERROR, &tty->flags); tty_port_close_end(port, tty); tty_port_tty_set(port, NULL); }