[PATCH] Drivers: hv: vmbus: Use raw_smp_processor_id() in vmbus_connect()

Dexuan Cui decui at microsoft.com
Thu Aug 30 17:27:08 UTC 2018


> From: KY Srinivasan
> Sent: Thursday, August 30, 2018 09:28
> ...
> diff --git a/drivers/hv/connection.c b/drivers/hv/connection.c
> @@ -119,8 +119,9 @@ static int vmbus_negotiate_version(struct
> vmbus_channel_msginfo *msginfo,
>          */
>    if (version >= VERSION_WIN8_1) {
>        msg->target_vcpu =
> -            hv_cpu_number_to_vp_number(smp_processor_id());
> -       vmbus_connection.connect_cpu = smp_processor_id();

> +       hv_cpu_number_to_vp_number(get_cpu());
> +       vmbus_connection.connect_cpu = msg->target_vcpu;
> +       put_cpu();

While the warning " BUG: using smp_processor_id() in preemptible" can also
be avoided, the line 
+	vmbus_connection.connect_cpu = msg->target_vcpu;
seems incorrect, as the "connect_cpu" should reflect Linux CPU numbering
rather than Hyper-V's vCPU numbering.

-- Dexuan


More information about the devel mailing list