Re: [Qemu-devel] [PATCH qom-cpu-next 0/6] QOM CPUState, part 8: CPU_COMMON continued

2013-02-14 Thread Andreas Färber
Am 01.02.2013 13:38, schrieb Andreas Färber:
> Hello,
> 
> This series moves more fields from CPU_COMMON / CPU*State to CPUState,
> allowing access from target-independent code.
> 
> The final patch in this series will help solve some issues (in particular
> avoid a dependency on CPU_COMMON TLB refactoring for now) but opens a can
> of worms: Since it is initialized in derived instance_init functions,
> functions cannot randomly be changed to operate on CPUState and be called
> from CPUState's instance_init or they will crash due to NULL env_ptr.

The "questionable" patch in this series has been acked by rth, so if
nobody objects, I'll queue it on qom-cpu-next tonight, to base further
work on. I'm not aware of any conflicting maintainer's queue so far.

Andreas

> 
> For those of you that may have been following the CPU refactorings closely,
> I have now split off part of former qom-cpu-8 branch into qom-cpu-9.
> This series thereby applies directly to qom-cpu-next,
> whereas qom-cpu-9 depends on the pending s390x pull, my m68k cleanups and
> may be changed for VMState changes cooking elsewhere to keep i386 v5 compat.
> 
> Available for testing at:
> git://github.com/afaerber/qemu-cpu.git qom-cpu-8.v1
> https://github.com/afaerber/qemu-cpu/commits/qom-cpu-8.v1
> 
> Regards,
> Andreas
> 
> Changes from previews:
> * Drop #ifdefs for user-only CPUState fields.
> * Defer interrupt-related changes to part 9.
> 
> Andreas Färber (6):
>   cpu: Move host_tid field to CPUState
>   cpu: Move running field to CPUState
>   cpu: Move exit_request field to CPUState
>   cpu: Move current_tb field to CPUState
>   cputlb: Pass CPUState to cpu_unlink_tb()
>   cpu: Add CPUArchState pointer to CPUState
> 
>  cpu-exec.c  |   21 -
>  cputlb.c|6 --
>  dump.c  |8 ++--
>  exec.c  |6 --
>  gdbstub.c   |   14 +-
>  hw/apic_common.c|2 +-
>  hw/apic_internal.h  |2 +-
>  hw/kvmvapic.c   |   13 -
>  hw/spapr_hcall.c|5 +++--
>  include/exec/cpu-defs.h |5 -
>  include/exec/exec-all.h |4 +++-
>  include/exec/gdbstub.h  |5 ++---
>  include/qom/cpu.h   |   11 +++
>  kvm-all.c   |6 +++---
>  linux-user/main.c   |   37 ++---
>  linux-user/syscall.c|4 +++-
>  qom/cpu.c   |2 ++
>  target-alpha/cpu.c  |2 ++
>  target-arm/cpu.c|2 ++
>  target-cris/cpu.c   |2 ++
>  target-i386/cpu.c   |1 +
>  target-i386/kvm.c   |4 ++--
>  target-lm32/cpu.c   |2 ++
>  target-m68k/cpu.c   |2 ++
>  target-microblaze/cpu.c |2 ++
>  target-mips/cpu.c   |2 ++
>  target-openrisc/cpu.c   |2 ++
>  target-ppc/translate_init.c |2 ++
>  target-s390x/cpu.c  |2 ++
>  target-sh4/cpu.c|2 ++
>  target-sparc/cpu.c  |2 ++
>  target-unicore32/cpu.c  |2 ++
>  target-xtensa/cpu.c |2 ++
>  translate-all.c |   36 +++-
>  translate-all.h |2 +-
>  35 Dateien geändert, 149 Zeilen hinzugefügt(+), 73 Zeilen entfernt(-)

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



Re: [Qemu-devel] [PATCH qom-cpu-next 0/6] QOM CPUState, part 8: CPU_COMMON continued

