moby--moby/daemon/graphdriver
Vivek Goyal 07ff17fb85 devmapper: Switch to xfs as default filesystem if supported
If platform supports xfs filesystem then use xfs as default filesystem 
for container rootfs instead of ext4. Reason being that ext4 is pre-allcating
lot of metadata (around 1.8GB on 100G thin volume) and that can take long
enough on AWS storage that systemd times out and docker fails to start.

If one disables pre-allocation of ext4 metadata, then it will be allocated
when containers are mounted and we will have multiple copies of metadata
per container. For a 100G thin device, it was around 1.5GB of metadata
per container.

ext4 has an optimization to skip zeroing if discards are issued and
underlying device guarantees that zero will be returned when discarded
blocks are read back. devicemapper thin devices don't offer that guarantee
so ext4 optimization does not kick in. In fact given discards are optional
and can be dropped on the floor if need be, it looks like it might not be
possible to guarantee that all the blocks got discarded and if read back
zero will be returned.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2015-11-11 12:07:35 -05:00
..
aufs Copy aufs hardlinks to top layer 2015-10-12 20:44:32 -07:00
btrfs Add user namespace (mapping) support to the Docker engine 2015-10-09 17:47:37 -04:00
devmapper devmapper: Switch to xfs as default filesystem if supported 2015-11-11 12:07:35 -05:00
graphtest Windows: Fix daemon\graphdriver\graphtest 2015-10-31 21:14:18 -07:00
overlay Add user namespace (mapping) support to the Docker engine 2015-10-09 17:47:37 -04:00
vfs Add user namespace (mapping) support to the Docker engine 2015-10-09 17:47:37 -04:00
windows dockerversion placeholder for library import 2015-11-09 19:32:46 +01:00
zfs Add user namespace (mapping) support to the Docker engine 2015-10-09 17:47:37 -04:00
driver.go Comment: add some lines back 2015-10-12 19:34:58 +08:00
driver_freebsd.go
driver_linux.go daemon/graphdriver fix lint errors/warnings 2015-08-17 19:27:36 +00:00
driver_unsupported.go daemon/graphdriver fix lint errors/warnings 2015-08-17 19:27:36 +00:00
driver_windows.go daemon/graphdriver fix lint errors/warnings 2015-08-17 19:27:36 +00:00
fsdiff.go Add user namespace (mapping) support to the Docker engine 2015-10-09 17:47:37 -04:00
imagerestorer.go Calculate hash based image IDs on pull 2015-10-12 10:51:28 -07:00
plugin.go Create extpoint for graphdrivers 2015-09-09 20:24:35 -04:00
plugin_unsupported.go Create extpoint for graphdrivers 2015-09-09 20:24:35 -04:00
proxy.go Create extpoint for graphdrivers 2015-09-09 20:24:35 -04:00