lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sun, 5 May 2019 09:22:47 +0800
From:   Lu Baolu <baolu.lu@...ux.intel.com>
To:     Tom Murphy <tmurphy@...sta.com>, iommu@...ts.linux-foundation.org
Cc:     baolu.lu@...ux.intel.com, Heiko Stuebner <heiko@...ech.de>,
        kvm@...r.kernel.org, Will Deacon <will.deacon@....com>,
        David Brown <david.brown@...aro.org>,
        Thierry Reding <thierry.reding@...il.com>,
        linux-s390@...r.kernel.org, linux-samsung-soc@...r.kernel.org,
        Krzysztof Kozlowski <krzk@...nel.org>,
        Jonathan Hunter <jonathanh@...dia.com>,
        linux-rockchip@...ts.infradead.org, Kukjin Kim <kgene@...nel.org>,
        Gerald Schaefer <gerald.schaefer@...ibm.com>,
        Andy Gross <andy.gross@...aro.org>,
        linux-tegra@...r.kernel.org, Marc Zyngier <marc.zyngier@....com>,
        linux-arm-msm@...r.kernel.org,
        Alex Williamson <alex.williamson@...hat.com>,
        linux-mediatek@...ts.infradead.org,
        Matthias Brugger <matthias.bgg@...il.com>,
        Thomas Gleixner <tglx@...utronix.de>,
        linux-arm-kernel@...ts.infradead.org,
        Robin Murphy <robin.murphy@....com>,
        linux-kernel@...r.kernel.org, murphyt7@....ie,
        David Woodhouse <dwmw2@...radead.org>
Subject: Re: [RFC 2/7] iommu/vt-d: Remove iova handling code from non-dma ops
 path

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

Powered by blists - more mailing lists