This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [Patch, microblaze]: Add slr and shr regs and little-endian breakpoint
- From: Michael Eager <eager at eagerm dot com>
- To: Ajit Kumar Agarwal <ajit dot kumar dot agarwal at xilinx dot com>, Joel Brobecker <brobecker at adacore dot com>
- Cc: Michael Eager <eager at eagercon dot com>, "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>, Vinod Kathail <vinodk at xilinx dot com>, Vidhumouli Hunsigida <vidhum at xilinx dot com>, Nagaraju Mekala <nmekala at xilinx dot com>
- Date: Thu, 22 May 2014 12:44:45 -0700
- Subject: Re: [Patch, microblaze]: Add slr and shr regs and little-endian breakpoint
- Authentication-results: sourceware.org; auth=none
- References: <c9001031-69c7-47c7-a7ab-1f57b7e493e0 at BN1BFFO11FD036 dot protection dot gbl> <537BC5B9 dot 10601 at eagercon dot com> <dfcc599b-b040-446d-bd46-723b67dbf286 at BL2FFO11FD042 dot protection dot gbl> <537C5A25 dot 9000003 at eagerm dot com> <5821f144-e431-4bee-9cd7-33971b5512a3 at BN1AFFO11FD019 dot protection dot gbl> <20140521134544 dot GL22822 at adacore dot com> <6ece3192-e76c-42b1-8554-a69c67e29d52 at BN1BFFO11FD024 dot protection dot gbl>
On 05/22/14 10:58, Ajit Kumar Agarwal wrote:
Thanks Joel for the review comments. Will make sure to consider your suggestions
when Submitting the new patches.
Please don't top post. Please trim your responses so they don't contain
multiple copies of the same text.
Based on the feedback, the updated patch is given below.
Okay for the upstream?
An OK would only be appropriate if you had write access to the repository.
[Patch, microblaze]: Add slr and shr regs
This patch add the support of slr and shr regs and also solves the problem
also? Is there another unmentioned problem?
related to process_g_packet where the buf_len > 2 * rsa->sizeof_g_packet
and throwing the Error that 'g' packet message reply is too long. This is
because the buf_len calculated in the init_remote_state function for
microblaze target is based On the sizeof_g_packet and remote_packet_size
and the memory_packet_config->size. The sizeof_g_packet is 236 because the
number of reg num is 59 and 2* sizeof_g_packet comes to 472 .With shr and
shl entry and the buf_len is 472. This does not match the greater than
conditional statement and works fine. Without shr and shl entry,the
sizeof_g_packets comes to 57*4 *2 = 456. This doesn't match the criteria
in the process_g_packet function leading to throwing of error message as
" 'g' packet message reply is too long".
Please make the description of the problem reasonably succinct. A detailed
analysis of how you identified the problem is not needed, especially when you
mention the error message and the cause of the error multiple times.
What is running on the target?
If this a problem using the XMD gdbserver stub which is returning more registers
than GDB expects? If that is the case, then say so. Otherwise, what is the cause
of the mismatch between the gdb G packet and the target?
ChangeLog:
2014-05-20 Ajit Agarwal <ajitkum@xilinx.com>
* gdb/gdbserver/Makefile.in (microblaze-linux.c): New rule.
* gdb/microblaze-tdep.c (microblaze_register_names): Added
the rshr and rslr register names.
* gdb/microblaze-tdep.h (microblaze_reg_num): Addition of
field MICROBLAZE_SLR_REGNUM and MICROBLAZE_SHR_REGNUM.
(microblaze_frame_cache): Change in the index of
register_offsets.
* gdb/regformats/reg-microblaze.dat: New Register data file.
Signed-off-by:Ajit Agarwal ajitkum@xilinx.com
Thanks & Regards
Ajit
-----Original Message-----
From: Joel Brobecker [mailto:brobecker@adacore.com]
Sent: Wednesday, May 21, 2014 7:16 PM
To: Ajit Kumar Agarwal
Cc: Michael Eager; Michael Eager; gdb-patches@sourceware.org; Vinod Kathail; Vidhumouli Hunsigida; Nagaraju Mekala
Subject: Re: [Patch, microblaze]: Add slr and shr regs and little-endian breakpoint
Here is the problem description. The problem is related to
process_g_packet where the buf_len > 2 * rsa->sizeof_g_packet and
throwing the Error that 'g' packet message reply is too long. This is
because the buf_len calculated in the init_remote_state function for
microblaze target is based On the sizeof_g_packet and
remote_packet_size and the memory_packet_config->size. The
sizeof_g_packet is 236 because the number of reg num is 59 and 2*
sizeof_g_packet comes to 472 .With shr and shl entry and the buf_len
is 472. This does not match the greater than conditional statement and
works fine. Without shr and shl entry,the sizeof_g_packets comes to
57*4 *2 = 456. This doesn't match the criteria in the
process_g_packet function leading to throwing of error message as "
'g' packet message reply is too long".
This is happening when tar remote machine:1234 command is run in gdb.
These changes don't appear related. Split independent changes in
to separate patches.
I will split the changes and send the separate patch with shr and shl
reg changes and the little endian breakpoint support.
Thanks, Ajit. FWIW, I agree with Michael.
Also, when submitting the new patches, please include the description of the problem you are trying to solve in the revision log of your patch. Something like the description you gave above, for instance.
This makes archeology a lot easier for us. The good news when doing that is that submitting the patch could be as simple as "git send-email"-ing the patch; that's what I personally do for my own patches, and it's been a real time saver.
--
Joel
--
Michael Eager eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306 650-325-8077