Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4730933pxj; Wed, 12 May 2021 11:55:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxYGyYKsjJdBQCnWMs8BsxHNXL3PePKYyY9wnD5lSKRCep7JRLU1zqFYcbSgfdI8iuSKUf/ X-Received: by 2002:aa7:c150:: with SMTP id r16mr44438499edp.82.1620845735898; Wed, 12 May 2021 11:55:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620845735; cv=none; d=google.com; s=arc-20160816; b=xvDO02Rj7AziK3Dv7pABRrGxy01yGI97IZZb933q8DDtKyZ7PSM+K+izOPRnWI2PUE /XaDBcnEljm4eYG6WshfFexN9sHkIdecqw+w7U9t4B/RgvIxLBfSUXf2rY3zGrbt2wNH iCgHJILyNxkSJlCle8EiOKjUAxYKeD0J6C3nwBW1O8iw6iMKJ7jNKFSZbIbrODEb1Z0C vAoKuLogj9V1jQ3WVQFkA591yw1sddX/539s4F3cj0SAzoTeeLJWIYHFzoM8232hu62p xMUfMmWuL3pDt3EwipwEvXHq90TassNCVE7VrY98QzTSnhW0gjyKbn23bAcfp4UMerm1 UHqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=cbHWjSOXjV58qH58iTZBiBeBo+4S429uWMOeUgHzDUI=; b=vcQHTds+e88TGeTTvZmdqeQxvL1wrwFF8mn4oR1fMBjhNSDLiVwhfl6mJEkdMmKaVD eQz7oeCRwz+/71iVk/jsaSNK8IiuQRZdvAipu8vcSVK9Wer5Pl17dDDENKg/mK0r4S/4 PK7WiXrQ3y9e9Pwx1n8enpakgdbuHUUlW1j0YUhV8fiA4xEa2LoiZORdO5HQ5Qtk9VG8 zPUMScrlnkpMPxRaLMQvtWzvURV34ZGM4qt58HqWjEV0wImv7U+DJr0IQR/Ov4KLVKLa t+CIo062MYB9QihvaT5oVW9oq13bUcb3Sutis6hd482CV1M87q7gEC4bHuaRU3Zio72S uMPA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=hP7K7QiB; 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=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t23si673634ejj.290.2021.05.12.11.55.10; Wed, 12 May 2021 11:55:35 -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=@linuxfoundation.org header.s=korg header.b=hP7K7QiB; 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=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1357205AbhELSiI (ORCPT + 99 others); Wed, 12 May 2021 14:38:08 -0400 Received: from mail.kernel.org ([198.145.29.99]:54570 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243292AbhELQhI (ORCPT ); Wed, 12 May 2021 12:37:08 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 765D961E24; Wed, 12 May 2021 16:02:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620835334; bh=+lrkiU/LuudPPNZXSfuLmMdIO6mIg3MnqG45CYPeOXs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hP7K7QiBrEuaqHlfuBUrbupJZjhDZAa0Vyo9k2WAA4gUBTtxPyrwZTyp+Y6bYN+4J oA8xmUlFQActXDydDH9EO7+Sbvm87XW/U6vqgcPJnv/n7MweF+IxROPv8y3KeXXEPb HaM06n3iTsbhoJdThxJa1ayObcgex13N41Qrr0+s= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Johan Hovold , Sasha Levin Subject: [PATCH 5.12 267/677] staging: fwserial: fix TIOCGSERIAL implementation Date: Wed, 12 May 2021 16:45:13 +0200 Message-Id: <20210512144846.099800908@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210512144837.204217980@linuxfoundation.org> References: <20210512144837.204217980@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Johan Hovold [ Upstream commit 5e84a66f3682af4f177bb24bb2ad5135c51f764a ] TIOCSSERIAL is a horrid, underspecified, legacy interface which for most serial devices is only useful for setting the close_delay and closing_wait parameters. The xmit_fifo_size parameter could be used to set the hardware transmit fifo size of a legacy UART when it could not be detected, but the interface is limited to eight bits and should be left unset when not used. Fix the fwserial implementation by dropping its custom interpretation of the unused xmit_fifo_size field, which was overflowed with the driver FIFO size. Also leave the type and flags fields unset as these cannot be changed. The close_delay and closing_wait parameters returned by TIOCGSERIAL are specified in centiseconds. The driver does not yet support changing closing_wait, but let's report back the default value actually used (30 seconds). Fixes: 7355ba3445f2 ("staging: fwserial: Add TTY-over-Firewire serial driver") Signed-off-by: Johan Hovold Link: https://lore.kernel.org/r/20210407102334.32361-5-johan@kernel.org Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/staging/fwserial/fwserial.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/staging/fwserial/fwserial.c b/drivers/staging/fwserial/fwserial.c index 2888b80a2c1a..0f4655d7d520 100644 --- a/drivers/staging/fwserial/fwserial.c +++ b/drivers/staging/fwserial/fwserial.c @@ -1218,13 +1218,12 @@ static int get_serial_info(struct tty_struct *tty, struct fwtty_port *port = tty->driver_data; mutex_lock(&port->port.mutex); - ss->type = PORT_UNKNOWN; - ss->line = port->port.tty->index; - ss->flags = port->port.flags; - ss->xmit_fifo_size = FWTTY_PORT_TXFIFO_LEN; + ss->line = port->index; ss->baud_base = 400000000; ss->close_delay = jiffies_to_msecs(port->port.close_delay) / 10; + ss->closing_wait = 3000; mutex_unlock(&port->port.mutex); + return 0; } -- 2.30.2