qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] Revert "nand: Don't inherit from Sysbus"


From: Andreas Färber
Subject: Re: [Qemu-devel] [PATCH] Revert "nand: Don't inherit from Sysbus"
Date: Wed, 05 Feb 2014 09:55:40 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

Am 05.02.2014 09:39, schrieb Markus Armbruster:
> This reverts commit 7426aa72c36c908a7d0eae3e38568bb0a70de479.
> 
> The commit goes into a sensible direction, but it violates qdev design
> assumptions.  Symptom: "info qtree" crashes for all boards including
> the device (akita, borzoi, spitz, terrier, tosa, axis-dev88).
> 
> Peter Crosthwaite is working on a fix, but it's not trivial.  Revert
> the flawed patch for now.
> 
> Signed-off-by: Markus Armbruster <address@hidden>
> Acked-by: Peter Crosthwaite <address@hidden>
> ---
>  hw/block/nand.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/hw/block/nand.c b/hw/block/nand.c
> index a871ce0..a0232d1 100644
> --- a/hw/block/nand.c
> +++ b/hw/block/nand.c
> @@ -21,7 +21,7 @@
>  # include "hw/hw.h"
>  # include "hw/block/flash.h"
>  # include "sysemu/blockdev.h"
> -#include "hw/qdev.h"
> +# include "hw/sysbus.h"
>  #include "qemu/error-report.h"
>  
>  # define NAND_CMD_READ0              0x00
> @@ -54,8 +54,7 @@
>  
>  typedef struct NANDFlashState NANDFlashState;
>  struct NANDFlashState {
> -    DeviceState parent_obj;
> -
> +    SysBusDevice busdev;

Negative on calling it busdev again, that surely has nothing to do with
a crash since it's not being used anywhere in this patch.

I still have not seen a single backtrace of what is going wrong, only
Paolo saying something about adding to main_system_bus in "the patch".
Clearly that is not in this patch! Where is that happening and why is
that so complicated for Peter C. to fix?

Andreas

>      uint8_t manf_id, chip_id;
>      uint8_t buswidth; /* in BYTES */
>      int size, pages;
> @@ -441,7 +440,7 @@ static void nand_class_init(ObjectClass *klass, void 
> *data)
>  
>  static const TypeInfo nand_info = {
>      .name          = TYPE_NAND,
> -    .parent        = TYPE_DEVICE,
> +    .parent        = TYPE_SYS_BUS_DEVICE,
>      .instance_size = sizeof(NANDFlashState),
>      .class_init    = nand_class_init,
>  };

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]