201 Commits

Author SHA1 Message Date
Susan Vattic
3c2c9ba339
Update README.md 2019-05-11 14:49:19 -05:00
Susan Vattic
1c7991fb07
Update Dockerfile.static 2019-05-11 14:46:25 -05:00
Giuseppe Scrivano
89bd69ba91
Merge pull request #70 from thiell/sendfile-minorfix
copyup: minor fixes for sendfile()
2019-05-06 14:51:05 +02:00
Stephane Thiell
a558c9ab3c copyup: minor fixes for sendfile() 2019-05-05 20:27:03 -07:00
Daniel J Walsh
9f193e9f69
Merge pull request #71 from giuseppe/no-copyup-whiteout
fuse-overlayfs: do not copyup a whiteout on rename
2019-05-03 09:09:17 -04:00
Giuseppe Scrivano
02dcd8a3e1
fuse-overlayfs: do not copyup a whiteout on rename
Closes: https://github.com/containers/fuse-overlayfs/issues/69

Signed-off-by: Giuseppe Scrivano <giuseppe@scrivano.org>
2019-05-03 13:02:16 +02:00
Daniel J Walsh
cdd706782f
Merge pull request #68 from giuseppe/fix-opaque-whiteout
fuse-overlayfs: add support for .wh..wh..opq variant
2019-04-28 06:10:12 -04:00
Giuseppe Scrivano
480d27ff3a
fuse-overlayfs: fix error messages prefix
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-27 10:13:22 +02:00
Giuseppe Scrivano
29877f7edf
fuse-overlayfs: create opaque whiteout file for dirs
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-27 10:13:21 +02:00
Giuseppe Scrivano
064452bfba
fuse-overlayfs: not override the ret from fstatat
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-27 00:19:26 +02:00
Giuseppe Scrivano
eee6a48738
fuse-overlayfs: support opaque whiteouts
Support the .wh..wh..opq variant.

