diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2022-02-15 18:54:29 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-02-18 11:47:26 +0000 |
commit | 820f793c709fb2d4ab22688c2eec942d3be54a6b (patch) | |
tree | a445e14c933a74bcfdfd008c3f1a00c02c890f47 /bitbake | |
parent | 3858855d0d9cdabc605eab76111494219624be84 (diff) | |
download | poky-820f793c709fb2d4ab22688c2eec942d3be54a6b.tar.gz |
glibc: fix create thread failed in unprivileged process
Since upstream commit [d8ea0d0168 Add an internal wrapper for clone, clone2
and clone3] applied, start a unprivileged container (docker run without
--privileged), it creates a thread failed in container.
In commit d8ea0d0168, it calls __clone3 if HAVE_CLONE3_WAPPER is defined. If
__clone3 returns -1 with ENOSYS, fall back to clone or clone2.
As known from [1], cloneXXX fails with EPERM if CLONE_NEWCGROUP,
CLONE_NEWIPC, CLONE_NEWNET, CLONE_NEWNS, CLONE_NEWPID, or CLONE_NEWUTS
was specified by an unprivileged process (process without CAP_SYS_ADMIN)
[1] https://man7.org/linux/man-pages/man2/clone3.2.html
So if __clone3 returns -1 with EPERM, fall back to clone or clone2 could
fix the issue.
(From OE-Core rev: 58802b2c4f63a4572cc7cca26d1d8a6b30e2fc79)
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
0 files changed, 0 insertions, 0 deletions