avg-I commented on this pull request.


>        */
-       error = dmu_tx_assign(tx, TXG_WAITED);
-       if (error != 0) {
-               ASSERT3S(error, ==, EIO);
-               dmu_tx_abort(tx);
-               return (NULL);
+       while ((error = dmu_tx_assign(tx, TXG_WAITED)) != 0) {
+               VERIFY3S(error, ==, ERESTART);

I understand that a `EIO` here would cause some problems.
But it is a very valid code that can be returned when `failmode` is `continue` 
and the pool gets suspended.
Simply panicing with such configuration seems like a too drastic response.
Perhaps this code should treat that kind of `EIO` same as it treats `ERESTART`.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/507#pullrequestreview-85134053
------------------------------------------
openzfs-developer
Archives: 
https://openzfs.topicbox.com/groups/developer/discussions/T05cff66aac5a33a7-M52f083f99f002da0f3f13023
Powered by Topicbox: https://topicbox.com

Reply via email to