[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 5/9] qapi: Generalize struct member policy checking
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH v2 5/9] qapi: Generalize struct member policy checking |
Date: |
Fri, 29 Oct 2021 18:11:59 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.2.0 |
On 10/29/21 16:01, Markus Armbruster wrote:
> Philippe Mathieu-Daudé <philmd@redhat.com> writes:
>
>> On 10/28/21 12:25, Markus Armbruster wrote:
>>> The generated visitor functions call visit_deprecated_accept() and
>>> visit_deprecated() when visiting a struct member with special feature
>>> flag 'deprecated'. This makes the feature flag visible to the actual
>>> visitors. I want to make feature flag 'unstable' visible there as
>>> well, so I can add policy for it.
>>>
>>> To let me make it visible, replace these functions by
>>> visit_policy_reject() and visit_policy_skip(), which take the member's
>>> special features as an argument. Note that the new functions have the
>>> opposite sense, i.e. the return value flips.
>>>
>>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>>> ---
>>> include/qapi/visitor-impl.h | 6 ++++--
>>> include/qapi/visitor.h | 17 +++++++++++++----
>>> qapi/qapi-forward-visitor.c | 16 +++++++++-------
>>> qapi/qapi-visit-core.c | 22 ++++++++++++----------
>>> qapi/qobject-input-visitor.c | 15 ++++++++++-----
>>> qapi/qobject-output-visitor.c | 9 ++++++---
>>> qapi/trace-events | 4 ++--
>>> scripts/qapi/visit.py | 14 +++++++-------
>>> 8 files changed, 63 insertions(+), 40 deletions(-)
>>> case COMPAT_POLICY_INPUT_CRASH:
>>
>> Clearer as:
>>
>> abort();
>> default:
>> g_assert_not_reached();
>
> Maybe, but making it so has nothing to do with this patch. It could
> perhaps be done in PATCH 8, or in a followup patch.
>
>> Otherwise,
>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> Okay to tack your R-by to the unmodified patch?
Sure.
- Re: [PATCH v2 4/9] qapi: Tools for sets of special feature flags in generated code, (continued)
[PATCH v2 1/9] qapi: New special feature flag "unstable", Markus Armbruster, 2021/10/28
[PATCH v2 2/9] qapi: Mark unstable QMP parts with feature 'unstable', Markus Armbruster, 2021/10/28
[PATCH v2 6/9] qapi: Generalize command policy checking, Markus Armbruster, 2021/10/28
[PATCH v2 9/9] qapi: Extend -compat to set policy for unstable interfaces, Markus Armbruster, 2021/10/28