[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