diff --git a/dune/istl/paamg/amg.hh b/dune/istl/paamg/amg.hh
index 04df3ba8cb803b3aba5c36b4489c31452788eabf..4d95fe48105f843d7e1df5f939954452fddb8c24 100644
--- a/dune/istl/paamg/amg.hh
+++ b/dune/istl/paamg/amg.hh
@@ -506,8 +506,6 @@ namespace Dune
            || (matrices_->parallelInformation().coarsest().isRedistributed()
                && matrices_->parallelInformation().coarsest().getRedistributed().communicator().size()==1
                && matrices_->parallelInformation().coarsest().getRedistributed().communicator().size()>0)) { // redistribute and 1 proc
-          if(verbosity_>0 && matrices_->parallelInformation().coarsest()->communicator().rank()==0)
-            std::cout<<"Using DIRECTSOLVER"<<std::endl;
           if(matrices_->parallelInformation().coarsest().isRedistributed())
           {
             if(matrices_->matrices().coarsest().getRedistributed().getmat().N()>0)
@@ -517,6 +515,8 @@ namespace Dune
               solver_.reset();
           }else
             solver_.reset(new DIRECTSOLVER<typename M::matrix_type>(matrices_->matrices().coarsest()->getmat(), false, false));
+          if(verbosity_>0 && matrices_->parallelInformation().coarsest()->communicator().rank()==0)
+            std::cout<< "Using a direct coarse solver (" << static_cast< DIRECTSOLVER<typename M::matrix_type>* >(solver_.get())->name() << ")" << std::endl;
         }else
 #undef DIRECTSOLVER
 #endif
diff --git a/dune/istl/superlu.hh b/dune/istl/superlu.hh
index efecbcf45a460d07b860cb011c84dda84c31b7a0..06f707a07cb4eb14c109e37a0d6287c2ad134779 100644
--- a/dune/istl/superlu.hh
+++ b/dune/istl/superlu.hh
@@ -362,6 +362,8 @@ namespace Dune
      * @warning later calling apply will result in an error.
      */
     void free();
+
+    const char* name() { return "SuperLU"; }
   private:
     friend class std::mem_fun_ref_t<void,SuperLU>;
     template<class M,class X, class TM, class TD, class T1>
diff --git a/dune/istl/umfpack.hh b/dune/istl/umfpack.hh
index cea433172c949aa56ef58debf1236f22cfac0e45..9a6e90e9d0087c76d754da02fa6ec4454c6de20e 100644
--- a/dune/istl/umfpack.hh
+++ b/dune/istl/umfpack.hh
@@ -407,6 +407,8 @@ namespace Dune {
       mat_is_loaded = false;
     }
 
+    const char* name() { return "UMFPACK"; }
+
     private:
     typedef typename Dune::UMFPackMethodChooser<T> Caller;