On 5/5/23 4:49 AM, Steven Whitehouse wrote:
On Fri, 2023-05-05 at 08:44 +0100, Andrew Price wrote:
This patch makes gfs2_dinode_dealloc ignore the bad return code and
proceed with freeing the dinode so the QE tests will not be tripped
up.

Is it really ok to ignore all potential errors here? I wonder if it
should just ignore -EINTR (or whichever error the test produces) so
that
it can still fail well for errors like -EIO.

Cheers,
Andy

Perhaps the more important question is why there are errors there in
the first place?

Well, errors can be returned by gfs2_rindex_update for a number of reasons. The -EINTR is just one, when the test case is interrupted due to hitting its time limit. An -EIO may be caused by IO errors reading the storage media, pulled cables, failed drivers or whatever. But as I said in my reply to Andy's email, it's basically inconsequential to this code path. Errors like -EIO may prevent further reads or writes to the file system, its metadata, etc., in other places but that should be flagged up by other processes and hopefully gfs2's recovery, journal replays, etc., will ensure file system integrity.

Regards,

Bob Peterson

Reply via email to