Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp2467870imm; Mon, 24 Sep 2018 05:02:20 -0700 (PDT) X-Google-Smtp-Source: ACcGV60Q3fwTpB2EctyBzwgJetYF7Fo8SY0oC95/k7RTzMM/ovchPetsX7MAxgW5tDL6MNrGpTig X-Received: by 2002:a17:902:167:: with SMTP id 94-v6mr10278531plb.142.1537790540897; Mon, 24 Sep 2018 05:02:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537790540; cv=none; d=google.com; s=arc-20160816; b=e/GA8QvKuzAfPyN7T+xhRzU+puo0dcEQPKLJZIxy/6zE3vIb0b3Ec/ktoDJjLAKzZG cfumhBkGccUIuhKhLiSIBlOyhHmlykOjf1syPYXNLs7aLl/nzUm74iYNa++6ZFEleG6t I0MSTlDFRKka/y9qFyUFVoLV4GhY0AJYwrtH1F00fkIZcwpRTmmGXHPR7gqBxccANiHE TyNWO8QDsNPX2epGlC+AniKNs5bHW/i5IW+gH/S8a+Qb0yZ8BkAsD9aYyuofIt3BrWb3 DDE02q3ZF+tfdQQ6wg5JqZIZO4dQxrskN/Vb2tqsOrUACF+Hcqwq2MsUNN0pZ491dHXe q6+Q== 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=V4KPK/DgoI/PpZRgN3ZHUbnPLUEvfBfDMnjWDLGdwO4=; b=xWechrEnE7H0hHx7z6QBRkeO0CvsgfhObp1L34Oy/uasEfQbPS9m5eH9PQ8WcPb0V1 YENwnBgGTWjOPFYC4BNStG8gpl1ug0CvWmz5Ksb1VZ55Yl9vYsRTkWiaiHzAgyQFk+yN deyLPcXKEBf0u//MnqASNSnUhFPOcIuOyHfWLVyIzBM6WhOsPjD1e3X43bIs747Yfw+p M0XQyvblNdjYVlXa/YEsngCLInRysZhd6KDkRrCQkG5ilaB4Di85RIpnVImuZm/wnPam lkhwiYd1HHWrq3hoV+3j9Dn1umkFcrGePTpjZAFrwS2jP67hYx6kHmn0gjfdup9N9g+y sCOA== 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 u5-v6si1088604pgm.268.2018.09.24.05.02.04; Mon, 24 Sep 2018 05:02: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 S1730706AbeIXSC4 (ORCPT + 99 others); Mon, 24 Sep 2018 14:02:56 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:53548 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730031AbeIXSCz (ORCPT ); Mon, 24 Sep 2018 14:02:55 -0400 Received: from localhost (ip-213-127-77-73.ip.prioritytelecom.net [213.127.77.73]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 9D228D64; Mon, 24 Sep 2018 12:01:08 +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.9 029/111] powerpc/powernv: opal_put_chars partial write fix Date: Mon, 24 Sep 2018 13:51:56 +0200 Message-Id: <20180924113107.448348248@linuxfoundation.org> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20180924113103.337261320@linuxfoundation.org> References: <20180924113103.337261320@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.9-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 @@ -369,7 +369,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) {