qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Re: gdbstub: packet reply is too long


From: Jan Kiszka
Subject: Re: [Qemu-devel] Re: gdbstub: packet reply is too long
Date: Sun, 21 Dec 2008 00:44:04 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

Paul Brook wrote:
>> Do those archs also have multiple register layouts that are coupled to
>> those different instruction sets? Do they switch the instruction sets
>> via 'set arch'?
> 
> No, but neither does x86. You just need to teach gdb how to debug 32-bit code 
> on a 64-bit target.

And that means setting current_gdbarch while keeping target_gdbarch -
that's where reality (existing gdb code) bites us. Again, I'm not
arguing against fixing this, I'm arguing in keeping qemu's workaround
until this is done. I will look into the gdb part, but one after the other.

> 
>> I think x86 is (historically) special here.
> 
> I think it's just that noone's made the effort to fix this problem.
> 
>> Fixing this (once understood what are all the problems preventing a fix
>> for several years now) is one thing, keeping the workaround for current
>> gdb in qemu is, IMHO, another. Right now we don't have a gdb fix in
>> sight, so I'm simply voting for reintroducing the workaround. That's
>> all. We can kill it or make it optional once the issue is solved. But we
>> should _not_ do this _before_ it is solved, causing only pain to people
>> who just want to use the gdbstub.
> 
> I don't buy this argument. You already have to tell gdb which mode to work 
> in, 
> so I don't see any reason why you shouldn't also tell qemu.

Sorry, this doesn't parse for me. What mechanism for qemu do you have in
mind precisely?

However, do we agree now that we have to adopt qemu to make it work with
current gdb?

> 
> Recent GDB interrogate the target when they connect, and the target describes 
> the registers it has. This isn't currently implemented on x86 in qemu, but 
> I'm pretty sure it'd be incompatible with dynamic switching.

I haven't checked gdb /wrt this protocol and x86 in details yet. But as
far as I understand it, it does negotiation during startup. I wouldn't
be surprised that all what the backend told gdb becomes pointless once
you type "set arch i386". But this seems to be an orthogonal issue. Of
course, we would have to communicate x86-64 capabilities this way, not
the mode-dependent set.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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