Re: [Qemu-devel] [PATCH] hw/isa/pc87312: Mark the device with user_creatable = false

2017-09-24 Thread Michael Tokarev
13.09.2017 12:07, Thomas Huth wrote:
> QEMU currently aborts if you try to use the device at the command
> line:
> 
> $ ppc64-softmmu/qemu-system-ppc64 -S -machine prep -device pc87312
> Unexpected error in qemu_chr_fe_init() at chardev/char-fe.c:222:
> qemu-system-ppc64: -device pc87312: Device 'parallel0' is in use
> Aborted (core dumped)
> 
> It uses parallel_hds in its realize function, so I can not be
> instantiated by the user again.
> 

Applied to -trivial, thanks!

/mjt



Re: [Qemu-devel] [PATCH] hw/isa/pc87312: Mark the device with user_creatable = false

2017-09-13 Thread Hervé Poussineau

Le 13/09/2017 à 11:07, Thomas Huth a écrit :

QEMU currently aborts if you try to use the device at the command
line:

$ ppc64-softmmu/qemu-system-ppc64 -S -machine prep -device pc87312
Unexpected error in qemu_chr_fe_init() at chardev/char-fe.c:222:
qemu-system-ppc64: -device pc87312: Device 'parallel0' is in use
Aborted (core dumped)

It uses parallel_hds in its realize function, so I can not be
instantiated by the user again.

Signed-off-by: Thomas Huth 


Reviewed-by: Hervé Poussineau 

However, a better solution would probably to not directly use parallel_hds[0], 
but to add some Chardev properties to the device, and to fill them in the 
mainboard code.
This is noted as a "Future incompatible change" in changelog since 2.8

Hervé


---
  hw/isa/pc87312.c | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/hw/isa/pc87312.c b/hw/isa/pc87312.c
index 5ce9f0a..48b29e3 100644
--- a/hw/isa/pc87312.c
+++ b/hw/isa/pc87312.c
@@ -386,6 +386,8 @@ static void pc87312_class_init(ObjectClass *klass, void 
*data)
  dc->reset = pc87312_reset;
  dc->vmsd = &vmstate_pc87312;
  dc->props = pc87312_properties;
+/* Reason: Uses parallel_hds[0] in realize(), so it can't be used twice */
+dc->user_creatable = false;
  }
  
  static const TypeInfo pc87312_type_info = {







[Qemu-devel] [PATCH] hw/isa/pc87312: Mark the device with user_creatable = false

2017-09-13 Thread Thomas Huth
QEMU currently aborts if you try to use the device at the command
line:

$ ppc64-softmmu/qemu-system-ppc64 -S -machine prep -device pc87312
Unexpected error in qemu_chr_fe_init() at chardev/char-fe.c:222:
qemu-system-ppc64: -device pc87312: Device 'parallel0' is in use
Aborted (core dumped)

It uses parallel_hds in its realize function, so I can not be
instantiated by the user again.

Signed-off-by: Thomas Huth 
---
 hw/isa/pc87312.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/hw/isa/pc87312.c b/hw/isa/pc87312.c
index 5ce9f0a..48b29e3 100644
--- a/hw/isa/pc87312.c
+++ b/hw/isa/pc87312.c
@@ -386,6 +386,8 @@ static void pc87312_class_init(ObjectClass *klass, void 
*data)
 dc->reset = pc87312_reset;
 dc->vmsd = &vmstate_pc87312;
 dc->props = pc87312_properties;
+/* Reason: Uses parallel_hds[0] in realize(), so it can't be used twice */
+dc->user_creatable = false;
 }
 
 static const TypeInfo pc87312_type_info = {
-- 
1.8.3.1