[PATCH] Change to_xfer_partial doc to use addressable memory units

Simon Marchi simon.marchi@polymtl.ca
Wed Jun 21 11:19:00 GMT 2017


On 2017-05-31 16:41, Simon Marchi wrote:
> The commit
> 
>   d309493  target: consider addressable unit size when reading/writing 
> memory
> 
> introduced the possibility of reading memory of targets with
> non-8-bit-bytes (e.g. memories that store 16 bits at each address).
> The documentation of target_read and target_write was updated
> accordingly, but to_xfer_partial, which is very related, wasn't 
> updated.
> This commit fixes that.
> 
> gdb/ChangeLog:
> 
> 	* target.h (struct target_ops) <to_xfer_partial>: Update doc to
> 	talk about addressable units instead of bytes.
> ---
>  gdb/target.h | 13 ++++++++-----
>  1 file changed, 8 insertions(+), 5 deletions(-)
> 
> diff --git a/gdb/target.h b/gdb/target.h
> index a971adf..d46211e 100644
> --- a/gdb/target.h
> +++ b/gdb/target.h
> @@ -712,22 +712,25 @@ struct target_ops
>  					      CORE_ADDR offset)
>        TARGET_DEFAULT_NORETURN (generic_tls_error ());
> 
> -    /* Request that OPS transfer up to LEN 8-bit bytes of the target's
> -       OBJECT.  The OFFSET, for a seekable object, specifies the
> +    /* Request that OPS transfer up to LEN addressable units of the 
> target's
> +       OBJECT.  When reading from a memory object, the size of an 
> addressable
> +       unit is architecture dependent and can be found using
> +       gdbarch_addressable_memory_unit_size.  Otherwise, an 
> addressable unit is
> +       1 byte long.  The OFFSET, for a seekable object, specifies the
>         starting point.  The ANNEX can be used to provide additional
>         data-specific information to the target.
> 
>         Return the transferred status, error or OK (an
> -       'enum target_xfer_status' value).  Save the number of bytes
> +       'enum target_xfer_status' value).  Save the number of 
> addressable units
>         actually transferred in *XFERED_LEN if transfer is successful
> -       (TARGET_XFER_OK) or the number unavailable bytes if the 
> requested
> +       (TARGET_XFER_OK) or the number unavailable units if the 
> requested
>         data is unavailable (TARGET_XFER_UNAVAILABLE).  *XFERED_LEN
>         smaller than LEN does not indicate the end of the object, only
>         the end of the transfer; higher level code should continue
>         transferring if desired.  This is handled in target.c.
> 
>         The interface does not support a "retry" mechanism.  Instead it
> -       assumes that at least one byte will be transfered on each
> +       assumes that at least one addressable unit will be transfered 
> on each
>         successful call.
> 
>         NOTE: cagney/2003-10-17: The current interface can lead to

I pushed this in.

Simon



More information about the Gdb-patches mailing list