From b95199a3824170778acafbc4de86a9dccde807d2 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Wed, 28 Aug 2024 15:41:55 +0000 Subject: [PATCH] make.sh: Don't try to create a time NS on older kernels This is not supported on kernels < 5.6. Signed-off-by: Michael Tremer --- make.sh | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/make.sh b/make.sh index f41477a5f7..3442709b03 100755 --- a/make.sh +++ b/make.sh @@ -54,9 +54,19 @@ ARCHES=( ) HOST_ARCH="${HOSTTYPE}" +HOST_KERNEL="$(uname -r)" LC_ALL=POSIX PS1='\u:\w$ ' +HAS_TIME_NAMESPACE="true" + +# Disable time namespaces for older kernels +case "${HOST_KERNEL}" in + 4.*|5.[12345].*) + HAS_TIME_NAMESPACE="false" + ;; +esac + # Are we reading from/writing to a terminal? is_terminal() { [ -t 0 ] && [ -t 1 ] && [ -t 2 ] @@ -674,9 +684,6 @@ execute() { "--pid" "--fork" - # Create a new time namespace - "--time" - # Create a new UTS namespace "--uts" @@ -687,6 +694,11 @@ execute() { # If unshare is asked to terminate, terminate all child processes "--kill-child" ) + + # Optionally set up a new time namespace + if [ "${HAS_TIME_NAMESPACE}" = "true" ]; then + unshare+=( "--time" ) + fi fi while [ $# -gt 0 ]; do -- 2.39.5