On 4/15/20 3:30 AM, Markus Armbruster wrote:
> QLIST_FOREACH_ENTRY() traverses a tail queue manually. Use
> QTAILQ_FIRST() and QTAILQ_NEXT() instead.
>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
> include/qapi/qmp/qlist.h | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
Reviewed-by: Eric Blake <eblake@redhat.com>
> diff --git a/include/qapi/qmp/qlist.h b/include/qapi/qmp/qlist.h
> index 8d2c32ca28..07ecae81e4 100644
> --- a/include/qapi/qmp/qlist.h
> +++ b/include/qapi/qmp/qlist.h
> @@ -34,10 +34,10 @@ void qlist_append_int(QList *qlist, int64_t value);
> void qlist_append_null(QList *qlist);
> void qlist_append_str(QList *qlist, const char *value);
>
> -#define QLIST_FOREACH_ENTRY(qlist, var) \
> - for ((var) = ((qlist)->head.tqh_first); \
> - (var); \
> - (var) = ((var)->next.tqe_next))
> +#define QLIST_FOREACH_ENTRY(qlist, var) \
> + for ((var) = QTAILQ_FIRST(&(qlist)->head); \
> + (var); \
> + (var) = QTAILQ_NEXT((var), next))
>
> static inline QObject *qlist_entry_obj(const QListEntry *entry)
> {
>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org