search for: hv_current_partition_id

Displaying 3 results from an estimated 3 matches for "hv_current_partition_id".

2020 Sep 15
0
[PATCH RFC v1 07/18] x86/hyperv: extract partition ID from Microsoft Hypervisor if necessary
...diff --git a/arch/x86/hyperv/hv_init.c b/arch/x86/hyperv/hv_init.c > index ebba4be4185d..0eec1ed32023 100644 > --- a/arch/x86/hyperv/hv_init.c > +++ b/arch/x86/hyperv/hv_init.c > @@ -30,6 +30,9 @@ > bool hv_root_partition; > EXPORT_SYMBOL_GPL(hv_root_partition); > > +u64 hv_current_partition_id; > +EXPORT_SYMBOL_GPL(hv_current_partition_id); > + > void *hv_hypercall_pg; > EXPORT_SYMBOL_GPL(hv_hypercall_pg); > > @@ -345,6 +348,26 @@ static struct syscore_ops hv_syscore_ops = { > .resume = hv_resume, > }; > > +void __init hv_get_partition_id(void) &gt...
2020 Sep 15
0
[PATCH RFC v1 09/18] x86/hyperv: provide a bunch of helper functions
...t; + pr_err("%s: cpu %u apic ID %u, %d\n", __func__, > + lp_index, apic_id, status); > + ret = status; > + } > + break; So if status == HV_STATUS_SUCCESS we break and avoid hv_call_deposit_pages() below? > + } > + ret = hv_call_deposit_pages(node, hv_current_partition_id, 1); > + > + } while (!ret); And if hv_call_deposit_pages() returns '0' we keep doing something? Sorry but I'm probably missing something important in the 'depositing' process, could you please add a comment explaining what's going on here? > + > + return ret;...
2020 Sep 15
0
[PATCH RFC v1 10/18] x86/hyperv: implement and use hv_smp_prepare_cpus
...ach_present_cpu(i) { > + if (i == 0) > + continue; > + ret = hv_call_add_logical_proc(numa_cpu_node(i), i, cpu_physical_id(i)); > + BUG_ON(ret); > + } > + > + for_each_present_cpu(i) { > + if (i == 0) > + continue; > + ret = hv_call_create_vp(numa_cpu_node(i), hv_current_partition_id, vp_index++, i); So vp_index variable is needed here to make sure there are no gaps? (or we could've just used 'i')? > + BUG_ON(ret); > + } > +#endif > +} > #endif > > static void __init ms_hyperv_init_platform(void) > @@ -359,6 +384,8 @@ static void __ini...