Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <palves@redhat.com>
To: Simon Marchi <simon.marchi@ericsson.com>, gdb-patches@sourceware.org
Cc: qiyaoltc@gmail.com, antoine.tremblay@ericsson.com
Subject: Re: [PATCH 1/2] Change gdb_load_shlibs to gdb_load_shlib
Date: Wed, 13 Apr 2016 18:18:00 -0000	[thread overview]
Message-ID: <570E8D61.3010100@redhat.com> (raw)
In-Reply-To: <1460502865-10999-1-git-send-email-simon.marchi@ericsson.com>

On 04/13/2016 12:14 AM, Simon Marchi wrote:
> Note: this series should be applied on top of
>   https://sourceware.org/ml/gdb-patches/2016-04/msg00252.html
> 
> -------
> 
> This patch renames gdb_load_shlibs to gdb_load_shlib, and changes its
> arguments so that it can only take a single library at the time.
> 
> The following patch requires to be able to get the destination path of a
> loaded shared library, so it's more straightforward if the procedure can
> only accept one argument.
> 
> On top of the mass renaming, there are a handful of locations where I
> had to split up a gdb_load_shlibs in two gdb_load_shlib.
> 

I'd have been nicer and more focused if you split this in two:

 #1 - make gdb_load_shlibs accept only one shlib.
 #2 - do the trivial mass rename.

> -proc gdb_load_shlibs { args } {
> -    foreach file $args {
> -	gdb_remote_download target [shlib_target_file $file]
> -    }
> +proc gdb_load_shlib { file } {
> +    set dest [gdb_remote_download target [shlib_target_file $file]]
>  
>      if {[is_remote target]} {
>  	# If the target is remote, we need to tell gdb where to find the
> @@ -4237,8 +4235,10 @@ proc gdb_load_shlibs { args } {
>  	# We could set this even when not testing remotely, but a user
>  	# generally won't set it unless necessary.  In order to make the tests
>  	# more like the real-life scenarios, we don't set it for local testing.
> -	gdb_test "set solib-search-path [file dirname [lindex $args 0]]" "" ""
> +	gdb_test "set solib-search-path [file dirname [lindex $file 0]]" "" ""

$file is no longer a list, so [lindex $file 0] can just be $file.

With:

 gdb_load_shlib $libobj1
 gdb_load_shlib $libobj2

We'll now only end up with $libobj2's dirname in the solib-search-path.
This usually won't be a problem since the dirnames will be the same,
though I guess some test might be doing something with subdirs.
Grepping a bit I found solib-search.exp, though it's currently disabled
on remote testing.

Do we need to maintain a list of dirnames, and clear it somewhere?

Thanks,
Pedro Alves


  parent reply	other threads:[~2016-04-13 18:18 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-12 23:14 Simon Marchi
2016-04-12 23:14 ` [PATCH 2/2] ftrace tests: Use gdb_load_shlib result to lookup IPA in info sharedlibrary Simon Marchi
2016-04-13 18:18 ` Pedro Alves [this message]
2016-04-13 21:05   ` [PATCH 1/2] Change gdb_load_shlibs to gdb_load_shlib Simon Marchi
2016-04-14 11:28     ` Pedro Alves
2016-04-14  9:33 ` Yao Qi
2016-04-14 15:17   ` Simon Marchi
2016-04-14 15:27     ` Pedro Alves

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=570E8D61.3010100@redhat.com \
    --to=palves@redhat.com \
    --cc=antoine.tremblay@ericsson.com \
    --cc=gdb-patches@sourceware.org \
    --cc=qiyaoltc@gmail.com \
    --cc=simon.marchi@ericsson.com \
    /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