On Mon, Jan 23, 2017 at 7:34 PM, Daniel P. Berrange <berrange@redhat.com> wrote:
On Mon, Jan 23, 2017 at 07:26:58PM +0530, Nitesh Konkar wrote:
> Hi Daniel,
>
>
> On Mon, Jan 23, 2017 at 4:08 PM, Daniel P. Berrange <berrange@redhat.com>
> wrote:
>
> > On Mon, Jan 23, 2017 at 04:03:21PM +0530, Nitesh Konkar wrote:
> >
> > > @@ -9570,16 +9570,17 @@ qemuDomainSetPerfEvents(virDomainPtr dom,
> > >      if (def) {
> > >          for (i = 0; i < nparams; i++) {
> > >              virTypedParameterPtr param = &params[i];
> > > -            enabled = param->value.b;
> > > +            state = param->value.i;
> >
> > NACK, this semantic change is not backwards compatible - this will break
> > all applications & language bindings currently using libvirt perf events.
> >
> > Oh I see . I didn't realize that. Any other API/place you suggest, through
> which
> we can get this functionality in?

Why not just reset counters to zero when first enabling the perf
event. If people want to reset them again later, they can just
disable+enable the event to get the reset
I think, if this patch gets in: https://www.redhat.com/archives/libvir-list/2017-January/msg00956.html
then disable+enable would be equivalent to a reset operation.
As of today, every enable request is creating a new fd, thus leaking the previous one.

Thanks,
Nitesh

Regards,
Daniel
--
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://entangle-photo.org       -o-    http://search.cpan.org/~danberr/ :|