qemu-devel
[Top][All Lists]
Advanced

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

Re: [PULL 19/33] mips/cps: Use start-powered-off CPUState property


From: Philippe Mathieu-Daudé
Subject: Re: [PULL 19/33] mips/cps: Use start-powered-off CPUState property
Date: Wed, 7 Oct 2020 13:36:31 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0

On 10/7/20 12:47 PM, Alex Bennée wrote:
> 
> Philippe Mathieu-Daudé <f4bug@amsat.org> writes:
> 
>> On 10/7/20 11:28 AM, Alex Bennée wrote:
>>>
>>> David Gibson <david@gibson.dropbear.id.au> writes:
>>>
>>>> From: Thiago Jung Bauermann <bauerman@linux.ibm.com>
>>>>
>>>> Instead of setting CPUState::halted to 1 in main_cpu_reset(), use the
>>>> start-powered-off property which makes cpu_common_reset() initialize it
>>>> to 1 in common code.
>>>>
>>>> Also change creation of CPU object from cpu_create() to object_new() and
>>>> qdev_realize_and_unref() because cpu_create() realizes the CPU and it's not
>>>> possible to set a property after the object is realized.
>>>>
>>>> Signed-off-by: Thiago Jung Bauermann <bauerman@linux.ibm.com>
>>>> Message-Id: <20200826055535.951207-6-bauerman@linux.ibm.com>
>>>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>>>> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
>>>
>>> I've finally bisected the breakage in check-acceptance to this patch:
>>>
>>>   10:24:09 [alex.bennee@hackbox2:~/l/q/b/bisect] (102ca966…)|BISECTING|✔ + 
>>> ./tests/venv/bin/avocado run tests/acceptance/machine_mips_malta.py
>>>   
>>> /home/alex.bennee/lsrc/qemu.git/builds/bisect/tests/venv/lib/python3.6/site-packages/avocado/plugins/run.py:214:
>>>  FutureWarning: The following arguments will be changed to boolean soon: 
>>> sysinfo, output-check, failfast, keep-tmp and ignore-missing-references.
>>>     FutureWarning)
>>>   JOB ID     : 1a71a0a81cf9fb9a387d2ab105f8196a26cab84e
>>>   JOB LOG    : 
>>> /home/alex.bennee/avocado/job-results/job-2020-10-07T10.24-1a71a0a/job.log
>>>    (1/3) 
>>> tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_1core:
>>>  PASS (5.70 s)
>>>    (2/3) 
>>> tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_7cores:
>>>  INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout 
>>> reached\nOriginal status: ERROR\n{'name': 
>>> '2-tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_7cores',
>>>   'logdir': '/home/alex.bennee/avocado/job-r... (28.91 s)
>>>    (3/3) 
>>> tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_8cores:
>>>  INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout 
>>> reached\nOriginal status: ERROR\n{'name': 
>>> '3-tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_8cores',
>>>   'logdir': '/home/alex.bennee/avocado/job-r... (30.58 s)
>>>   RESULTS    : PASS 1 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 2 | 
>>> CANCEL 0
>>>   JOB TIME   : 70.12 s
>>>   10:25:27 [alex.bennee@hackbox2:~/l/q/b/bisect] (102ca966…)|BISECTING|✔ 8 
>>> + make -j30
>>>   make[1]: Entering directory '/home/alex.bennee/lsrc/qemu.git/slirp'
>>>   make[1]: Nothing to be done for 'all'.
>>>   make[1]: Leaving directory '/home/alex.bennee/lsrc/qemu.git/slirp'
>>>   Generating qemu-version.h with a meson_exe.py custom command
>>>   Compiling C object libqemu-mips64el-softmmu.fa.p/hw_mips_cps.c.o
>>>   Compiling C object libqemu-mips64-softmmu.fa.p/hw_mips_cps.c.o
>>>   Compiling C object libqemu-mipsel-softmmu.fa.p/hw_mips_cps.c.o
>>>   Compiling C object libqemu-mips-softmmu.fa.p/hw_mips_cps.c.o
>>>   Linking target qemu-system-mips
>>>   Linking target qemu-system-mips64el
>>>   Linking target qemu-system-mips64
>>>   Linking target qemu-system-mipsel
>>>   10:26:26 [alex.bennee@hackbox2:~/l/q/b/bisect] (a2c93f06…)|BISECTING|✔ + 
>>> ./tests/venv/bin/avocado run tests/acceptance/machine_mips_malta.py
>>>   
>>> /home/alex.bennee/lsrc/qemu.git/builds/bisect/tests/venv/lib/python3.6/site-packages/avocado/plugins/run.py:214:
>>>  FutureWarning: The following arguments will be changed to boolean soon: 
>>> sysinfo, output-check, failfast, keep-tmp and ignore-missing-references.
>>>     FutureWarning)
>>>   JOB ID     : ccf294ef4e5ebdf19b3a0b53479d574df4ea54ea
>>>   JOB LOG    : 
>>> /home/alex.bennee/avocado/job-results/job-2020-10-07T10.26-ccf294e/job.log
>>>    (1/3) 
>>> tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_1core:
>>>  PASS (5.82 s)
>>>    (2/3) 
>>> tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_7cores:
>>>  PASS (15.16 s)
>>>    (3/3) 
>>> tests/acceptance/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_8cores:
>>>  PASS (15.97 s)
>>>   RESULTS    : PASS 3 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0 | 
>>> CANCEL 0
>>>   JOB TIME   : 40.01 s
>>
>> Using:
>>
>> -- >8 --
>> diff --git a/hw/misc/mips_cpc.c b/hw/misc/mips_cpc.c
>> index 2f7b2c9592..7c11fb3d44 100644
>> --- a/hw/misc/mips_cpc.c
>> +++ b/hw/misc/mips_cpc.c
>> @@ -38,6 +38,7 @@ static void mips_cpu_reset_async_work(CPUState *cs,
>> run_on_cpu_data data)
>>      MIPSCPCState *cpc = (MIPSCPCState *) data.host_ptr;
>>
>>      cpu_reset(cs);
>> +    cs->halted = 0;
>>      cpc->vp_running |= 1ULL << cs->cpu_index;
>>  }
> 
> That seems reasonable.
> 
> Tested-by: Alex Bennée <alex.bennee@linaro.org>
> Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
> 
> Do you want to roll that into a proper patch or shall I apply directly
> into my testing/next tree?

I'll send a patch, thanks for testing!



reply via email to

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