2013-02-15 Thread Andreas Färber
Am 14.02.2013 18:49, schrieb Andreas Färber:
> Am 01.02.2013 13:38, schrieb Andreas Färber:
>> Hello,
>>
>> This series moves more fields from CPU_COMMON / CPU*State to CPUState,
>> allowing access from target-independent code.
>>
>> The final patch in this series will help solve some issues (in particular
>> avoid a dependency on CPU_COMMON TLB refactoring for now) but opens a can
>> of worms: Since it is initialized in derived instance_init functions,
>> functions cannot randomly be changed to operate on CPUState and be called
>> from CPUState's instance_init or they will crash due to NULL env_ptr.
> 
> The "questionable" patch in this series has been acked by rth, so if
> nobody objects, I'll queue it on qom-cpu-next tonight, [...]

Applied:
https://github.com/afaerber/qemu-cpu/commits/qom-cpu-next

Andreas

>>
>> For those of you that may have been following the CPU refactorings closely,
>> I have now split off part of former qom-cpu-8 branch into qom-cpu-9.
>> This series thereby applies directly to qom-cpu-next,
>> whereas qom-cpu-9 depends on the pending s390x pull, my m68k cleanups and
>> may be changed for VMState changes cooking elsewhere to keep i386 v5 compat.
>>
>> Available for testing at:
>> git://github.com/afaerber/qemu-cpu.git qom-cpu-8.v1
>> https://github.com/afaerber/qemu-cpu/commits/qom-cpu-8.v1
>>
>> Regards,
>> Andreas
>>
>> Changes from previews:
>> * Drop #ifdefs for user-only CPUState fields.
>> * Defer interrupt-related changes to part 9.
>>
>> Andreas Färber (6):
>>   cpu: Move host_tid field to CPUState
>>   cpu: Move running field to CPUState
>>   cpu: Move exit_request field to CPUState
>>   cpu: Move current_tb field to CPUState
>>   cputlb: Pass CPUState to cpu_unlink_tb()
>>   cpu: Add CPUArchState pointer to CPUState
>>
>>  cpu-exec.c  |   21 -
>>  cputlb.c|6 --
>>  dump.c  |8 ++--
>>  exec.c  |6 --
>>  gdbstub.c   |   14 +-
>>  hw/apic_common.c|2 +-
>>  hw/apic_internal.h  |2 +-
>>  hw/kvmvapic.c   |   13 -
>>  hw/spapr_hcall.c|5 +++--
>>  include/exec/cpu-defs.h |5 -
>>  include/exec/exec-all.h |4 +++-
>>  include/exec/gdbstub.h  |5 ++---
>>  include/qom/cpu.h   |   11 +++
>>  kvm-all.c   |6 +++---
>>  linux-user/main.c   |   37 ++---
>>  linux-user/syscall.c|4 +++-
>>  qom/cpu.c   |2 ++
>>  target-alpha/cpu.c  |2 ++
>>  target-arm/cpu.c|2 ++
>>  target-cris/cpu.c   |2 ++
>>  target-i386/cpu.c   |1 +
>>  target-i386/kvm.c   |4 ++--
>>  target-lm32/cpu.c   |2 ++
>>  target-m68k/cpu.c   |2 ++
>>  target-microblaze/cpu.c |2 ++
>>  target-mips/cpu.c   |2 ++
>>  target-openrisc/cpu.c   |2 ++
>>  target-ppc/translate_init.c |2 ++
>>  target-s390x/cpu.c  |2 ++
>>  target-sh4/cpu.c|2 ++
>>  target-sparc/cpu.c  |2 ++
>>  target-unicore32/cpu.c  |2 ++
>>  target-xtensa/cpu.c |2 ++
>>  translate-all.c |   36 +++-
>>  translate-all.h |2 +-
>>  35 Dateien geändert, 149 Zeilen hinzugefügt(+), 73 Zeilen entfernt(-)
> 


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