• E
    qdev: Replace cannot_instantiate_with_device_add_yet with !user_creatable · e90f2a8c
    Eduardo Habkost 提交于
    cannot_instantiate_with_device_add_yet was introduced by commit
    efec3dd6 to replace no_user. It was
    supposed to be a temporary measure.
    
    When it was introduced, we had 54
    cannot_instantiate_with_device_add_yet=true lines in the code.
    Today (3 years later) this number has not shrunk: we now have
    57 cannot_instantiate_with_device_add_yet=true lines. I think it
    is safe to say it is not a temporary measure, and we won't see
    the flag go away soon.
    
    Instead of a long field name that misleads people to believe it
    is temporary, replace it a shorter and less misleading field:
    user_creatable.
    
    Except for code comments, changes were generated using the
    following Coccinelle patch:
    
      @@
      expression DC;
      @@
      (
      -DC->cannot_instantiate_with_device_add_yet = false;
      +DC->user_creatable = true;
      |
      -DC->cannot_instantiate_with_device_add_yet = true;
      +DC->user_creatable = false;
      )
    
      @@
      typedef ObjectClass;
      expression dc;
      identifier class, data;
      @@
       static void device_class_init(ObjectClass *class, void *data)
       {
       ...
       dc->hotpluggable = true;
      +dc->user_creatable = true;
       ...
       }
    
      @@
      @@
       struct DeviceClass {
       ...
      -bool cannot_instantiate_with_device_add_yet;
      +bool user_creatable;
       ...
      }
    
      @@
      expression DC;
      @@
      (
      -!DC->cannot_instantiate_with_device_add_yet
      +DC->user_creatable
      |
      -DC->cannot_instantiate_with_device_add_yet
      +!DC->user_creatable
      )
    
    Cc: Alistair Francis <alistair.francis@xilinx.com>
    Cc: Laszlo Ersek <lersek@redhat.com>
    Cc: Marcel Apfelbaum <marcel@redhat.com>
    Cc: Markus Armbruster <armbru@redhat.com>
    Cc: Peter Maydell <peter.maydell@linaro.org>
    Cc: Thomas Huth <thuth@redhat.com>
    Acked-by: NAlistair Francis <alistair.francis@xilinx.com>
    Reviewed-by: NThomas Huth <thuth@redhat.com>
    Reviewed-by: NMarcel Apfelbaum <marcel@redhat.com>
    Acked-by: NMarcel Apfelbaum <marcel@redhat.com>
    Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
    Message-Id: <20170503203604.31462-2-ehabkost@redhat.com>
    [ehabkost: kept "TODO remove once we're there" comment]
    Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
    Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
    e90f2a8c
i8254_common.c 8.8 KB