From: Dillon Amburgey <dill...@dillona.com> glibc on alpha still uses these
Signed-off-by: Dillon Amburgey <dill...@dillona.com> --- linux-user/syscall.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index e99adab..cb19ba1 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -4558,6 +4558,10 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg) fl.l_start = tswapal(target_fl->l_start); fl.l_len = tswapal(target_fl->l_len); fl.l_pid = tswap32(target_fl->l_pid); + if (fl.l_type == F_SHLCK) + fl.l_type = F_RDLCK; + if (fl.l_type == F_EXLCK) + fl.l_type = F_WRLCK; unlock_user_struct(target_fl, arg, 0); ret = get_errno(fcntl(fd, host_cmd, &fl)); break; -- 1.7.5.4