-
Notifications
You must be signed in to change notification settings - Fork 18.9k
Allow sync_file_range2 on supported architectures. #30971
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.