qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] c7c462: qobject: Drop QObject_HEAD


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] c7c462: qobject: Drop QObject_HEAD
Date: Fri, 30 Oct 2015 04:00:08 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: c7c462123cfc3b62d325fd75be9c595b055797db
      
https://github.com/qemu/qemu/commit/c7c462123cfc3b62d325fd75be9c595b055797db
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M include/qapi/qmp/qbool.h
    M include/qapi/qmp/qdict.h
    M include/qapi/qmp/qfloat.h
    M include/qapi/qmp/qint.h
    M include/qapi/qmp/qlist.h
    M include/qapi/qmp/qobject.h
    M include/qapi/qmp/qstring.h

  Log Message:
  -----------
  qobject: Drop QObject_HEAD

QObject_HEAD is a macro expanding into the common part of structs that
are sub-types of QObject.  It's always been just QObject base, and
unlikely to change.  Drop the macro, because the code is clearer with
out it.

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Luiz Capitulino <address@hidden>


  Commit: 14b6160099f0caf5dc9d62e637b007bc5d719a96
      
https://github.com/qemu/qemu/commit/14b6160099f0caf5dc9d62e637b007bc5d719a96
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M qapi/qmp-input-visitor.c
    M qobject/qbool.c
    M qobject/qdict.c

  Log Message:
  -----------
  qbool: Make conversion from QObject * accept null

qobject_to_qbool() crashes on null, which is a trap for the unwary.
Return null instead, and simplify a few callers.

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Luiz Capitulino <address@hidden>


  Commit: 89cad9f3ec6b30d7550fb5704475fc9c3393a066
      
https://github.com/qemu/qemu/commit/89cad9f3ec6b30d7550fb5704475fc9c3393a066
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M qga/main.c
    M qobject/qdict.c

  Log Message:
  -----------
  qdict: Make conversion from QObject * accept null

qobject_to_qdict() crashes on null, which is a trap for the unwary.
Return null instead, and simplify a few callers.

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Luiz Capitulino <address@hidden>


  Commit: fcf73f66a67f5e58c18216f8c8651e38cf4d90af
      
https://github.com/qemu/qemu/commit/fcf73f66a67f5e58c18216f8c8651e38cf4d90af
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M qapi/qmp-input-visitor.c
    M qobject/qdict.c
    M qobject/qfloat.c
    M qobject/qint.c

  Log Message:
  -----------
  qfloat qint: Make conversion from QObject * accept null

qobject_to_qfloat() and qobject_to_qint() crash on null, which is a
trap for the unwary.  Return null instead, and simplify a few callers.

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Luiz Capitulino <address@hidden>


  Commit: 2d6421a90047a83f6722832405fe09571040ea5b
      
https://github.com/qemu/qemu/commit/2d6421a90047a83f6722832405fe09571040ea5b
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M qobject/qlist.c

  Log Message:
  -----------
  qlist: Make conversion from QObject * accept null

qobject_to_qlist() crashes on null, which is a trap for the unwary.
Return null instead.

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Luiz Capitulino <address@hidden>


  Commit: 7f0278435df1fa845b3bd9556942f89296d4246b
      
https://github.com/qemu/qemu/commit/7f0278435df1fa845b3bd9556942f89296d4246b
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M qapi/qmp-input-visitor.c
    M qobject/qdict.c
    M qobject/qstring.c

  Log Message:
  -----------
  qstring: Make conversion from QObject * accept null

qobject_to_qstring() crashes on null, which is a trap for the unwary.
Return null instead, and simplify a few callers.

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Luiz Capitulino <address@hidden>


  Commit: 688b4b7de755f4dd01ec516975ae01590cf9f438
      
https://github.com/qemu/qemu/commit/688b4b7de755f4dd01ec516975ae01590cf9f438
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M monitor.c

  Log Message:
  -----------
  monitor: Reduce casting of QAPI event QDict

Make the variables holding the event QDict instead of QObject.

Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>


  Commit: 93f8f982fedfc9ee9cf5fc8983c3b25efe828967
      
https://github.com/qemu/qemu/commit/93f8f982fedfc9ee9cf5fc8983c3b25efe828967
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M monitor.c
    M trace-events

  Log Message:
  -----------
  monitor: Simplify event throttling

The event throttling state machine is hard to understand.  I'm not
sure it's entirely correct.  Rewrite it in a more straightforward
manner:

State 1: No event sent recently (less than evconf->rate ns ago)

    Invariant: evstate->timer is not pending, evstate->qdict is null

    On event: send event, arm timer, goto state 2

State 2: Event sent recently, no additional event being delayed

    Invariant: evstate->timer is pending, evstate->qdict is null

    On event: store it in evstate->qdict, goto state 3

    On timer: goto state 1

State 3: Event sent recently, additional event being delayed

    Invariant: evstate->timer is pending, evstate->qdict is non-null

    On event: store it in evstate->qdict, goto state 3

    On timer: send evstate->qdict, clear evstate->qdict,
        arm timer, goto state 2

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>


  Commit: 1824c41a62c1bbb79d32f97037ca579212b8c134
      
