Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751994AbbDHH2B (ORCPT ); Wed, 8 Apr 2015 03:28:01 -0400 Received: from cantor2.suse.de ([195.135.220.15]:39091 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751159AbbDHH2A (ORCPT ); Wed, 8 Apr 2015 03:28:00 -0400 Date: Wed, 8 Apr 2015 09:25:48 +0200 From: Borislav Petkov To: Aravind Gopalakrishnan , =?utf-8?B?SsO2cmcgUsO2ZGVs?= Cc: Ingo Molnar , tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com, x86@kernel.org, bhelgaas@google.com, linux-kernel@vger.kernel.org, Suravee.Suthikulpanit@amd.com Subject: Re: [PATCH] x86, aperture: Check for GART before accessing GART registers Message-ID: <20150408072548.GC3611@pd.tnic> References: <551D6CF5.1010604@amd.com> <20150402165356.GE4579@pd.tnic> <551D7695.2010509@amd.com> <20150402171705.GF4579@pd.tnic> <20150402181903.GA8723@gmail.com> <5523125E.2010605@amd.com> <20150407123457.GA3681@pd.tnic> <5523EDC2.5080206@amd.com> <20150407145737.GB3681@pd.tnic> <55243F4B.2090307@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <55243F4B.2090307@amd.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2301 Lines: 63 On Tue, Apr 07, 2015 at 03:34:19PM -0500, Aravind Gopalakrishnan wrote: > On 4/7/2015 9:57 AM, Borislav Petkov wrote: > >On Tue, Apr 07, 2015 at 09:46:26AM -0500, Aravind Gopalakrishnan wrote: > >>Okay. I'll do that and correct the typos Ingo pointed out earlier and > >>resend. > >Btw, I think you should do the same in early_gart_iommu_check() too. > > > >Doing the testing this way would mean that we first are testing for GART > >hw presence and then do the rest of checks. If no GART hw, the rest of > >the checks are meaningless. > > > >Also, when testing do a "pci=noearly" boot which should make > > > > !early_pci_allowed() > > > >true and thus test that path too. > > > > Here are results from further testing: > 1. on platforms with both iommu and gart > - with pci=noearly, we break out of init routines in aperture_64.c > early. amd_iommu_init() will run through it's init routine. > - if amd_iommu_init() fails somewhere, we fall back to > gart_iommu_init() > - gart_iommu_init() fails since gart_iommu_aperture is not set. > - fall back to swiotlb. > - with amd_iommu=off > - init routines in aperture_64.c run fine as both amd_gart_present() > and early_pci_allowed() are true > - amd_iommu_detect() fails due to command line arg. > - fall back to gart iommu > - with pci=noearly and amd_iommu=off > - break out of aperture_64.c init routines, and amd_iommu_detect() > fails. > - fall back to swiotlb > > 2. on platform with no gart but iommu present, > - pci=noearly option is not relevant as we break before that due to > !amd_gart_present() > - if amd_iommu_init() fails somewhere, we fall back to swiotlb, else use > iommu > > 3. on platforms with no gart and no iommu > - use swiotlb regardless of any command line options passed I don't see anything out of the ordinary but then again I don't know this code so... @joro, can you please double-check? Thanks. -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply. -- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/