Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp7613631imu; Wed, 14 Nov 2018 21:45:10 -0800 (PST) X-Google-Smtp-Source: AJdET5fjtphMjwAcfPXi3ocpfKmVP3PlprYlhBA5IIgszi/+Nhi8X1MUBQN4R+RdHxnyRR5XuF0Y X-Received: by 2002:a62:3687:: with SMTP id d129-v6mr5080482pfa.56.1542260710856; Wed, 14 Nov 2018 21:45:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542260710; cv=none; d=google.com; s=arc-20160816; b=RH8tO2JvisHAIn4SeI9vwokg+as9EEyOmXED3bnlyljklwkVIgEbamHKCF2cp5DFO+ 3TuxfPtAhfIdEOIlFrU3l7ATtv0AS0noMmBTdl9fMPaxL4ygalbgAY2H3NCJkKbrNZ7J WXFjXLwOPTiI7Wj/Klj0zcdx4TIhW2O6iKAUNCzX1ghFNNFn830EQbqnOdQ68ft3pOpW Bh+Rp+Qv0pJzPqw7nacTiScC29hUy/w1K4h1bmu2idvP6v/a7uow8XAw69c/V7VXYsPD usYK/gHSKmnf37ihhSfQXngvqnsgIWZLlR+ExngPzirV6JSLSFVPDclhMmrJjj7Bz7oF BMzQ== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=CC073abmBWGWHrBMs/ZuvoQr3VA7ASv8H9kd5YO+CaI=; b=oVA8VDPmbVfQGU45f93KQrDiFMTwRXAGFJjbwgGV+vc57EbFKt07XvZJZTOI5tehcd rm+7J5rS/2l7Ch9fsWJmQygqIrYNWuTjManhOM1JEl/nrRf8r1c+O7/+Bm3o9HLEm/ra SSvxB98wJqiSEIKBtcr80fHOlV1ljCcpqshpl9juSK1h7Iaa7Rv2Y0ZHIgVAZYobDpFT cOOtcV8tQ08GFFaJcU2gVrcikn1sooy15Nbp6TfBhon4ueZqUzkBCRy4tJaM/aTbdFuc pir+XDyuVw585u6PWrwk3EyNSxeZdQIkpXXa6k2g2EnznSU7Z6qW3jgD0RtTdDhAHhpG 0mtQ== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i35-v6si27370964plg.252.2018.11.14.21.44.55; Wed, 14 Nov 2018 21:45:10 -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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727099AbeKOPum (ORCPT + 99 others); Thu, 15 Nov 2018 10:50:42 -0500 Received: from mx1.redhat.com ([209.132.183.28]:52054 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726689AbeKOPum (ORCPT ); Thu, 15 Nov 2018 10:50:42 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A7813315487C; Thu, 15 Nov 2018 05:44:18 +0000 (UTC) Received: from localhost.localdomain (ovpn-12-127.pek2.redhat.com [10.72.12.127]) by smtp.corp.redhat.com (Postfix) with ESMTPS id A51B75DD7F; Thu, 15 Nov 2018 05:44:11 +0000 (UTC) Subject: Re: [PATCH 1/2 v6] x86/kexec_file: add e820 entry in case e820 type string matches to io resource name To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, kexec@lists.infradead.org, x86@kernel.org, tglx@linutronix.de, mingo@redhat.com, akpm@linux-foundation.org, dyoung@redhat.com, bhe@redhat.com References: <20181114072926.13312-1-lijiang@redhat.com> <20181114072926.13312-2-lijiang@redhat.com> <20181114112600.GD13926@zn.tnic> From: lijiang Message-ID: <9eb61523-7a08-24c4-ac15-050537bd9203@redhat.com> Date: Thu, 15 Nov 2018 13:44:07 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20181114112600.GD13926@zn.tnic> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.41]); Thu, 15 Nov 2018 05:44:18 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 在 2018年11月14日 19:26, Borislav Petkov 写道: > On Wed, Nov 14, 2018 at 03:29:25PM +0800, Lianbo Jiang wrote: >> When load the kernel image and initramfs by kexec_file_load syscall, it can >> not add exact e820 reserved type to kdump kernel e820 table. >> >> Kdump uses walk_iomem_res_desc() to iterate io resources, then adds matched >> desc to e820 table for kdump kernel. But, when convert the e820 type into >> the iores descriptors, several e820 types are converted to 'IORES_DES_NONE' >> in this function e820_type_to_iores_desc(). So the walk_iomem_res_desc() >> will get these unnecessary types(E820_TYPE_RAM/E820_TYPE_UNUSABLE/E820_TYPE >> _KERN) when iterate io resources by the 'IORES_DES_NONE'. >> >> It needs filter out these redundant type(such as E820_TYPE_RAM/E820_TYPE_ >> UNUSABLE/E820_TYPE_KERN) in order to add exact e820 reserved type to kdump >> kernel e820 table. Thus it also needs an extra checking in memmap_entry_ >> callback() to match the e820 type and resource name. > > Ok, it took me a while to parse what this is trying to say so let's > start from the top: > > * What resource type do you do need in the second kernel? > Thanks for your comment. The e820 reserved ranges need to be passed to the second kernel. > * The most important question: why? > At present, the upstream kernel does not pass the e820 reserved ranges to the second kernel, which might cause two problems: The first one is the MMCONFIG issue, the PCI MMCONFIG(extended mode) requires the reserved region otherwise it falls back to legacy mode, which might lead to the hot-plug device could not be recognized in kdump kernel. Another one is that the e820 reserved ranges do not setup in kdump kernel, which could cause kdump can't work in some machines. To know more information, please refer to the [PATCH 2/2 v6] patch log. > * If it is the reserved resource, why aren't you adding > IORES_DESC_RESERVED or so which to look for instead of this hacky string > comparison? > Adding the new descriptor 'IORES_DESC_RESERVED' is also a good solution. I will modify these patches based on your suggestion and post again. Thanks. Lianbo