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  linux-hardening  linux-cve-announce  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]
Message-ID: <f1743fc8-3968-2977-27fe-19b4a3babef9@linux.intel.com>
Date:   Tue, 23 Mar 2021 09:57:13 +0800
From:   Lu Baolu <baolu.lu@...ux.intel.com>
To:     John Garry <john.garry@...wei.com>, dwmw2@...radead.org,
        joro@...tes.org, will@...nel.org
Cc:     baolu.lu@...ux.intel.com, iommu@...ts.linux-foundation.org,
        linux-kernel@...r.kernel.org, linuxarm@...wei.com,
        robin.murphy@....com
Subject: Re: [PATCH 2/3] iommu/vt-d: Remove IOVA domain rcache flushing for
 CPU offlining

On 3/1/21 8:12 PM, John Garry wrote:
> Now that the core code handles flushing per-IOVA domain CPU rcaches,
> remove the handling here.
> 
> Signed-off-by: John Garry <john.garry@...wei.com>
> ---
>   drivers/iommu/intel/iommu.c | 31 -------------------------------
>   include/linux/cpuhotplug.h  |  1 -
>   2 files changed, 32 deletions(-)
> 
> diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
> index ee0932307d64..d1e66e1b07b8 100644
> --- a/drivers/iommu/intel/iommu.c
> +++ b/drivers/iommu/intel/iommu.c
> @@ -4065,35 +4065,6 @@ static struct notifier_block intel_iommu_memory_nb = {
>   	.priority = 0
>   };
>   
> -static void free_all_cpu_cached_iovas(unsigned int cpu)
> -{
> -	int i;
> -
> -	for (i = 0; i < g_num_of_iommus; i++) {
> -		struct intel_iommu *iommu = g_iommus[i];
> -		struct dmar_domain *domain;
> -		int did;
> -
> -		if (!iommu)
> -			continue;
> -
> -		for (did = 0; did < cap_ndoms(iommu->cap); did++) {
> -			domain = get_iommu_domain(iommu, (u16)did);
> -
> -			if (!domain || domain->domain.type != IOMMU_DOMAIN_DMA)
> -				continue;
> -
> -			iommu_dma_free_cpu_cached_iovas(cpu, &domain->domain);
> -		}
> -	}
> -}
> -
> -static int intel_iommu_cpu_dead(unsigned int cpu)
> -{
> -	free_all_cpu_cached_iovas(cpu);
> -	return 0;
> -}
> -
>   static void intel_disable_iommus(void)
>   {
>   	struct intel_iommu *iommu = NULL;
> @@ -4388,8 +4359,6 @@ int __init intel_iommu_init(void)
>   	bus_set_iommu(&pci_bus_type, &intel_iommu_ops);
>   	if (si_domain && !hw_pass_through)
>   		register_memory_notifier(&intel_iommu_memory_nb);
> -	cpuhp_setup_state(CPUHP_IOMMU_INTEL_DEAD, "iommu/intel:dead", NULL,
> -			  intel_iommu_cpu_dead);
>   
>   	down_read(&dmar_global_lock);
>   	if (probe_acpi_namespace_devices())
> diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
> index cedac9986557..85996494bec1 100644
> --- a/include/linux/cpuhotplug.h
> +++ b/include/linux/cpuhotplug.h
> @@ -57,7 +57,6 @@ enum cpuhp_state {
>   	CPUHP_PAGE_ALLOC_DEAD,
>   	CPUHP_NET_DEV_DEAD,
>   	CPUHP_PCI_XGENE_DEAD,
> -	CPUHP_IOMMU_INTEL_DEAD,
>   	CPUHP_IOMMU_IOVA_DEAD,
>   	CPUHP_LUSTRE_CFS_DEAD,
>   	CPUHP_AP_ARM_CACHE_B15_RAC_DEAD,
> 

Reviewed-by: Lu Baolu <baolu.lu@...ux.intel.com>

Best regards,
baolu

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