qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Mulyadi Santosa <a_mulyadi@softhome.net>
To: Andre Pech <andre.pech@gmail.com>
Cc: qemu-devel@nongnu.org
Subject: Re: Re: Re: [Qemu-devel] [PATCH] Fix to gdb - wrong translation block invalidated when setting gdb breakpoints
Date: Wed, 4 Jan 2006 17:29:40 +0700	[thread overview]
Message-ID: <200601041729.40750.a_mulyadi@softhome.net> (raw)
In-Reply-To: <16af12af0601031212g2ffb9fa0xc1c154aaf8eb46cf@mail.gmail.com>

Hi Andre...

> The problem that you are running into here is that sys_uname has been
> replaced by sys_newuname in kernel/sys.c. When I put a breakpoint in
> this function, everything works correctly when I run uname in the
> virtual machine.

yes, you're right. sys_newuname is the system call handler that handles 
"uname" in kernel space, as it is confirmed with eax=122 when we reach 
system_call entry in arch/i386/kernel/entry.S. Thanks for pointing me 
into the correct handler.

> I'm not sure I exactly understand your concern that breakpoints could
> be missed. When you set the breakpoint, tb_invalidate_phys_page_range
> is called, invalidating the translation block block for the address
> where you are placing the breakpoint. At this point, the next time
> that the address is hit, translate.c:gen_intermediate_code will have
> to be called, and the breakpoint will be hit. Let me know if I've
> missed something here.

I'm not 100% sure too, but maybe I need to confirm what I understand 
about "translation block" in Qemu. Suppose we have following asm 
snippet:
<....>
mov eax,8
mov ebx,10
move ecx,16
ret
<....>
When qemu check the above codes, I learn that it is converted into a 
single translation block ("ret" is the end mark of the translation 
block). Do I get something wrong here? Please CMIIW.

regards

Mulyadi

      reply	other threads:[~2006-01-04 10:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-23 19:57 [Qemu-devel] [PATCH] Fix to gdb - wrong translation block invalidated when setting gdb breakpoints Andre Pech
2005-12-28  8:22 ` Mulyadi Santosa
     [not found]   ` <16af12af0512301218k48fecbdcr6ec41640b303689@mail.gmail.com>
2006-01-01  8:10     ` Mulyadi Santosa
2006-01-03 20:12       ` Andre Pech
2006-01-04 10:29         ` Mulyadi Santosa [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200601041729.40750.a_mulyadi@softhome.net \
    --to=a_mulyadi@softhome.net \
    --cc=andre.pech@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).