[padb-devel] [padb] r158 committed - Report errors properly when looking for message queues and gdb...
codesite-noreply at google.com
codesite-noreply at google.com
Tue Aug 25 18:45:46 BST 2009
Revision: 158
Author: apittman
Date: Tue Aug 25 10:45:00 2009
Log: Report errors properly when looking for message queues and gdb
isn't installed or other erros pop up.
http://code.google.com/p/padb/source/detail?r=158
Modified:
/trunk/src/padb
=======================================
--- /trunk/src/padb Tue Aug 25 09:25:50 2009
+++ /trunk/src/padb Tue Aug 25 10:45:00 2009
@@ -5085,14 +5085,24 @@
my $g = gdb_start();
my $p = gdb_attach( $g, $pid );
if ( !$p ) {
- debug( $vp, "Failed to attach to process\n" );
+ if ( defined $g->{error} ) {
+ target_error( $vp, $g->{error} );
+ } else {
+ target_error( $vp, "Failed to attach to process" );
+ }
return;
}
+
+ my $base = gdb_var_addr( $g, "MPIR_dll_name" );
+ if ( !defined $base ) {
+ target_error( $vp,
+ "Process does not appear to be using MPI (No MPIR_dll_name
symbol)"
+ );
+ }
if ( defined $carg->{mpi_dll} ) {
$ENV{MPINFO_DLL} = $carg->{mpi_dll};
} else {
- my $base = gdb_var_addr( $g, "MPIR_dll_name" );
if ( !defined $base ) {
gdb_detach($g);
gdb_quit($g);
@@ -5109,11 +5119,17 @@
# As above but take a gdb handle
sub fetch_mpi_queue_gdb {
my ( $carg, $vp, $pid, $g ) = @_;
+
+ my $base = gdb_var_addr( $g, "MPIR_dll_name" );
+ if ( !defined $base ) {
+ target_error( $vp,
+ "Process does not appear to be using MPI (No MPIR_dll_name
symbol)"
+ );
+ }
if ( defined $carg->{mpi_dll} ) {
$ENV{MPINFO_DLL} = $carg->{mpi_dll};
} else {
- my $base = gdb_var_addr( $g, "MPIR_dll_name" );
if ( !defined $base ) {
return;
}
@@ -5148,7 +5164,11 @@
$proc->{gdb} = $gdb;
push( @all, $proc );
} else {
- output $vp, "Failed to attach to to process";
+ if ( defined $gdb->{error} ) {
+ target_error( $vp, $gdb->{error} );
+ } else {
+ target_error( $vp, "Failed to attach to process" );
+ }
}
}
@@ -6135,9 +6155,9 @@
$gdb = $g;
} else {
if ( defined $gdb->{error} ) {
- output $vp, $gdb->{error};
+ target_error( $vp, $gdb->{error} );
} else {
- output $vp, "Failed to attach to process";
+ target_error( $vp, "Failed to attach to process" );
}
}
} else {
More information about the padb-devel
mailing list