OSDN Git Service

linux-user: Fix inotify on aarch64
authorPaul Brook <paul@nowt.org>
Wed, 26 Jan 2022 20:26:36 +0000 (20:26 +0000)
committerLaurent Vivier <laurent@vivier.eu>
Thu, 27 Jan 2022 15:58:33 +0000 (16:58 +0100)
commit33f53ac52ab664f3d6ec34047c0ae21e32fa26b4
tree0c3783bfcb78f27e0e2ee4308b56de812f6753b5
parentca9946d734147155d6c27b348920125f623a588f
linux-user: Fix inotify on aarch64

The inotify implementation originally called the raw host syscalls.
Commit 3b3f24add0 changed this to use the glibc wrappers. However ifdefs
in syscall.c still test for presence of the raw syscalls.

This causes a problem on e.g. aarch64 hosts which never had the
inotify_init syscall - it had been obsoleted by inotify_init1 before
aarch64 was invented! However it does have a perfectly good glibc
implementation of inotify_wait.

Fix this by removing all the raw __NR_inotify_* tests, and instead check
CONFIG_INOTIFY, which already tests for the glibc functionality we use.

Also remove the now-pointless sys_inotify* wrappers.

Tested using x86-64 inotifywatch on aarch64 host, and vice-versa

Signed-off-by: Paul Brook <paul@nowt.org>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20220126202636.655289-1-paul@nowt.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
linux-user/fd-trans.c
linux-user/syscall.c