|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v9 08/15] microcode/amd: call svm_host_osvw_init() in common code
On 19.08.2019 03:25, Chao Gao wrote:
> --- a/xen/arch/x86/microcode_amd.c
> +++ b/xen/arch/x86/microcode_amd.c
> @@ -594,10 +594,6 @@ static int cpu_request_microcode(const void *buf, size_t
> bufsize)
> xfree(mc_amd);
>
> out:
> -#if CONFIG_HVM
> - svm_host_osvw_init();
> -#endif
> -
> /*
> * In some cases we may return an error even if processor's microcode has
> * been updated. For example, the first patch in a container file is
> loaded
> @@ -609,27 +605,28 @@ static int cpu_request_microcode(const void *buf,
> size_t bufsize)
>
> static int start_update(void)
> {
> -#if CONFIG_HVM
> /*
> - * We assume here that svm_host_osvw_init() will be called on each cpu
> (from
> - * cpu_request_microcode()).
> - *
> - * Note that if collect_cpu_info() returns an error then
> - * cpu_request_microcode() will not invoked thus leaving OSVW bits not
> - * updated. Currently though collect_cpu_info() will not fail on
> processors
> - * supporting OSVW so we will not deal with this possibility.
> + * svm_host_osvw_init() will be called on each cpu by calling
> '.end_update'
> + * in common code.
> */
> svm_host_osvw_reset();
> -#endif
>
> return 0;
> }
>
> +static void end_update(void)
> +{
> + svm_host_osvw_init();
> +}
> +
> static const struct microcode_ops microcode_amd_ops = {
> .cpu_request_microcode = cpu_request_microcode,
> .collect_cpu_info = collect_cpu_info,
> .apply_microcode = apply_microcode,
> +#if CONFIG_HVM
I realize it was wrong in the old code as well, but please use
#ifdef instead of #if.
> .start_update = start_update,
> + .end_update = end_update,
> +#endif
With this there'll be two warnings about unused functions when
!HVM - you need to frame the implementations with an #ifdef as
well.
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |