• M
    monitor: Use trad. command interface for HMP pcie_aer_inject_error · 04e00c92
    Markus Armbruster 提交于
    All QMP commands use the "new" handler interface (mhandler.cmd_new).
    Most HMP commands still use the traditional interface (mhandler.cmd),
    but a few use the "new" one.  Complicates handle_user_command() for no
    gain, so I'm converting these to the traditional interface.
    
    pcie_aer_inject_error's implementation is split into the
    hmp_pcie_aer_inject_error() and pcie_aer_inject_error_print().  The
    former is a peculiar crossbreed between HMP and QMP handler.  On
    success, it works like a QMP handler: store QDict through ret_data
    parameter, return 0.  Printing the QDict is left to
    pcie_aer_inject_error_print().  On failure, it works more like an HMP
    handler: print error to monitor, return negative number.
    
    To convert to the traditional interface, turn
    pcie_aer_inject_error_print() into a command handler wrapping around
    hmp_pcie_aer_inject_error().  By convention, this command handler
    should be called hmp_pcie_aer_inject_error(), so rename the existing
    hmp_pcie_aer_inject_error() to do_pcie_aer_inject_error().
    Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
    Reviewed-by: NEric Blake <eblake@redhat.com>
    Reviewed-by: NLuiz Capitulino <lcapitulino@redhat.com>
    04e00c92
pcie_aer.c 31.9 KB