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]
Date:   Mon, 31 May 2021 10:57:32 +0000
From:   Wei Liu <wei.liu@...nel.org>
To:     Praveen Kumar <kumarpraveen@...ux.microsoft.com>
Cc:     linux-hyperv@...r.kernel.org, linux-kernel@...r.kernel.org,
        kys@...rosoft.com, haiyangz@...rosoft.com, sthemmin@...rosoft.com,
        wei.liu@...nel.org, decui@...rosoft.com, tglx@...utronix.de,
        mingo@...hat.com, bp@...en8.de, nunodasneves@...ux.microsoft.com,
        viremana@...ux.microsoft.com, sunilmut@...rosoft.com,
        Michael Kelley <mikelley@...rosoft.com>
Subject: Re: [PATCH] x86/hyperv: LP creation with lp_index on same CPU-id

On Mon, May 31, 2021 at 01:10:46PM +0530, Praveen Kumar wrote:
> The hypervisor expects the lp_index to be same as cpu-id during LP creation
> This fix correct the same, as cpu_physical_id can give different cpu-id.

Code looks fine to me, but the commit message can be made clearer.

"""
The hypervisor expects the logical processor index to be the same as
CPU's id during logical processor creation. Using cpu_physical_id
confuses Microsoft Hypervisor's scheduler. That causes the root
partition not boot when core scheduler is used.

This patch removes the call to cpu_physical_id and uses the CPU index
directly for bringing up logical processor. This scheme works for both
classic scheduler and core scheduler.

Fixes: 333abaf5abb3 (x86/hyperv: implement and use hv_smp_prepare_cpus)
"""

No action is required from you. If you are fine with this commit message
I can incorporate it and update the subject line when committing this
patch.

> 
> Signed-off-by: Praveen Kumar <kumarpraveen@...ux.microsoft.com>
> ---
>  arch/x86/kernel/cpu/mshyperv.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
> index 22f13343b5da..4fa0a4280895 100644
> --- a/arch/x86/kernel/cpu/mshyperv.c
> +++ b/arch/x86/kernel/cpu/mshyperv.c
> @@ -236,7 +236,7 @@ static void __init hv_smp_prepare_cpus(unsigned int max_cpus)
>  	for_each_present_cpu(i) {
>  		if (i == 0)
>  			continue;
> -		ret = hv_call_add_logical_proc(numa_cpu_node(i), i, cpu_physical_id(i));
> +		ret = hv_call_add_logical_proc(numa_cpu_node(i), i, i);
>  		BUG_ON(ret);
>  	}
>  
> -- 
> 2.25.1
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