[Cluster-devel] [PATCH] gfs2: ignore rindex_update failure in dinode_dealloc

Bob Peterson rpeterso at redhat.com
Fri May 5 12:46:20 UTC 2023


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



More information about the Cluster-devel mailing list