On Fri, 24 May 2013 15:10:16 +0300
"Michael S. Tsirkin" <m...@redhat.com> wrote:

> On Thu, May 23, 2013 at 01:26:33PM -0400, Luiz Capitulino wrote:
> > On Thu, 23 May 2013 20:18:34 +0300
> > "Michael S. Tsirkin" <m...@redhat.com> wrote:
> > 
> > > On Thu, May 23, 2013 at 11:54:03AM -0400, Luiz Capitulino wrote:
> > > > On Thu, 16 May 2013 18:17:23 +0300
> > > > "Michael S. Tsirkin" <m...@redhat.com> wrote:
> > > > 
> > > > > > The
> > > > > > existing throttling approach ensures that if the event includes 
> > > > > > latest
> > > > > > guest information, then the host doesn't even have to do do a 
> > > > > > query, and
> > > > > > is guaranteed that reacting to the final event will always see the 
> > > > > > most
> > > > > > recent request.  But most importantly, if the existing throttling 
> > > > > > works,
> > > > > > why do we have to invent a one-off approach for this event instead 
> > > > > > of
> > > > > > reusing existing code?
> > > > 
> > > > Sorry to restart this week old discussion, but I'm now reviewing the 
> > > > patch
> > > > in question and I dislike how we're coupling the event and the query
> > > > command.
> > > > 
> > > > > Because of the 1st issue above. A large delay because we
> > > > 
> > > > Has this been measured? How long is this large delay?
> > > > 
> > > > Also, is it impossible for management to issue query-rx-filter
> > > > on a reasonable rate that would also cause the same problems?
> > > > IOW, how can we be sure we're fixing anything without trying it
> > > > on a real use-case scenario?
> > > 
> > > Play with priorities, you can make management arbitrarily slow.  It's
> > > just not sane to assume any timing guarantees for tasks running on
> > > Linux.
> > 
> > Would you mind to elaborate? I'm not sure I understand how this answers
> > my questions.
> 
> Maybe I don't understand the questions.
> You are asking why doesn't usual throttling sufficient?
> This was discussed in this thread already.
> That's because it would introduce a huge delay if guest
> changes the mac too often. People don't except that
> changing a mac is a thing the should do slowly.

You meant shouldn't?

If I got it correctly, all you want to avoid is to call qobject_from_jsonf()
and monitor_protocol_event() in the mac change path, because this will
slow down the guest. Did I get it?

If I did, my main point is whether or not the solution you're proposing
(which is to couple the event with the query command) is
appropriate. We're in user-space already, many things could slow
the guest down apart from the event generation.

Two questions:

 1. Do we know how slow (or how many packets are actually dropped)
    if the mac is changed too often *and* the event is always sent?

 2. Does this solution consider what happens if the QMP client does
    respond timely to the event by issuing the query-rx-filter
    command?

Reply via email to