On Wed, Jul 12, 2023 at 05:02:03PM +0100, Anthony PERARD wrote:
> On Tue, Jul 11, 2023 at 11:22:26AM +0200, Roger Pau Monne wrote:
> > -void libxl_cpuid_dispose(libxl_cpuid_policy_list *p_cpuid_list)
> > +void libxl_cpuid_dispose(libxl_cpuid_policy_list *pl)
> >  {
> > -    int i, j;
> > -    libxl_cpuid_policy_list cpuid_list = *p_cpuid_list;
> > +    libxl_cpuid_policy_list policy = *pl;
> >  
> > -    if (cpuid_list == NULL)
> > +    if (policy == NULL)
> >          return;
> > -    for (i = 0; cpuid_list[i].input[0] != XEN_CPUID_INPUT_UNUSED; i++) {
> > -        for (j = 0; j < 4; j++)
> > -            if (cpuid_list[i].policy[j] != NULL) {
> > -                free(cpuid_list[i].policy[j]);
> > -                cpuid_list[i].policy[j] = NULL;
> > -            }
> > +
> > +    if (policy->cpuid) {
> > +        unsigned int i, j;
> > +        struct xc_xend_cpuid *cpuid_list = policy->cpuid;
> > +
> > +        for (i = 0; cpuid_list[i].input[0] != XEN_CPUID_INPUT_UNUSED; i++) 
> > {
> > +            for (j = 0; j < 4; j++)
> > +                if (cpuid_list[i].policy[j] != NULL) {
> > +                    free(cpuid_list[i].policy[j]);
> > +                    cpuid_list[i].policy[j] = NULL;
> > +                }
> 
> This looks like a lot of work. We could just call
> free(cpuid_list[i].policy[j]) and that's all, as cpuid_list will be gone
> right after the loop.

I wasn't planning on changing the code, as this is just indentation
movement, but will do.

> Also, please add {} for the second "for ()" loop.
> 
> > +        }
> > +        free(policy->cpuid);
> >      }
> 
> Beside some the coding style pointing out, the patch looks fine:
> Reviewed-by: Anthony PERARD <[email protected]>

Thanks, Roger.

Reply via email to