Skip to content

Commit b5e491b

Browse files
committed
arm64: Add support for AARCH64 architecture
Pre-AT system calls are not supported for AARCH64, so add the suitable system calls that are supported for enabling the nvidia-docker feature. Signed-off-by: Shanker Donthineni <[email protected]>
1 parent 1dd7de3 commit b5e491b

File tree

3 files changed

+19
-0
lines changed

3 files changed

+19
-0
lines changed

mk/common.mk

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ ifeq ($(PLATFORM),x86_64)
4343
getarch = $(shell [ -f /etc/debian_version ] && echo "amd64" || echo "x86_64")
4444
else ifeq ($(PLATFORM),ppc64le)
4545
getarch = $(shell [ -f /etc/debian_version ] && echo "ppc64el" || echo "ppc64le")
46+
else ifeq ($(PLATFORM),aarch64)
47+
getarch = $(shell [ -f /etc/debian_version ] && echo "arm64")
4648
else
4749
$(error Unsupported architecture)
4850
endif

src/common.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,14 @@
4646
# if !defined(__NR_execveat)
4747
# define __NR_execveat 362
4848
# endif /* !defined(__NR_execveat) */
49+
#elif defined(__aarch64__)
50+
# define LIB_ARCH LD_AARCH64_LIB64
51+
# define LIB32_ARCH LD_ARM_LIBHF
52+
# define USR_LIB_MULTIARCH_DIR "/usr/lib/aarch64-linux-gnu/"
53+
# define USR_LIB32_MULTIARCH_DIR "/var/empty"
54+
# if !defined(__NR_execveat)
55+
# define __NR_execveata 387
56+
# endif /* !defined(__NR_execveat) */
4957
#else
5058
# error "unsupported architecture"
5159
#endif /* defined(__x86_64__) */

src/nvc_ldcache.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,15 @@ limit_syscalls(struct error *err)
284284
SCMP_SYS(unlink),
285285
SCMP_SYS(write),
286286
SCMP_SYS(writev),
287+
#if defined(__aarch64__)
288+
SCMP_SYS(mkdirat),
289+
SCMP_SYS(unlinkat),
290+
SCMP_SYS(readlinkat),
291+
SCMP_SYS(faccessat),
292+
SCMP_SYS(symlinkat),
293+
SCMP_SYS(fchmodat),
294+
SCMP_SYS(renameat),
295+
#endif
287296
};
288297
int rv = -1;
289298

0 commit comments

Comments
 (0)