Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp3411144pxf; Mon, 29 Mar 2021 01:13:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy7i/OBC1GYE53yno+VBDMzRnYzQa4+mQTylWZui4jSr+Y9yJ6ZrYqSUiKQs6Nwnsajh3Yi X-Received: by 2002:a05:6402:1613:: with SMTP id f19mr27758800edv.222.1617005603003; Mon, 29 Mar 2021 01:13:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1617005602; cv=none; d=google.com; s=arc-20160816; b=RX+OzTHGHNfYI5Rm4EQ8PN6uo4j/qE5xPl6XUfnvm0Zly/BrxYvTdloAGvzItdghKa 4//zRCCbIHzk2QO48QCb0MtvOwUixzEWfrilAO261KwYv/8TzDxSJ7trFL+qILKa0CVw MstYMDbayRwTwFGotH7hfCruUqFyc4FGSYGAgWvSik9UpfXzCfi0qEtN57vntNERp7Wk JDJPdSKGnUttXAlCFRJtmKid1fA5sa7uZWNchAqb4QQq8tp1+zCmNYNehlTpyRg+R5kI 2x1s48gV8OuGoKp8ZZRCQ1zc/aWPuVP/XdNyVRObdMu2G0J5XcY7SGWojaCC+ebV70jD JfVw== 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=z9KGBomPaYDtoPbHrlfrluSs25+YE9nD2d/rKIFKDoY=; b=RW7iMnRwEX+PgLIm8m4xvsDgvH3WzD/ld++9K2cvZGMK4RRwH9nQAhl1icz/ANGThr issFDxEsIcYBFpna+0OD/anY6EsKDBXT4cGcWMuz3nYu0JRDO2Y7w/Pz1ra7UlxOOnYw TWsYZmNOKGuRDeZ6rjLp3DGLdu0F1JqqADQAyIGWb3u95K7NyBU1Jh9XUY7fc0RNT1ZJ I/3IdtS1sIUtJHSYy7zGiDB1hxMh06v7LChHsiNH+UDckCMYWrBUenNzG/2NgtMVCiKy F3PLI1dvoI7c8VYs47gxKUXstFuhHw0I9M+/N0qZJDdmviq2mFoJOfa7YPBl+75xVqev 4kVA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=W2POH8oE; 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 p15si12742193ejr.236.2021.03.29.01.13.00; Mon, 29 Mar 2021 01:13:22 -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=W2POH8oE; 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 S231631AbhC2IJv (ORCPT + 99 others); Mon, 29 Mar 2021 04:09:51 -0400 Received: from mail.kernel.org ([198.145.29.99]:49136 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231801AbhC2IFz (ORCPT ); Mon, 29 Mar 2021 04:05:55 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id BD3936197C; Mon, 29 Mar 2021 08:05:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1617005155; bh=9MQyLpCails/PN83xj+HAIVPTBA/Vb/18ZlIJRwSNJk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=W2POH8oE4ZPgVq0VUXbEGxejUMICY4oX0eNH/SHs/kqIkHsVmsNKj2sOa744IpFUV cM4sAmTOk0ZDfbrpjJTpd4RX4nj2qiQG6Tlo5N+141N/VJgTySrOLVooR4BqogP7lz uTY831iG1Do2NGW3SD/EniEeD7ugIxVSBP0SWIvs= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Pavel Tatashin , Tyler Hicks , Will Deacon , Sasha Levin Subject: [PATCH 4.14 45/59] arm64: kdump: update ppos when reading elfcorehdr Date: Mon, 29 Mar 2021 09:58:25 +0200 Message-Id: <20210329075610.364027927@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210329075608.898173317@linuxfoundation.org> References: <20210329075608.898173317@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: Pavel Tatashin [ Upstream commit 141f8202cfa4192c3af79b6cbd68e7760bb01b5a ] The ppos points to a position in the old kernel memory (and in case of arm64 in the crash kernel since elfcorehdr is passed as a segment). The function should update the ppos by the amount that was read. This bug is not exposed by accident, but other platforms update this value properly. So, fix it in ARM64 version of elfcorehdr_read() as well. Signed-off-by: Pavel Tatashin Fixes: e62aaeac426a ("arm64: kdump: provide /proc/vmcore file") Reviewed-by: Tyler Hicks Link: https://lore.kernel.org/r/20210319205054.743368-1-pasha.tatashin@soleen.com Signed-off-by: Will Deacon Signed-off-by: Sasha Levin --- arch/arm64/kernel/crash_dump.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm64/kernel/crash_dump.c b/arch/arm64/kernel/crash_dump.c index f46d57c31443..76905a258550 100644 --- a/arch/arm64/kernel/crash_dump.c +++ b/arch/arm64/kernel/crash_dump.c @@ -67,5 +67,7 @@ ssize_t copy_oldmem_page(unsigned long pfn, char *buf, ssize_t elfcorehdr_read(char *buf, size_t count, u64 *ppos) { memcpy(buf, phys_to_virt((phys_addr_t)*ppos), count); + *ppos += count; + return count; } -- 2.30.1