On 18.10.2021 12:42, Ian Jackson wrote: > Jan Beulich writes ("[PATCH] x86/HVM: correct cleanup after failed > viridian_vcpu_init()"): >> This happens after nestedhvm_vcpu_initialise(), so its effects also need >> to be undone. >> >> Fixes: 40a4a9d72d16 ("viridian: add init hooks") >> Signed-off-by: Jan Beulich <jbeul...@suse.com> >> >> --- a/xen/arch/x86/hvm/hvm.c >> +++ b/xen/arch/x86/hvm/hvm.c >> @@ -1583,7 +1583,7 @@ int hvm_vcpu_initialise(struct vcpu *v) >> >> rc = viridian_vcpu_init(v); >> if ( rc ) >> - goto fail5; >> + goto fail6; > > Not acomment about the patch; rather about the code in general. > > I have not looked at the context. > > But OMG, this is horrific. How can anyone write code in such an idiom > without writing endless bugs ?
Well, one of the reasons I dislike "goto". Since you've been looking here - any chance of getting a release ack? Perhaps also on "x86/shadow: make a local variable in sh_page_fault() HVM-only" and "x86/PV: address odd UB in I/O emulation"? Aiui that's going to be needed from today on ... Jan