-
Notifications
You must be signed in to change notification settings - Fork 822
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
clone(..., ..., CLONE_VM|CLONE_VFORK|SIGCHLD, ...) returns Invalid Argument #1005
Comments
Given that he answered the other linked thread on clone(), maybe ping @stehufntdev |
Thanks for reporting the issue. There is limited support for the different supported clone flags, but we are currently working through fixes in this area. |
@stehufntdev clone(child_stack=0, flags=CLONE_NEWUSER|SIGCHLD) = -1 EINVAL (Invalid argument) with Vivaldi browser |
Thanks iz0eyj, I can confirm we do not support user namespaces (CLONE_NEWUSER) but are tracking that work. |
@iz0eyj By the way, Arch linux does not support user namespaces by default either. If you install Arch's build of Vivaldi off the AUR, it should in theory work. @stehufntdev Not all distros even support user namespaces for security reasons (and therefore, to use unprivileged containers you need to use an unsupported custom kernel). You should probably be aware of this before you go to implement it. Here is the quote from the Wiki: "Due to security concerns, the default Arch kernel does not ship with the ability to run containers as an unprivileged user; therefore, it is normal to see a missing status for "User namespaces" when running the check. See FS#36969 for this feature request." |
@iz0eyj By the way, you might be able to get Vivaldi to launch with "--no-sandbox". This disables the use of "User Namespaces". Some of the Vivaldi devs are curious if it will actually work. |
@fpqc many thanks fpqc, Vivaldi is a nice browser and I'm happy to report something to devs. |
Please be noted |
Cool if this is a dup, but note the failure mode here is |
@therealkenc - You're totally right, this is different. I should have read through this more closely before closing. This is missing flag support in the clone system call. |
We updated the code to handle clone vfork (i.e. CLONE_VM|CLONE_VFORK|SIGCHLD) the same as vfork so a fix should be out for insider builds soon. As part of this change we realized we have some differences in vfork and those will be patched up later. |
Thanks @stehufntdev! This is confirmed fixed in 15046. I am guessing 15042 as well, but is also not in the release notes. I'm going to try out Yakkety now since this was the major blocker. #555 will need some grease. |
Thanks for confirming! Yes we are still tracking #555. |
In build 17666.rs_prerelease.180504-1501 the following clone flags are still unsupported (testcase: clone_syscall.zip):
CLONE_CHILD_SETTID lack of support is preventing Flatpak to install applications. |
Build 14905. Following test case prints: "
clone() returned: Invalid argument
" on WSL (Trusty). Functionfoo()
spawns successfully on native Ubuntu. It appears to be a construct used in glibc 2.24, possibly here. Problem looks a lot like #158, which notesclone()
progress was made in 14352, but this combination of flags still seems to trip. File under "vote for it on User Voice".[test case edited Feb 2 2017]
strace:
The text was updated successfully, but these errors were encountered: