Message ID | 20201028032727.31326-1-mforney@mforney.org |
---|---|
State | Accepted |
Commit | b1d2e476e94cb215d9e19fef1049d413b414ffc2 |
Headers | show |
Series | linux-user: Remove obsolete F_SHLCK and F_WRLCK translation | expand |
Le 14/01/2021 à 23:36, Michael Forney a écrit : > These lock types are unsupported by Linux since v2.2[0][1] and > always return EINVAL (except on SPARC up until v2.6, which just > warned). > > musl libc does not define these constants, so just remove them from > the translation cases. > > [0] https://github.com/mpe/linux-fullhistory/blob/v2.2.0/fs/locks.c#L322-L324 > [1] https://github.com/mpe/linux-fullhistory/blob/v2.2.0/fs/locks.c#L429-L445 > > Signed-off-by: Michael Forney <mforney@mforney.org> > --- > Changes since v1: fixed typo in commit message, resend to qemu-trivial. > > linux-user/alpha/target_fcntl.h | 2 -- > linux-user/generic/fcntl.h | 5 ----- > linux-user/syscall.c | 2 -- > 3 files changed, 9 deletions(-) > > diff --git a/linux-user/alpha/target_fcntl.h b/linux-user/alpha/target_fcntl.h > index 2617e73472..e16ed1d415 100644 > --- a/linux-user/alpha/target_fcntl.h > +++ b/linux-user/alpha/target_fcntl.h > @@ -33,8 +33,6 @@ > #define TARGET_F_RDLCK 1 > #define TARGET_F_WRLCK 2 > #define TARGET_F_UNLCK 8 > -#define TARGET_F_EXLCK 16 > -#define TARGET_F_SHLCK 32 > > #include "../generic/fcntl.h" > #endif > diff --git a/linux-user/generic/fcntl.h b/linux-user/generic/fcntl.h > index c85c5b9fed..4568d1f42b 100644 > --- a/linux-user/generic/fcntl.h > +++ b/linux-user/generic/fcntl.h > @@ -119,11 +119,6 @@ struct target_f_owner_ex { > #define TARGET_F_UNLCK 2 > #endif > > -#ifndef TARGET_F_EXLCK > -#define TARGET_F_EXLCK 4 > -#define TARGET_F_SHLCK 8 > -#endif > - > #ifndef TARGET_HAVE_ARCH_STRUCT_FLOCK > #ifndef TARGET_ARCH_FLOCK_PAD > #define TARGET_ARCH_FLOCK_PAD > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index d182890ff0..f238edf715 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -6664,8 +6664,6 @@ static int target_to_host_fcntl_cmd(int cmd) > TRANSTBL_CONVERT(F_RDLCK); \ > TRANSTBL_CONVERT(F_WRLCK); \ > TRANSTBL_CONVERT(F_UNLCK); \ > - TRANSTBL_CONVERT(F_EXLCK); \ > - TRANSTBL_CONVERT(F_SHLCK); \ > } > > static int target_to_host_flock(int type) > Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Le 14/01/2021 à 23:36, Michael Forney a écrit : > These lock types are unsupported by Linux since v2.2[0][1] and > always return EINVAL (except on SPARC up until v2.6, which just > warned). > > musl libc does not define these constants, so just remove them from > the translation cases. > > [0] https://github.com/mpe/linux-fullhistory/blob/v2.2.0/fs/locks.c#L322-L324 > [1] https://github.com/mpe/linux-fullhistory/blob/v2.2.0/fs/locks.c#L429-L445 > > Signed-off-by: Michael Forney <mforney@mforney.org> > --- > Changes since v1: fixed typo in commit message, resend to qemu-trivial. > > linux-user/alpha/target_fcntl.h | 2 -- > linux-user/generic/fcntl.h | 5 ----- > linux-user/syscall.c | 2 -- > 3 files changed, 9 deletions(-) > > diff --git a/linux-user/alpha/target_fcntl.h b/linux-user/alpha/target_fcntl.h > index 2617e73472..e16ed1d415 100644 > --- a/linux-user/alpha/target_fcntl.h > +++ b/linux-user/alpha/target_fcntl.h > @@ -33,8 +33,6 @@ > #define TARGET_F_RDLCK 1 > #define TARGET_F_WRLCK 2 > #define TARGET_F_UNLCK 8 > -#define TARGET_F_EXLCK 16 > -#define TARGET_F_SHLCK 32 > > #include "../generic/fcntl.h" > #endif > diff --git a/linux-user/generic/fcntl.h b/linux-user/generic/fcntl.h > index c85c5b9fed..4568d1f42b 100644 > --- a/linux-user/generic/fcntl.h > +++ b/linux-user/generic/fcntl.h > @@ -119,11 +119,6 @@ struct target_f_owner_ex { > #define TARGET_F_UNLCK 2 > #endif > > -#ifndef TARGET_F_EXLCK > -#define TARGET_F_EXLCK 4 > -#define TARGET_F_SHLCK 8 > -#endif > - > #ifndef TARGET_HAVE_ARCH_STRUCT_FLOCK > #ifndef TARGET_ARCH_FLOCK_PAD > #define TARGET_ARCH_FLOCK_PAD > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index d182890ff0..f238edf715 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -6664,8 +6664,6 @@ static int target_to_host_fcntl_cmd(int cmd) > TRANSTBL_CONVERT(F_RDLCK); \ > TRANSTBL_CONVERT(F_WRLCK); \ > TRANSTBL_CONVERT(F_UNLCK); \ > - TRANSTBL_CONVERT(F_EXLCK); \ > - TRANSTBL_CONVERT(F_SHLCK); \ > } > > static int target_to_host_flock(int type) > Applied to my linux-user-for-6.0 branch. Thanks, Laurent
diff --git a/linux-user/alpha/target_fcntl.h b/linux-user/alpha/target_fcntl.h index 2617e73472..e16ed1d415 100644 --- a/linux-user/alpha/target_fcntl.h +++ b/linux-user/alpha/target_fcntl.h @@ -33,8 +33,6 @@ #define TARGET_F_RDLCK 1 #define TARGET_F_WRLCK 2 #define TARGET_F_UNLCK 8 -#define TARGET_F_EXLCK 16 -#define TARGET_F_SHLCK 32 #include "../generic/fcntl.h" #endif diff --git a/linux-user/generic/fcntl.h b/linux-user/generic/fcntl.h index c85c5b9fed..4568d1f42b 100644 --- a/linux-user/generic/fcntl.h +++ b/linux-user/generic/fcntl.h @@ -119,11 +119,6 @@ struct target_f_owner_ex { #define TARGET_F_UNLCK 2 #endif -#ifndef TARGET_F_EXLCK -#define TARGET_F_EXLCK 4 -#define TARGET_F_SHLCK 8 -#endif - #ifndef TARGET_HAVE_ARCH_STRUCT_FLOCK #ifndef TARGET_ARCH_FLOCK_PAD #define TARGET_ARCH_FLOCK_PAD diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 897d20c076..56a8380dda 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -6621,8 +6621,6 @@ static int target_to_host_fcntl_cmd(int cmd) TRANSTBL_CONVERT(F_RDLCK); \ TRANSTBL_CONVERT(F_WRLCK); \ TRANSTBL_CONVERT(F_UNLCK); \ - TRANSTBL_CONVERT(F_EXLCK); \ - TRANSTBL_CONVERT(F_SHLCK); \ } static int target_to_host_flock(int type)
These lock types are unsupported by Linux since v2.2[0][1] and always return EINVAL (except on SPARC up until v2.6, which just warned). musl libc does not define these constants, so just remove them from the translation cases. [0] https://github.com/mpe/linux-fullhistory/blob/v2.2.0/fs/locks.c#L322-L324 [1] https://github.com/mpe/linux-fullhistory/blob/v2.2.0/fs/locks.c#L429-L445 Signed-off-by: Michael Forney <mforney@mforney.org> --- linux-user/alpha/target_fcntl.h | 2 -- linux-user/generic/fcntl.h | 5 ----- linux-user/syscall.c | 2 -- 3 files changed, 9 deletions(-)