You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Chen Zhiwei (JIRA)" <ji...@apache.org> on 2016/04/05 11:14:25 UTC
[jira] [Updated] (MESOS-5121) pivot_root is not available
[ https://issues.apache.org/jira/browse/MESOS-5121?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chen Zhiwei updated MESOS-5121:
-------------------------------
Description:
When compile on ppc64le, it will through error message: src/linux/fs.cpp:443:2: error: #error "pivot_root is not available"
The current code logic in src/linux/fs.cpp is:
{code}
#ifdef __NR_pivot_root
int ret = ::syscall(__NR_pivot_root, newRoot.c_str(), putOld.c_str());
#elif __x86_64__
// A workaround for systems that have an old glib but have a new
// kernel. The magic number '155' is the syscall number for
// 'pivot_root' on the x86_64 architecture, see
// arch/x86/syscalls/syscall_64.tbl
int ret = ::syscall(155, newRoot.c_str(), putOld.c_str());
#else
#error "pivot_root is not available"
#endif
{code}
There is no old glib version and the new kernel version, it will never run code in *#ifdef __NR_pivot_root* condition, and when I build on Ubuntu 16.04(It has the latest linux kernel and glibc), it still can't step into the *#ifdef __NR_pivot_root* condition.
was:When compile on ppc64le, it will through error message: src/linux/fs.cpp:443:2: error: #error "pivot_root is not available"
> pivot_root is not available
> ---------------------------
>
> Key: MESOS-5121
> URL: https://issues.apache.org/jira/browse/MESOS-5121
> Project: Mesos
> Issue Type: Bug
> Reporter: Chen Zhiwei
> Assignee: Chen Zhiwei
>
> When compile on ppc64le, it will through error message: src/linux/fs.cpp:443:2: error: #error "pivot_root is not available"
> The current code logic in src/linux/fs.cpp is:
> {code}
> #ifdef __NR_pivot_root
> int ret = ::syscall(__NR_pivot_root, newRoot.c_str(), putOld.c_str());
> #elif __x86_64__
> // A workaround for systems that have an old glib but have a new
> // kernel. The magic number '155' is the syscall number for
> // 'pivot_root' on the x86_64 architecture, see
> // arch/x86/syscalls/syscall_64.tbl
> int ret = ::syscall(155, newRoot.c_str(), putOld.c_str());
> #else
> #error "pivot_root is not available"
> #endif
> {code}
> There is no old glib version and the new kernel version, it will never run code in *#ifdef __NR_pivot_root* condition, and when I build on Ubuntu 16.04(It has the latest linux kernel and glibc), it still can't step into the *#ifdef __NR_pivot_root* condition.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)