Skip to content
  • Markus Armbruster's avatar
    9bc6bfdf
    qdev: Drop qbus_set_hotplug_handler() parameter @errp · 9bc6bfdf
    Markus Armbruster authored
    
    
    qbus_set_hotplug_handler() is a simple wrapper around
    object_property_set_link().
    
    object_property_set_link() fails when the property doesn't exist, is
    not settable, or its .check() method fails.  These are all programming
    errors here, so passing &error_abort to qbus_set_hotplug_handler() is
    appropriate.
    
    Most of its callers do.  Exceptions:
    
    * pcie_cap_slot_init(), shpc_init(), spapr_phb_realize() pass NULL,
      i.e. they ignore errors.
    
    * spapr_machine_init() passes &error_fatal.
    
    * s390_pcihost_realize(), virtio_serial_device_realize(),
      s390_pcihost_plug() pass the error to their callers.  The latter two
      keep going after the error, which looks wrong.
    
    Drop the @errp parameter, and instead pass &error_abort to
    object_property_set_link().
    
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: "Daniel P. Berrangé" <berrange@redhat.com>
    Cc: Eduardo Habkost <ehabkost@redhat.com>
    Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
    Message-Id: <20200630090351.1247703-15-armbru@redhat.com>
    9bc6bfdf
    qdev: Drop qbus_set_hotplug_handler() parameter @errp
    Markus Armbruster authored
    
    
    qbus_set_hotplug_handler() is a simple wrapper around
    object_property_set_link().
    
    object_property_set_link() fails when the property doesn't exist, is
    not settable, or its .check() method fails.  These are all programming
    errors here, so passing &error_abort to qbus_set_hotplug_handler() is
    appropriate.
    
    Most of its callers do.  Exceptions:
    
    * pcie_cap_slot_init(), shpc_init(), spapr_phb_realize() pass NULL,
      i.e. they ignore errors.
    
    * spapr_machine_init() passes &error_fatal.
    
    * s390_pcihost_realize(), virtio_serial_device_realize(),
      s390_pcihost_plug() pass the error to their callers.  The latter two
      keep going after the error, which looks wrong.
    
    Drop the @errp parameter, and instead pass &error_abort to
    object_property_set_link().
    
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: "Daniel P. Berrangé" <berrange@redhat.com>
    Cc: Eduardo Habkost <ehabkost@redhat.com>
    Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
    Message-Id: <20200630090351.1247703-15-armbru@redhat.com>
Loading