Sorry my ignorance, Paolo.
But why should I remove MAX_{VM,VCPU}_ID?

Did you mean that check?
    if (vm_id > MAX_VM_ID || vcpu_id > MAX_VCPU_ID) {
        fprintf(stderr, "Too big vm id %x or vcpu id %x\n", vm_id, vcpu_id);
        return NULL;
    }

Wouldn't it be dangerous?

--
Julio Cesar Faracco

Em dom., 1 de mar. de 2020 às 21:05, Paolo Bonzini
<pbonz...@redhat.com> escreveu:
>
> On 01/03/20 20:21, Julio Faracco wrote:
> > +    assert(vm_id < 0);
> > +
> > +    if (snprintf(name, sizeof HAX_VM_DEVFS, "/dev/hax_vm/vm%02d",
> > +                 vm_id) < 0)
> > +        return NULL;
> > +
> >      return name;
> >  }
> >
> > @@ -140,8 +145,12 @@ static char *hax_vcpu_devfs_string(int vm_id, int 
> > vcpu_id)
> >          return NULL;
> >      }
> >
> > -    snprintf(name, sizeof HAX_VCPU_DEVFS, "/dev/hax_vm%02d/vcpu%02d",
> > -             vm_id, vcpu_id);
> > +    assert(vm_id < 0 || vcpu_id < 0);
> > +
> > +    if (snprintf(name, sizeof HAX_VCPU_DEVFS, "/dev/hax_vm%02d/vcpu%02d",
> > +                 vm_id, vcpu_id) < 0)
>
>
> Can you just replace snprintf with g_strdup_printf instead?  Then you
> can also remove MAX_VM_ID and MAX_VCPU_ID.
>
> Paolo
>

Reply via email to