From: Dave Young <dyoung@redhat.com>
To: Toshi Kani <toshi.kani@hpe.com>
Cc: akpm@linux-foundation.org, bp@alien8.de,
linux-arch@vger.kernel.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org,
Dan Williams <dan.j.williams@intel.com>,
x86@kernel.org, linux-nvdimm@ml01.01.org,
kexec@lists.infradead.org
Subject: Re: [PATCH v2 14/16] x86,nvdimm,kexec: Use walk_iomem_res_desc() for iomem search
Date: Mon, 4 Jan 2016 19:04:27 +0800 [thread overview]
Message-ID: <20160104110427.GA2965@dhcp-128-65.nay.redhat.com> (raw)
In-Reply-To: <20160104092545.GA7033@dhcp-128-65.nay.redhat.com>
On 01/04/16 at 05:25pm, Dave Young wrote:
> Hi, Toshi,
>
> On 12/25/15 at 03:09pm, Toshi Kani wrote:
> > Change to call walk_iomem_res_desc() for searching resource entries
> > with the following names:
> > "ACPI Tables"
> > "ACPI Non-volatile Storage"
> > "Persistent Memory (legacy)"
> > "Crash kernel"
> >
> > Note, the caller of walk_iomem_res() with "GART" is left unchanged
> > because this entry may be initialized by out-of-tree drivers, which
> > do not have 'desc' set to IORES_DESC_GART.
>
> Found below commit which initialize the GART entry:
> commit 56dd669a138c40ea6cdae487f233430d12372767
> Author: Aaron Durbin <adurbin@google.com>
> Date: Tue Sep 26 10:52:40 2006 +0200
>
> [PATCH] Insert GART region into resource map
>
> Patch inserts the GART region into the iomem resource map. The GART will then
> be visible within /proc/iomem. It will also allow for other users
> utilizing the GART to subreserve the region (agp or IOMMU).
>
> Signed-off-by: Aaron Durbin <adurbin@google.com>
>
> But later it was reverted:
> commit 707d4eefbdb31f8e588277157056b0ce637d6c68
> Author: Bjorn Helgaas <bhelgaas@google.com>
> Date: Tue Mar 18 14:26:12 2014 -0600
>
> Revert "[PATCH] Insert GART region into resource map"
>
> This reverts commit 56dd669a138c, which makes the GART visible in
> /proc/iomem. This fixes a regression: e501b3d87f00 ("agp: Support 64-bit
> APBASE") exposed an existing problem with a conflict between the GART
> region and a PCI BAR region.
>
> The GART addresses are bus addresses, not CPU addresses, and therefore
> should not be inserted in iomem_resource.
>
> On many machines, the GART region is addressable by the CPU as well as by
> an AGP master, but CPU addressability is not required by the spec. On some
> of these machines, the GART is mapped by a PCI BAR, and in that case, the
> PCI core automatically inserts it into iomem_resource, just as it does for
> all BARs.
>
> Inserting it here means we'll have a conflict if the PCI core later tries
> to claim the GART region, so let's drop the insertion here.
>
> The conflict indirectly causes X failures, as reported by Jouni in the
> bugzilla below. We detected the conflict even before e501b3d87f00, but
> after it the AGP code (fix_northbridge()) uses the PCI resource (which is
> zeroed because of the conflict) instead of reading the BAR again.
>
> Conflicts:
> arch/x86_64/kernel/aperture.c
>
> Fixes: e501b3d87f00 agp: Support 64-bit APBASE
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=72201
> Reported-and-tested-by: Jouni Mettala <jtmettala@gmail.com>
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
>
>
> For amd64 agp, currently the region name is "aperture" instead:
> drivers/char/agp/amd64-agp.c: agp_aperture_valid()
>
> This may not be the only case, but I doubt that anyone is testing this since
> long time ago kexec-tools excluding the 'GART' region. Kexec-tools and kexec_file
> may need update to use "aperture" if someone can test it.
>
> I think adding an enum value for compatibility is reasonable, we do not care
> about third party drivers in mainline.
Hmm, rethink about it, the new kernel will not export "GART" regions thus the in-kernel loader should never see such regions as long as there's no other drivers exporting it. Thus dropping the code chunk in crash.c about 'GART' should be fine.
Thanks
Dave
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2016-01-04 11:04 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-25 22:09 [PATCH v2 01/16] resource: Add System RAM resource type Toshi Kani
2015-12-25 22:09 ` [PATCH v2 02/16] resource: make resource flags handled properly Toshi Kani
2015-12-25 22:09 ` [PATCH v2 03/16] resource: Add I/O resource descriptor Toshi Kani
2015-12-25 22:09 ` [PATCH v2 04/16] x86/e820: Set System RAM type and descriptor Toshi Kani
2015-12-25 22:09 ` [PATCH v2 05/16] ia64: " Toshi Kani
2015-12-25 22:09 ` [PATCH v2 06/16] arch: Set IORESOURCE_SYSTEM_RAM to System RAM Toshi Kani
2015-12-25 22:09 ` [PATCH v2 07/16] kexec: " Toshi Kani
2015-12-25 22:09 ` [PATCH v2 08/16] xen, mm: " Toshi Kani
2016-01-04 11:41 ` [Xen-devel] " David Vrabel
2015-12-25 22:09 ` [PATCH v2 09/16] drivers: Initialize resource entry to zero Toshi Kani
2015-12-28 21:37 ` Simon Horman
2015-12-25 22:09 ` [PATCH v2 10/16] resource: Change walk_system_ram to use System RAM type Toshi Kani
2015-12-25 22:09 ` [PATCH v2 11/16] arm/samsung: Change s3c_pm_run_res() " Toshi Kani
2015-12-25 22:09 ` [PATCH v2 12/16] memremap: Change region_intersects() to take @flags and @desc Toshi Kani
2015-12-25 22:09 ` [PATCH v2 13/16] resource: Add walk_iomem_res_desc() Toshi Kani
2015-12-25 22:09 ` [PATCH v2 14/16] x86,nvdimm,kexec: Use walk_iomem_res_desc() for iomem search Toshi Kani
2015-12-26 10:38 ` Borislav Petkov
2015-12-27 0:31 ` Toshi Kani
2015-12-27 2:12 ` [PATCH v2 14/16] x86, nvdimm, kexec: " Minfei Huang
[not found] ` <20151227021257.GA13560-0VdLhd/A9Pl6Yz8KYMO23x/sF2h8X+2i0E9HWUfgJXw@public.gmane.org>
2015-12-27 10:24 ` Borislav Petkov
2016-01-04 9:29 ` Dave Young
[not found] ` <20160104092937.GB7033-0VdLhd/A9Pl+NNSt+8eSiB/sF2h8X+2i0E9HWUfgJXw@public.gmane.org>
2016-01-04 12:26 ` Borislav Petkov
2016-01-04 17:57 ` Toshi Kani
2016-01-04 19:41 ` Borislav Petkov
2016-01-04 19:45 ` Toshi Kani
2016-01-05 5:20 ` Dave Young
2015-12-26 16:05 ` [PATCH v2 14/16] x86,nvdimm,kexec: " Minfei Huang
2015-12-27 0:39 ` Toshi Kani
2016-01-04 9:25 ` Dave Young
2016-01-04 11:04 ` Dave Young [this message]
2015-12-25 22:09 ` [PATCH v2 15/16] checkpatch: Add warning on deprecated walk_iomem_res Toshi Kani
2015-12-26 0:05 ` Joe Perches
2015-12-27 0:52 ` Toshi Kani
2015-12-25 22:09 ` [PATCH v2 16/16] ACPI/EINJ: Allow memory error injection to NVDIMM Toshi Kani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160104110427.GA2965@dhcp-128-65.nay.redhat.com \
--to=dyoung@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=bp@alien8.de \
--cc=dan.j.williams@intel.com \
--cc=kexec@lists.infradead.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-nvdimm@ml01.01.org \
--cc=toshi.kani@hpe.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).