Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp990521yba; Sat, 4 May 2019 18:30:53 -0700 (PDT) X-Google-Smtp-Source: APXvYqzRG+SN2CVOiRUPG7k9nFse0Iy2hsJ767jVM+oWSgcCnsF+hVL8fdcRtEuCxfroFsWqVhMe X-Received: by 2002:a17:902:9a46:: with SMTP id x6mr21736108plv.71.1557019853897; Sat, 04 May 2019 18:30:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557019853; cv=none; d=google.com; s=arc-20160816; b=YdYlCaLyFAxTTSLQPrgBqfawEGQ6L6cErLimW4O6dnLjrukbntDjCUYRf09qt/MiHB TIKW0pkpljQk/pKWy4jK/nyYI3Il3+B3V4eimNYfPHyzz6wNgeJRxlUhs6BzlXZuAf5c NyPZoUdjd17AELpkwi6WEsxut5nqUG2tdMOACrthGNYxKBHfijS52MC0LcuV80iJdrvx g2mus8gv97iryrgN9J07GG0jDaSrjHrj+R8OwEiJul6dlcSkdiqi0EL3KAkpVGZYQ6hj U7Vq1p2MeAkhhiZdth3Tpoa70seFdSW+ghaBkB3yfy9a0koHzXd9sV7uF1bktqQu7wvL A1lA== 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:to:subject:cc; bh=X3OOKf33H0EsvBJV5PpeXdLjjWnI3Vc6GGjC41JSs1I=; b=qc7d6dDvXpychwjuiWPHVAAIxXVIkjKgKhaipinVJI301gq7UDvMCT5j2sAIDHMGd9 qW2mtyieOWII08rBIz3zqCRcPbltmw9LK8N3mWNDNNVCgAyKatx7uDquFzGstTtltsms upKmX1unPKuiaUNUkmBDKvrJtb9BIGoGxM0cZwmWlV83nT7bA0i4Q9gWkUpMGAydqii1 mvi1d484mwmECa1q3TvFgVZpjAGa1rBXcI2LQtSwbj4k9vM6X1rhLN12vVGOapa5wUXh cybu/y4i7n0CJd4ARWTxetKUNJQyBPzvPsk7TEal8AZijE+1XiahDg//ndkA7WUO98Fl tp+Q== 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w11si9065425pge.187.2019.05.04.18.30.38; Sat, 04 May 2019 18:30:53 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727469AbfEEB3Q (ORCPT + 99 others); Sat, 4 May 2019 21:29:16 -0400 Received: from mga06.intel.com ([134.134.136.31]:37208 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727127AbfEEB3Q (ORCPT ); Sat, 4 May 2019 21:29:16 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 May 2019 18:29:15 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,431,1549958400"; d="scan'208";a="146324031" Received: from allen-box.sh.intel.com (HELO [10.239.159.136]) ([10.239.159.136]) by fmsmga008.fm.intel.com with ESMTP; 04 May 2019 18:29:11 -0700 Cc: baolu.lu@linux.intel.com, Heiko Stuebner , kvm@vger.kernel.org, Will Deacon , David Brown , Thierry Reding , linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Krzysztof Kozlowski , Jonathan Hunter , linux-rockchip@lists.infradead.org, Kukjin Kim , Gerald Schaefer , Andy Gross , linux-tegra@vger.kernel.org, Marc Zyngier , linux-arm-msm@vger.kernel.org, Alex Williamson , linux-mediatek@lists.infradead.org, Matthias Brugger , Thomas Gleixner , linux-arm-kernel@lists.infradead.org, Robin Murphy , linux-kernel@vger.kernel.org, murphyt7@tcd.ie, David Woodhouse Subject: Re: [RFC 2/7] iommu/vt-d: Remove iova handling code from non-dma ops path To: Tom Murphy , iommu@lists.linux-foundation.org References: <20190504132327.27041-1-tmurphy@arista.com> <20190504132327.27041-3-tmurphy@arista.com> From: Lu Baolu Message-ID: <9405cd93-fc16-822e-0b34-4ba2229f176d@linux.intel.com> Date: Sun, 5 May 2019 09:22:47 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On 5/5/19 9:19 AM, Lu Baolu wrote: > Hi, > > On 5/4/19 9:23 PM, Tom Murphy via iommu wrote: >> @@ -4181,58 +4168,37 @@ static int intel_iommu_memory_notifier(struct >> notifier_block *nb, >>                          unsigned long val, void *v) >>   { >>       struct memory_notify *mhp = v; >> -    unsigned long long start, end; >> -    unsigned long start_vpfn, last_vpfn; >> +    unsigned long start_vpfn = mm_to_dma_pfn(mhp->start_pfn); >> +    unsigned long last_vpfn = mm_to_dma_pfn(mhp->start_pfn + >> +            mhp->nr_pages - 1); >>       switch (val) { >>       case MEM_GOING_ONLINE: >> -        start = mhp->start_pfn << PAGE_SHIFT; >> -        end = ((mhp->start_pfn + mhp->nr_pages) << PAGE_SHIFT) - 1; >> -        if (iommu_domain_identity_map(si_domain, start, end)) { >> -            pr_warn("Failed to build identity map for [%llx-%llx]\n", >> -                start, end); >> +        if (iommu_domain_identity_map(si_domain, start_vpfn, >> +                    last_vpfn)) { >> +            pr_warn("Failed to build identity map for [%lx-%lx]\n", >> +                start_vpfn, last_vpfn); >>               return NOTIFY_BAD; >>           } >>           break; > > Actually we don't need to update the si_domain if iommu hardware > supports pass-through mode. This should be made in a separated patch > anyway. Oh! please ignore it. This callback is only registered when hardware doesn't support pass through mode. if (si_domain && !hw_pass_through) register_memory_notifier(&intel_iommu_memory_nb); Best regards, Lu Baolu