diff --git a/patches/README b/patches/README
deleted file mode 100644
index 023fc6691e9bd61b7bd1efe33eddea8268618b54..0000000000000000000000000000000000000000
--- a/patches/README
+++ /dev/null
@@ -1,6 +0,0 @@
-- If the AMGBackend should be used without SuperLU as coarse grid solver, it can
-  be benefitial to decrease the corresponding tolerance. To do so, apply the
-  patch istl-2.4.1.patch in your directory containing
-  dune-istl 2.4.1, e.g.:
-  patch -p1 <../dumux/patches/istl-2.4.1.patch
-
diff --git a/patches/README.md b/patches/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..b9d0dd56bf5ebc542e33449336ff81ecde969b34
--- /dev/null
+++ b/patches/README.md
@@ -0,0 +1,7 @@
+If the AMGBackend should be used without SuperLU as coarse grid solver, it can
+be benefitial to decrease the corresponding tolerance. To do so, apply the patch
+
+ - `istl-2.6.patch` in your directory containing dune-istl 2.6
+   ```bash
+   patch -p1 <../dumux/patches/istl-2.6.patch
+   ```
diff --git a/patches/istl-2.4.1.patch b/patches/istl-2.4.1.patch
deleted file mode 100644
index 0ff019cc891bcbd5a8a7cc17ed5e902aadc58710..0000000000000000000000000000000000000000
--- a/patches/istl-2.4.1.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/dune/istl/paamg/amg.hh b/dune/istl/paamg/amg.hh
-index 56b1d8d..d672756 100644
---- a/dune/istl/paamg/amg.hh
-+++ b/dune/istl/paamg/amg.hh
-@@ -526,13 +526,13 @@ namespace Dune
-               // We are still participating on this level
-               solver_.reset(new BiCGSTABSolver<X>(const_cast<M&>(matrices_->matrices().coarsest().getRedistributed()),
-                                                   *scalarProduct_,
--                                                  *coarseSmoother_, 1E-2, 1000, 0));
-+                                                  *coarseSmoother_, 1E-12, 1000, 0));
-             else
-               solver_.reset();
-           }else
-             solver_.reset(new BiCGSTABSolver<X>(const_cast<M&>(*matrices_->matrices().coarsest()),
-                                                 *scalarProduct_,
--                                                *coarseSmoother_, 1E-2, 1000, 0));
-+                                                *coarseSmoother_, 1E-12, 1000, 0));
-         }
-       }
- 
diff --git a/patches/istl-2.6.patch b/patches/istl-2.6.patch
new file mode 100644
index 0000000000000000000000000000000000000000..802a92e0386a84fbcb1acf05a3f5f01dc9c4098a
--- /dev/null
+++ b/patches/istl-2.6.patch
@@ -0,0 +1,21 @@
+diff --git a/dune/istl/paamg/amg.hh b/dune/istl/paamg/amg.hh
+index b4b90a97..5bd66cda 100644
+--- a/dune/istl/paamg/amg.hh
++++ b/dune/istl/paamg/amg.hh
+@@ -523,14 +523,14 @@ namespace Dune
+               // in order to ensure that we fulfill the alignement requirements
+               solver_.reset(new BiCGSTABSolver<X>(const_cast<M&>(matrices_->matrices().coarsest().getRedistributed()),
+                                                   *scalarProduct_,
+-                                                  *coarseSmoother_, 1E-2, 1000, 0));
++                                                  *coarseSmoother_, 1E-12, 1000, 0));
+             else
+               solver_.reset();
+           }else
+           {
+               solver_.reset(new BiCGSTABSolver<X>(const_cast<M&>(*matrices_->matrices().coarsest()),
+                   *scalarProduct_,
+-                  *coarseSmoother_, 1E-2, 1000, 0));
++                  *coarseSmoother_, 1E-12, 1000, 0));
+             // // we have to allocate these types using the rebound allocator
+             // // in order to ensure that we fulfill the alignement requirements
+             // using Alloc = typename A::template rebind<BiCGSTABSolver<X>>::other;