Re: [PATCH 8/9] rbd: set req->r_abort_on_full in writing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 8, 2018 at 4:58 AM, Dongsheng Yang
<dongsheng.yang@xxxxxxxxxxxx> wrote:
> Thanx Ilya,
>      IIUC, the problem is that block layer will translate the ENOSPC to EIO,
> then it will cause filesystem corruption if the cluster get full -> not full
> soon.
>
> But Christoph introduce a new block status code type, which will translate
> the correct error number to users of block layer in 2017.
>
> please check this commit:
>
> https://github.com/torvalds/linux/commit/2a842acab109f40f0d7d10b38e9ca88390628996

IIRC the way it used to work is that an error code would always be
propagated in the sense that bios would be completed with whatever
error code set by the block driver (even something crazy like -EBFONT).
Christoph's patch constrained that to a set of blk_status_t codes.

The particular error code doesn't really matter.  Whether it's -EIO or
-ENOSPC, a filesystem nowadays will either remount itself read-only or
shutdown.  xfs used to retry indefinitely in certain cases, but that
has changed and is now configurable via /sys/fs/xfs.

Thanks,

                Ilya
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux