1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/daemon/graphdriver
Vivek Goyal 4f0017b9ad devmapper: Provide a knob dm.xfs_nospace_max_retries
When xfs filesystem is being used on top of thin pool, xfs can get ENOSPC
errors from thin pool when thin pool is full. As of now xfs retries the
IO and keeps on retrying and does not give up. This can result in container
application being stuck for a very long time. In fact I have seen instances
of unkillable processes. So that means once thin pool is full and process
gets stuck, container can't be stopped/killed either and only option left
seems to be power recycle of the box.

In another instance, writer did not block but failed after a while. But
when I tried to exit/stop the container, unmounting xfs hanged and only
thing I could do was power cycle the machine.

Now upstream kernel has committed patches where it allows user space to
customize user space behavior in case of errors. One of the knobs is
max_retries, which specifies how many times an IO should be retried
when ENOSPC is encountered.

This patch sets provides a tunable knob (dm.xfs_nospace_max_retries) so
that user can specify value for max_retries and tune xfs behavior. If
one sets this value to 0, xfs will not retry IO when ENOSPC error is
encountered. It will instead give up and shutdown filesystem.

This knob can be useful if one is running into unkillable
processes/containers issue on top of xfs.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2016-09-01 11:38:09 -04:00
..
aufs wrong id when testing exists in daemon aufs 2016-08-16 16:42:45 +08:00
btrfs
devmapper devmapper: Provide a knob dm.xfs_nospace_max_retries 2016-09-01 11:38:09 -04:00
graphtest Update diff apply test to check sub directories 2016-07-26 12:03:55 -07:00
overlay Don't create devices if in a user namespace 2016-08-12 16:26:58 -04:00
overlay2 Avoid fork on mount for overlay2 in common case 2016-08-22 11:43:10 -07:00
register
vfs
windows Merge pull request #25509 from Microsoft/jjh/23079 2016-08-12 09:32:22 -07:00
zfs Merge pull request #24745 from daehyeok/logrus 2016-07-28 16:50:19 -07:00
counter.go
driver.go use %s instead of %q when format in graphdirver log 2016-07-30 02:12:55 +08:00
driver_freebsd.go
driver_linux.go
driver_solaris.go Refactoring for logrus formatting 2016-07-18 12:53:34 -06:00
driver_unsupported.go
driver_windows.go
fsdiff.go
plugin.go
plugin_unsupported.go
proxy.go