Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp2528755imm; Mon, 24 Sep 2018 06:00:20 -0700 (PDT) X-Google-Smtp-Source: ACcGV61EssyvI53IO6anwyozBCHBPASCYXWDVCwYSXlApXmf+Ms7VvVWfZsVQg4Zl+T4lgqCPJYQ X-Received: by 2002:a17:902:8b86:: with SMTP id ay6-v6mr10795036plb.25.1537794020208; Mon, 24 Sep 2018 06:00:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537794020; cv=none; d=google.com; s=arc-20160816; b=mtdTHy4IJ0YjaAuBmzFXrHqioi54s7kYMSHHeyJAhahg3dM98yYreKWsnY4woF7+Mp YIZnBX+vsiwKynxEPtwa2rulYv3DqjpJ3SYrJeNbGdcqdQmN5PGiDo12dHv3Y5ihwBNl pk4gTPbA7A3eLNo/VTi+BiWse5SHx3prKBkNaGiP/EYaZu2wR5DTd96LQVy0kW3MgsDC 3DkAom7OfUz5LQ40qkPh96CHcO8bqOwStQq9r4joSQ9VnZx4xu0brLOrvY8qpboSPFEB m82WQbF3vb/Ho1une/SGarRNsrT9FCfbKdMcb3W8puVil/iJylLaFpLzw1zr2cJcHdTh rvSQ== 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; bh=QKagvvnvthVg5VKjBrf6ob9pvbWlsJBa5jT53CWQsX8=; b=XMk+Us+ZkE+Pz8QfXgfCK3C5aS7d+UH/ltbCgUlmWeL4WfIRg1gSEgTiRtoqjMn/qi L+v3tRkRdknQWw4Qfpy5DfoqvxrFj6RFrs8Hs0pYATqZfRiWCD1YAqzF2Yyo5ikkiU1T uW16ISKxizxGZuxQN+C5XdyZALQ0qj4XQIZn9pgq34dBWD2lZfS8/Ij38NtplSSuQ6gK +shF2Wxho6hnPqLdka6sccGkoa7FwWAeQclMIwTcMVoqDvGoJtDxfflYwKTqoi5xl9Km ClYdlAqvEySg85Z/p4KmNVhncg2pv5kcY84dJdyeFOIt6/air4a3INCbSuB9tOlmwFFZ 3Kow== 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 l13-v6si7959811pgb.534.2018.09.24.06.00.05; Mon, 24 Sep 2018 06:00:20 -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 S1729436AbeIXR4R (ORCPT + 99 others); Mon, 24 Sep 2018 13:56:17 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:51748 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728388AbeIXR4Q (ORCPT ); Mon, 24 Sep 2018 13:56:16 -0400 Received: from localhost (ip-213-127-77-73.ip.prioritytelecom.net [213.127.77.73]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 351791072; Mon, 24 Sep 2018 11:54:32 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Benjamin Herrenschmidt , Nicholas Piggin , Michael Ellerman , Sasha Levin Subject: [PATCH 4.4 19/70] powerpc/powernv: opal_put_chars partial write fix Date: Mon, 24 Sep 2018 13:52:18 +0200 Message-Id: <20180924113100.675368931@linuxfoundation.org> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20180924113058.420454070@linuxfoundation.org> References: <20180924113058.420454070@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review 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.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Nicholas Piggin [ Upstream commit bd90284cc6c1c9e8e48c8eadd0c79574fcce0b81 ] The intention here is to consume and discard the remaining buffer upon error. This works if there has not been a previous partial write. If there has been, then total_len is no longer total number of bytes to copy. total_len is always "bytes left to copy", so it should be added to written bytes. This code may not be exercised any more if partial writes will not be hit, but this is a small bugfix before a larger change. Reviewed-by: Benjamin Herrenschmidt Signed-off-by: Nicholas Piggin Signed-off-by: Michael Ellerman Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- arch/powerpc/platforms/powernv/opal.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/arch/powerpc/platforms/powernv/opal.c +++ b/arch/powerpc/platforms/powernv/opal.c @@ -371,7 +371,7 @@ int opal_put_chars(uint32_t vtermno, con /* Closed or other error drop */ if (rc != OPAL_SUCCESS && rc != OPAL_BUSY && rc != OPAL_BUSY_EVENT) { - written = total_len; + written += total_len; break; } if (rc == OPAL_SUCCESS) {