From: Yao Qi <yao@codesourcery.com>
To: <gdb-patches@sourceware.org>
Subject: [PATCH 4/6] Return early in target_xfer_partial when LEN is zero.
Date: Fri, 31 Jan 2014 03:38:00 -0000 [thread overview]
Message-ID: <1391139325-2758-5-git-send-email-yao@codesourcery.com> (raw)
In-Reply-To: <1391139325-2758-1-git-send-email-yao@codesourcery.com>
Nowadays, argument LEN of to_xfer_partial can be zero in some cases,
and each implementation may do nothing and return zero, indicating
transfer is done. That is fine. However, when we change
to_xfer_partial to return target_xfer_status, we have to check every
return value of most of to_xfer_partial implementations, return
TARGET_XFER_DONE if return value is zero.
This patch simplifies this by checking LEN in target_xfer_partial, and
return 0 if LEN is zero. Regression tested on x86_84-linux. Is it
OK?
gdb:
2014-01-30 Yao Qi <yao@codesourcery.com>
* target.c (target_xfer_partial): Return zero if LEN is zero.
---
gdb/target.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/gdb/target.c b/gdb/target.c
index 3ca3e71..65a226e 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -1697,6 +1697,10 @@ target_xfer_partial (struct target_ops *ops,
gdb_assert (ops->to_xfer_partial != NULL);
+ /* Transfer is done when LEN is zero. */
+ if (len == 0)
+ return 0;
+
if (writebuf && !may_write_memory)
error (_("Writing to memory is not allowed (addr %s, len %s)"),
core_addr_to_string_nz (offset), plongest (len));
--
1.7.7.6
next prev parent reply other threads:[~2014-01-31 3:38 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-31 3:37 [PATCH 0/6] Return target_xfer_status in to_xfer_partial Yao Qi
2014-01-31 3:37 ` [PATCH 1/6] Tweak in memory_error Yao Qi
2014-02-06 12:41 ` Pedro Alves
2014-02-07 4:21 ` Yao Qi
2014-01-31 3:37 ` [PATCH 2/6] core_xfer_shared_libraries and core_xfer_shared_libraries_aix returns ULONGEST Yao Qi
2014-02-06 14:43 ` Pedro Alves
2014-02-07 4:21 ` Yao Qi
2014-01-31 3:38 ` [PATCH 6/6] Update comments to to_xfer_partial implementations Yao Qi
2014-01-31 3:50 ` Joel Brobecker
2014-01-31 3:38 ` [PATCH 3/6] Replace -1 with TARGET_XFER_E_IO Yao Qi
2014-02-06 14:43 ` Pedro Alves
2014-01-31 3:38 ` Yao Qi [this message]
2014-02-06 14:44 ` [PATCH 4/6] Return early in target_xfer_partial when LEN is zero Pedro Alves
2014-01-31 3:39 ` [PATCH 5/6] Return target_xfer_status in to_xfer_partial Yao Qi
2014-02-06 14:44 ` Pedro Alves
2014-02-07 2:11 ` Yao Qi
2014-02-11 6:35 ` Yao Qi
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=1391139325-2758-5-git-send-email-yao@codesourcery.com \
--to=yao@codesourcery.com \
--cc=gdb-patches@sourceware.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