@@ -1563,7 +1563,8 @@ int bch2_delete_dead_snapshots(struct bch_fs *c)
15631563 */
15641564 ret = for_each_btree_key (trans , iter , BTREE_ID_snapshots , POS_MIN , 0 , k ,
15651565 check_should_delete_snapshot (trans , k , & delete_leaves , & delete_interior ));
1566- bch_err_msg (c , ret , "walking snapshots" );
1566+ if (!bch2_err_matches (ret , EROFS ))
1567+ bch_err_msg (c , ret , "walking snapshots" );
15671568 if (ret )
15681569 goto err ;
15691570
@@ -1602,15 +1603,17 @@ int bch2_delete_dead_snapshots(struct bch_fs *c)
16021603
16031604 bch2_disk_reservation_put (c , & res );
16041605
1605- bch_err_msg (c , ret , "deleting keys from dying snapshots" );
1606+ if (!bch2_err_matches (ret , EROFS ))
1607+ bch_err_msg (c , ret , "deleting keys from dying snapshots" );
16061608 if (ret )
16071609 goto err ;
16081610 }
16091611
16101612 darray_for_each (delete_leaves , i ) {
16111613 ret = commit_do (trans , NULL , NULL , 0 ,
16121614 bch2_snapshot_node_delete (trans , * i ));
1613- bch_err_msg (c , ret , "deleting snapshot %u" , * i );
1615+ if (!bch2_err_matches (ret , EROFS ))
1616+ bch_err_msg (c , ret , "deleting snapshot %u" , * i );
16141617 if (ret )
16151618 goto err ;
16161619 }
@@ -1630,15 +1633,17 @@ int bch2_delete_dead_snapshots(struct bch_fs *c)
16301633 darray_for_each (delete_interior , i ) {
16311634 ret = commit_do (trans , NULL , NULL , 0 ,
16321635 bch2_snapshot_node_delete (trans , i -> id ));
1633- bch_err_msg (c , ret , "deleting snapshot %u" , i -> id );
1636+ if (!bch2_err_matches (ret , EROFS ))
1637+ bch_err_msg (c , ret , "deleting snapshot %u" , i -> id );
16341638 if (ret )
16351639 goto err ;
16361640 }
16371641err :
16381642 darray_exit (& delete_interior );
16391643 darray_exit (& delete_leaves );
16401644 bch2_trans_put (trans );
1641- bch_err_fn (c , ret );
1645+ if (!bch2_err_matches (ret , EROFS ))
1646+ bch_err_fn (c , ret );
16421647 return ret ;
16431648}
16441649
0 commit comments