https://github.com/qemu/qemu/commit/1824c41a62c1bbb79d32f97037ca579212b8c134
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M monitor.c

  Log Message:
  -----------
  monitor: Switch from timer_new() to timer_new_ns()

We don't actually care for the scale, so we can just as well use the
simpler interface.

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>


  Commit: b9b03ab0d47e8cfc0015255c531db41d0b1a1f91
      
https://github.com/qemu/qemu/commit/b9b03ab0d47e8cfc0015255c531db41d0b1a1f91
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-29 (Thu, 29 Oct 2015)

  Changed paths:
    M monitor.c

  Log Message:
  -----------
  monitor: Split MonitorQAPIEventConf off MonitorQAPIEventState

In preparation of turning monitor_qapi_event_state[] into a hash table
for finer grained throttling.

Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>


  Commit: 8681dffa91a0d5767b7c1eb3d5c2acbf7f7dd7ba
      
https://github.com/qemu/qemu/commit/8681dffa91a0d5767b7c1eb3d5c2acbf7f7dd7ba
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
    M include/glib-compat.h

  Log Message:
  -----------
  glib: add compatibility interface for g_hash_table_add()

The next commit will use it.

Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Eric Blake <address@hidden>


  Commit: a24712af54259dd744a49447658521325f10a721
      
https://github.com/qemu/qemu/commit/a24712af54259dd744a49447658521325f10a721
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
    M monitor.c

  Log Message:
  -----------
  monitor: Turn monitor_qapi_event_state[] into a hash table

In preparation of finer grained throttling.

Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>


  Commit: 7de0be6573afc9dcfb6aa0ded167ad6a8730f727
      
https://github.com/qemu/qemu/commit/7de0be6573afc9dcfb6aa0ded167ad6a8730f727
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
    M monitor.c

  Log Message:
  -----------
  monitor: Throttle event VSERPORT_CHANGE separately by "id"

VSERPORT_CHANGE is emitted when the guest opens or closes a
virtio-serial port.  The event's member "id" identifies the port.

When several events arrive quickly, throttling drops all but the last
of them.  Because of that, a QMP client must assume that *any* port
may have changed state when it receives a VSERPORT_CHANGE event and
throttling may have happened.

Make the event more useful by throttling it for each port separately.

Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>


  Commit: 7f1e7b23d57408c86d350b3544673fdcd6be55c0
      
https://github.com/qemu/qemu/commit/7f1e7b23d57408c86d350b3544673fdcd6be55c0
  Author: Markus Armbruster <address@hidden>
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
    M docs/qmp-events.txt
    M docs/qmp-spec.txt

  Log Message:
  -----------
  docs: Document QMP event rate limiting

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>


  Commit: fdf927621a99711bf1a81712bce054794f2d44c3
      
https://github.com/qemu/qemu/commit/fdf927621a99711bf1a81712bce054794f2d44c3
  Author: Peter Maydell <address@hidden>
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
    M docs/qmp-events.txt
    M docs/qmp-spec.txt
    M include/glib-compat.h
    M include/qapi/qmp/qbool.h
    M include/qapi/qmp/qdict.h
    M include/qapi/qmp/qfloat.h
    M include/qapi/qmp/qint.h
    M include/qapi/qmp/qlist.h
    M include/qapi/qmp/qobject.h
    M include/qapi/qmp/qstring.h
    M monitor.c
    M qapi/qmp-input-visitor.c
    M qga/main.c
    M qobject/qbool.c
    M qobject/qdict.c
    M qobject/qfloat.c
    M qobject/qint.c
    M qobject/qlist.c
    M qobject/qstring.c
    M trace-events

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/armbru/tags/pull-monitor-2015-10-30' 
into staging

QMP and QObject patches

# gpg: Signature made Fri 30 Oct 2015 08:06:26 GMT using RSA key ID EB918653
# gpg: Good signature from "Markus Armbruster <address@hidden>"
# gpg:                 aka "Markus Armbruster <address@hidden>"

* remotes/armbru/tags/pull-monitor-2015-10-30:
  docs: Document QMP event rate limiting
  monitor: Throttle event VSERPORT_CHANGE separately by "id"
  monitor: Turn monitor_qapi_event_state[] into a hash table
  glib: add compatibility interface for g_hash_table_add()
  monitor: Split MonitorQAPIEventConf off MonitorQAPIEventState
  monitor: Switch from timer_new() to timer_new_ns()
  monitor: Simplify event throttling
  monitor: Reduce casting of QAPI event QDict
  qstring: Make conversion from QObject * accept null
  qlist: Make conversion from QObject * accept null
  qfloat qint: Make conversion from QObject * accept null
  qdict: Make conversion from QObject * accept null
  qbool: Make conversion from QObject * accept null
  qobject: Drop QObject_HEAD

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/7bc8e0c967a4...fdf927621a99

reply via email to

[Prev in Thread] Current Thread [Next in Thread]