Commit 2d92c682 authored by Andreas Schwab's avatar Andreas Schwab Committed by Laurent Vivier
Browse files

linux-user: implement OFD locks



Signed-off-by: default avatarAndreas Schwab <schwab@suse.de>
Reviewed-by: default avatarLaurent Vivier <laurent@vivier.eu>
Message-Id: <mvm7dx0cun3.fsf@suse.de>
Signed-off-by: default avatarLaurent Vivier <laurent@vivier.eu>
parent 257a7e21
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -99,6 +99,10 @@
#define TARGET_F_SETLKW64      14
#endif

#define TARGET_F_OFD_GETLK     36
#define TARGET_F_OFD_SETLK     37
#define TARGET_F_OFD_SETLKW    38

#ifndef TARGET_F_SETOWN_EX
#define TARGET_F_SETOWN_EX     15
#define TARGET_F_GETOWN_EX     16
+6 −0
Original line number Diff line number Diff line
@@ -6098,6 +6098,9 @@ static int target_to_host_fcntl_cmd(int cmd)
    case TARGET_F_SETFD:
    case TARGET_F_GETFL:
    case TARGET_F_SETFL:
    case TARGET_F_OFD_GETLK:
    case TARGET_F_OFD_SETLK:
    case TARGET_F_OFD_SETLKW:
        ret = cmd;
        break;
    case TARGET_F_GETLK:
@@ -6383,6 +6386,7 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg)
        break;

    case TARGET_F_GETLK64:
    case TARGET_F_OFD_GETLK:
        ret = copy_from_user_flock64(&fl64, arg);
        if (ret) {
            return ret;
@@ -6394,6 +6398,8 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg)
        break;
    case TARGET_F_SETLK64:
    case TARGET_F_SETLKW64:
    case TARGET_F_OFD_SETLK:
    case TARGET_F_OFD_SETLKW:
        ret = copy_from_user_flock64(&fl64, arg);
        if (ret) {
            return ret;