qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 02/17] lm32: translation routines


From: Alexander Graf
Subject: Re: [Qemu-devel] [PATCH 02/17] lm32: translation routines
Date: Thu, 17 Mar 2011 00:48:52 +0100




On 17.03.2011, at 00:08, Michael Walle <address@hidden> wrote:

> Am Freitag 11 März 2011, 06:57:18 schrieben Sie:
>> On 17.02.2011, at 23:51, Michael Walle wrote:
>>> Am Samstag 12 Februar 2011, 07:49:52 schrieb Blue Swirl:
>>>>> That said, IMHO the best handling of unknown opcodes would be to kill
>>>>> the VM.
>>>> 
>>>> In this case it should be OK. Alternatively the VM could be halted, so
>>>> that instead of restarting QEMU, only system_reset needs to be issued.
>>>> This may be more useful for developers, since for example registers
>>>> and memory can be examined after the error.
>>> 
>>> Good idea! May I call vm_stop() in a tcg helper? Like in the following
>>> example:
>>> 
>>> void helper_vm_stop(uint32_t msg_id)
>>> {
>>> 
>>>   if (qemu_log_enabled()) {
>>> 
>>>       qemu_log("VM stopped: %s", err_msg_str[msg_id]);
>>> 
>>>   } else {
>>> 
>>>       fprintf(stderr, "VM stopped: %s", err_msg_str[msg_id]);
>>> 
>>>   }
>>> 
>>> #ifndef CONFIG_USER_ONLY
>>> 
>>>   vm_stop(0);
>>> 
>>> #endif
>>> 
>>>   env->exception_index = EXCP_HALTED;
>>>   cpu_loop_exit();
>>> 
>>> }
>>> 
>>> If not, what is the proper way to stop/pause the VM from within the
>>> executed code?
>> 
>> Since I haven't seen any reply yet: Can't you just do the same as hlt and
>> disable interrupts?
> This won't set the VM stopped property, eg. 'info status' will still report 
> the VM status as running.
> 
> And the timer would still be running, wouldn't it?
> 

Well you got the code in as is anyway, so it doesn't really matter ;)

Alex

> -- 
> Michael



reply via email to

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