Closes: https://github.com/containers/libpod/issues/3021

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-27 00:19:25 +02:00
Giuseppe Scrivano
69165c8a84
Merge pull request #66 from 3XX0/opaque-xattr-notsup
fuse-overlayfs: skip opaque whiteouts on unsupported filesystems (e.g…
2019-04-12 10:16:22 +02:00
Giuseppe Scrivano
b1c612984e
Merge pull request #65 from 3XX0/statfs-upper-fd
fuse-overlayfs: change ovl_statfs to use the upper layer fd instead o…
2019-04-12 10:15:53 +02:00
Jonathan Calmels
bff9fd9e22 fuse-overlayfs: change ovl_statfs to use the upper layer fd instead of its path
Signed-off-by: Jonathan Calmels <jcalmels@nvidia.com>
2019-04-11 16:42:29 -07:00
Jonathan Calmels
d371739254 fuse-overlayfs: skip opaque whiteouts on unsupported filesystems (e.g. tmpfs)
Signed-off-by: Jonathan Calmels <jcalmels@nvidia.com>
2019-04-11 16:40:22 -07:00
Daniel J Walsh
1b4227ce66
Merge pull request #64 from giuseppe/write-use-splice-move
fuse-overlayfs: write uses SPLICE_MOVE|SPLICE_NONBLOCK
2019-04-08 17:33:07 -04:00
Giuseppe Scrivano
e108eee92c
fuse-overlayfs: write uses SPLICE_MOVE|SPLICE_NONBLOCK
don't block on writing to the pipe.  It has a significant impact on
the performance.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-08 22:12:07 +02:00
Giuseppe Scrivano
76fa1672a8
Merge pull request #63 from giuseppe/fix-ioctl
ioctl: return immediately with not implemented ioctls
2019-04-05 02:40:17 +02:00
Giuseppe Scrivano
e4f219a14d
ioctl: return immediately with not implemented ioctls
avoid to send an error response twice.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-04 22:21:05 +02:00
Daniel J Walsh
9c7910c441
Merge pull request #61 from giuseppe/ioctl
fuse-overlayfs: support some ioctls
2019-04-03 17:52:11 -04:00
Giuseppe Scrivano
1f04143cdc
fuse-overlayfs: support some ioctls
Closes: https://github.com/containers/fuse-overlayfs/issues/59

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-03 17:58:36 +02:00
Daniel J Walsh
9b6732407c
Merge pull request #62 from giuseppe/use-sendfile-copyup
copyup: use sendfile(2) if available
2019-04-03 09:38:41 -04:00
Giuseppe Scrivano
65e504cda8
copyup: use sendfile(2) if available
attempt to use sendfile(2) before falling back to a read/write loop.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-03 14:52:47 +02:00
Giuseppe Scrivano
eb066fba6d
Merge pull request #60 from giuseppe/use-reflinks
main: copyup uses reflinks if possible
2019-04-02 12:53:41 +02:00
Giuseppe Scrivano
844766d667
main: copyup uses reflinks if possible
Use reflinks if they are supported by the underlying file system.

On my system, using XFS and reflinks, chowning recursively a directory
passed from:

User time (seconds): 0.02
System time (seconds): 0.34
Percent of CPU this job got: 8%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:04.52

to:

User time (seconds): 0.02
System time (seconds): 0.22
Percent of CPU this job got: 17%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:01.45

the performance improvement can be higher if the directory is made of
few but bigger files.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-02 10:19:22 +02:00
Daniel J Walsh
e79f0207a4
Merge pull request #58 from giuseppe/silent
fuse-overlayfs: print config settings only with --debug
2019-03-29 07:06:44 -04:00
Giuseppe Scrivano
e9ea0f758b
fuse-overlayfs.1: regenerate
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-29 10:23:57 +01:00
Giuseppe Scrivano
ba05f2e351
main: print configuration settings only with --debug
Closes: https://github.com/containers/fuse-overlayfs/issues/57

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-29 10:23:15 +01:00
Giuseppe Scrivano
a6958ce78f
Merge pull request #56 from giuseppe/uid-mapping-docs
docs: document the uid/gid mapping
2019-03-28 17:18:40 +01:00
Giuseppe Scrivano
597143e1f2
docs: document uidmapping and gidmapping
Closes: https://github.com/containers/fuse-overlayfs/issues/54

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-28 16:40:40 +01:00
Daniel J Walsh
0a9bc5b4d9
Merge pull request #55 from giuseppe/fix-rm-symlink
fuse-overlayfs: fix first unlink done
2019-03-28 07:03:51 -04:00
Giuseppe Scrivano
0f52165ae6
fuse-overlayfs: do not hardcode overflow ids
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-28 09:47:39 +01:00
Giuseppe Scrivano
3a921aa5d7
fuse-overlayfs: fix first unlink done
fix a regression introduced by f64f65287817fecd0 that prevents a
whiteout file to be created on the first unlink.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-27 21:26:45 +01:00
Giuseppe Scrivano
8ec68aee52
Merge pull request #53 from giuseppe/fix-lookup-if-whiteout-lower-layer
fuse-overlayfs: fix lookup with multiple layers
2019-03-08 20:06:27 +01:00
Giuseppe Scrivano
44d23bc07e
fuse-overlayfs: fix lookup with multiple layers
when looking up multiple layers and we have already found a file, do
not check if whiteouts are present in lower layers.  The lookup in the
lower layers is needed only to correctly propagate the inode number.

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1686889

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-08 18:13:55 +01:00
Daniel J Walsh
536abddd91
Merge pull request #52 from giuseppe/fix-musl-build
Fix musl build
2019-03-07 09:56:31 -05:00
Giuseppe Scrivano
f17f15a48b
build: provide replacement for TEMP_FAILURE_RETRY if not present
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-07 10:22:26 +01:00
Giuseppe Scrivano
57b1e98d69
build: provide replacement for open_by_handle_at(2) if not present
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-07 10:22:12 +01:00
Giuseppe Scrivano
40ba2786d2
build: provide replacement for error(3) if not present
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-03-07 10:21:20 +01:00
Daniel J Walsh
ea72572364
Merge pull request #49 from giuseppe/fix-readme-version
README.md: update fuse version
2019-02-25 16:51:07 -05:00
Giuseppe Scrivano
8349f8b5d9
README.md: update fuse version
we require FUSE 3.2.1, update the README to reflect it.

Closes: https://github.com/containers/fuse-overlayfs/issues/48

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-24 23:10:50 +01:00
Daniel J Walsh
53286d5dfa
Merge pull request #47 from giuseppe/ignore-errors-if-setxattr-not-supported
fuse-overlayfs: ignore xattrs copy errors when not supported
2019-02-22 06:35:06 -05:00
Giuseppe Scrivano
1a5ba7a3ef
fuse-overlayfs: ignore xattrs copy errors when not supported
it solves this error on copy_xattrs when the underlying file system is
overlay:

flistxattr(9, "security.selinux\0", 1048576) = 17
fgetxattr(9, "security.selinux", "system_u:object_r:container_file"..., 256) = 48
fsetxattr(10, "security.selinux", "system_u:object_r:container_file"..., 48, 0) = -1

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-22 10:37:18 +01:00
Daniel J Walsh
d76078982e
Merge pull request #45 from giuseppe/fix-leaks
fuse-overlayfs: use autocleanup functions
2019-02-18 16:53:32 -05:00
Giuseppe Scrivano
1533c9f596
fuse-overlayfs: skip whiteout if not present in lower layers
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-18 20:13:50 +01:00
Giuseppe Scrivano
130e0000e5
fuse-overlayfs: accept nosuid,nodev,exec,noexec
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-18 20:05:41 +01:00
Giuseppe Scrivano
de3727adb2
travis: exit immediately if something fails
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-18 20:05:41 +01:00
Giuseppe Scrivano
7f21f8fcf9
fuse-overlayfs: add cleanup for layers
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-17 21:16:47 +01:00
Giuseppe Scrivano
67fa787735
fuse-overlayfs: use cleanup function for initializing node
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-17 21:16:46 +01:00
Giuseppe Scrivano
f1b1e52a15
fuse-overlayfs: refactor some xattrs common code
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-17 20:44:55 +01:00