On Tue, Feb 25, 2020 at 10:40:23AM -0800, Darrick J. Wong wrote: > Prior to this patch, the "!(flags & DEBUGGER)" expressions in the call > sites evaluate to 0 or 1, and this effectively results in libxfs_mount > passing EXIT_ON_FAILURE to the buffer read functions as the flag value. > The flag value is passed all the way down to __read_buf, and when it > sees an IO failure, it exits. > > After this patch, libxfs_mount passes flags==0, which means that we get > a buffer back, possibly with b_error set. If b_error is set, we log a > warning about the screwed up filesystem and return a null mount if the > libxfs_mount caller didn't indicate that it is a debugger. Presumably > the libxfs_mount caller will exit with error if we return a null mount. > > IOWs, I'm doing exactly what the commit message says, but in a rather > subtle way. I'll clarify that, if you'd like. Ok, with a proper commit message this looks good to me: Reviewed-by: Christoph Hellwig <hch@xxxxxx>