Allow sync_file_range2 on supported architectures.#30971
Allow sync_file_range2 on supported architectures.#30971justincormack merged 1 commit intomoby:masterfrom
Conversation
f10b99e to
ddcfcc8
Compare
ping @justincormack |
|
Yes, you need to regenerate the JSON version with |
|
If you just remove the final line feed on the json |
|
Other than that LGTM |
|
Please make sure to squash commits, thanks! |
7084bb0 to
3d926d8
Compare
|
Sorry, the CI is obstinately refusing to rebuild even though I poked it. |
|
Ok, its rebuilding now should be good. |
|
LGTM |
|
Hmm, Janky still thinks that |
profiles/seccomp/default.json
Outdated
There was a problem hiding this comment.
Extra commas here and line 642 seems to cause the validation issue.
Signed-off-by: Gabriel Linder <[email protected]>
3d926d8 to
52d8f58
Compare
|
Thanks! |
|
@justincormack I tried cherry-picking this into the 1.13.x branch (for 17.03), but it didn't apply cleanly. If you want this into that branch, could you open a PR? |
Using docker 1.13.1 on a ppc64le host, running postgres (tried with 9.4 to 9.6) gives the following warning when trying to flush data to disks (which happens very frequently) :
WARNING: could not flush dirty data: Operation not permitted.
A quick dig in postgres source code indicate it uses sync_file_range(2) to flush data; which on ppe64le and arm64 is translated to sync_file_range2(2) for alignements reasons.
But docker does not allow sync_file_range2(2), making postgres sad because it can not flush its buffers. arm_sync_file_range(2) is an ancient alias to sync_file_range2(2), the syscall was renamed in Linux 2.6.22 when the same syscall was added for PowerPC.
This diff make postgres, docker and ppc64le great again.