* [PULL 0/5] Linux user for 6.0 patches @ 2021-01-20 19:53 Laurent Vivier 2021-01-20 19:53 ` [PULL 1/5] linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls Laurent Vivier ` (5 more replies) 0 siblings, 6 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 19:53 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier The following changes since commit 48202c712412c803ddb56365c7bca322aa4e7506: Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-2021011= 9-1' into staging (2021-01-19 15:47:23 +0000) are available in the Git repository at: git://github.com/vivier/qemu.git tags/linux-user-for-6.0-pull-request for you to fetch changes up to 8a7e49050b8d5477a567b0ec5d764a564481abdb: linux-user: Remove obsolete F_SHLCK and F_EXLCK translation (2021-01-20 18:= 26:46 +0100) ---------------------------------------------------------------- linux-user pull request 20210119-v2 Remove obsolete F_SHLCK and F_EXLCK translation Update sockopt Add F_ADD_SEALS and F_GET_SEALS ---------------------------------------------------------------- Michael Forney (1): linux-user: Remove obsolete F_SHLCK and F_EXLCK translation Shu-Chun Weng (4): linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls linux-user: add missing UDP get/setsockopt option linux-user: add missing IPv6 get/setsockopt option linux-user: Add IPv6 options to do_print_sockopt() linux-user/alpha/target_fcntl.h | 2 - linux-user/generic/fcntl.h | 5 -- linux-user/strace.c | 153 ++++++++++++++++++++++++++++++-- linux-user/syscall.c | 23 ++++- linux-user/syscall_defs.h | 14 +-- 5 files changed, 173 insertions(+), 24 deletions(-) --=20 2.29.2 ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PULL 1/5] linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls 2021-01-20 19:53 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier @ 2021-01-20 19:53 ` Laurent Vivier 2021-01-20 19:53 ` [PULL 2/5] linux-user: add missing UDP get/setsockopt option Laurent Vivier ` (4 subsequent siblings) 5 siblings, 0 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 19:53 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier, Shu-Chun Weng From: Shu-Chun Weng <scw@google.com> Also reorder blocks so that they are all in the same order everywhere. Signed-off-by: Shu-Chun Weng <scw@google.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20201218193213.3566856-2-scw@google.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- linux-user/strace.c | 39 ++++++++++++++++++++++++++++++++------- linux-user/syscall.c | 10 ++++++++++ linux-user/syscall_defs.h | 14 ++++++++------ 3 files changed, 50 insertions(+), 13 deletions(-) diff --git a/linux-user/strace.c b/linux-user/strace.c index e00275fcb51b..227812c07e63 100644 --- a/linux-user/strace.c +++ b/linux-user/strace.c @@ -2066,11 +2066,34 @@ print_fcntl(void *cpu_env, const struct syscallname *name, break; case TARGET_F_SETLEASE: qemu_log("F_SETLEASE,"); - print_raw_param(TARGET_ABI_FMT_ld, arg2, 0); + print_raw_param(TARGET_ABI_FMT_ld, arg2, 1); break; case TARGET_F_GETLEASE: qemu_log("F_GETLEASE"); break; +#ifdef F_DUPFD_CLOEXEC + case TARGET_F_DUPFD_CLOEXEC: + qemu_log("F_DUPFD_CLOEXEC,"); + print_raw_param(TARGET_ABI_FMT_ld, arg2, 1); + break; +#endif + case TARGET_F_NOTIFY: + qemu_log("F_NOTIFY,"); + print_raw_param(TARGET_ABI_FMT_ld, arg2, 1); + break; +#ifdef F_GETOWN_EX + case TARGET_F_GETOWN_EX: + qemu_log("F_GETOWN_EX,"); + print_pointer(arg2, 1); + break; +#endif +#ifdef F_SETOWN_EX + case TARGET_F_SETOWN_EX: + qemu_log("F_SETOWN_EX,"); + print_pointer(arg2, 1); + break; +#endif +#ifdef F_SETPIPE_SZ case TARGET_F_SETPIPE_SZ: qemu_log("F_SETPIPE_SZ,"); print_raw_param(TARGET_ABI_FMT_ld, arg2, 1); @@ -2078,14 +2101,16 @@ print_fcntl(void *cpu_env, const struct syscallname *name, case TARGET_F_GETPIPE_SZ: qemu_log("F_GETPIPE_SZ"); break; - case TARGET_F_DUPFD_CLOEXEC: - qemu_log("F_DUPFD_CLOEXEC,"); - print_raw_param(TARGET_ABI_FMT_ld, arg2, 1); +#endif +#ifdef F_ADD_SEALS + case TARGET_F_ADD_SEALS: + qemu_log("F_ADD_SEALS,"); + print_raw_param("0x"TARGET_ABI_FMT_lx, arg2, 1); break; - case TARGET_F_NOTIFY: - qemu_log("F_NOTIFY,"); - print_raw_param(TARGET_ABI_FMT_ld, arg2, 0); + case TARGET_F_GET_SEALS: + qemu_log("F_GET_SEALS"); break; +#endif default: print_raw_param(TARGET_ABI_FMT_ld, arg1, 0); print_pointer(arg2, 1); diff --git a/linux-user/syscall.c b/linux-user/syscall.c index d182890ff04a..98aaca01872f 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -6639,6 +6639,14 @@ static int target_to_host_fcntl_cmd(int cmd) case TARGET_F_GETPIPE_SZ: ret = F_GETPIPE_SZ; break; +#endif +#ifdef F_ADD_SEALS + case TARGET_F_ADD_SEALS: + ret = F_ADD_SEALS; + break; + case TARGET_F_GET_SEALS: + ret = F_GET_SEALS; + break; #endif default: ret = -TARGET_EINVAL; @@ -6931,6 +6939,8 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg) case TARGET_F_GETLEASE: case TARGET_F_SETPIPE_SZ: case TARGET_F_GETPIPE_SZ: + case TARGET_F_ADD_SEALS: + case TARGET_F_GET_SEALS: ret = get_errno(safe_fcntl(fd, host_cmd, arg)); break; diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h index a00bfc2647c7..f98c1c1c8de4 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -2408,12 +2408,14 @@ struct target_statfs64 { #endif #define TARGET_F_LINUX_SPECIFIC_BASE 1024 -#define TARGET_F_SETLEASE (TARGET_F_LINUX_SPECIFIC_BASE + 0) -#define TARGET_F_GETLEASE (TARGET_F_LINUX_SPECIFIC_BASE + 1) -#define TARGET_F_DUPFD_CLOEXEC (TARGET_F_LINUX_SPECIFIC_BASE + 6) -#define TARGET_F_SETPIPE_SZ (TARGET_F_LINUX_SPECIFIC_BASE + 7) -#define TARGET_F_GETPIPE_SZ (TARGET_F_LINUX_SPECIFIC_BASE + 8) -#define TARGET_F_NOTIFY (TARGET_F_LINUX_SPECIFIC_BASE+2) +#define TARGET_F_SETLEASE (TARGET_F_LINUX_SPECIFIC_BASE + 0) +#define TARGET_F_GETLEASE (TARGET_F_LINUX_SPECIFIC_BASE + 1) +#define TARGET_F_DUPFD_CLOEXEC (TARGET_F_LINUX_SPECIFIC_BASE + 6) +#define TARGET_F_NOTIFY (TARGET_F_LINUX_SPECIFIC_BASE + 2) +#define TARGET_F_SETPIPE_SZ (TARGET_F_LINUX_SPECIFIC_BASE + 7) +#define TARGET_F_GETPIPE_SZ (TARGET_F_LINUX_SPECIFIC_BASE + 8) +#define TARGET_F_ADD_SEALS (TARGET_F_LINUX_SPECIFIC_BASE + 9) +#define TARGET_F_GET_SEALS (TARGET_F_LINUX_SPECIFIC_BASE + 10) #include "target_fcntl.h" -- 2.29.2 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 2/5] linux-user: add missing UDP get/setsockopt option 2021-01-20 19:53 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier 2021-01-20 19:53 ` [PULL 1/5] linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls Laurent Vivier @ 2021-01-20 19:53 ` Laurent Vivier 2021-01-20 19:53 ` [PULL 3/5] linux-user: add missing IPv6 " Laurent Vivier ` (3 subsequent siblings) 5 siblings, 0 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 19:53 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier, Shu-Chun Weng From: Shu-Chun Weng <scw@google.com> SOL_UDP manipulate options at UDP level. All six options currently defined in linux source include/uapi/linux/udp.h take integer values. Signed-off-by: Shu-Chun Weng <scw@google.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20201218193213.3566856-3-scw@google.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- linux-user/strace.c | 6 ++++++ linux-user/syscall.c | 7 +++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/linux-user/strace.c b/linux-user/strace.c index 227812c07e63..64172de99d98 100644 --- a/linux-user/strace.c +++ b/linux-user/strace.c @@ -7,6 +7,7 @@ #include <sys/mount.h> #include <arpa/inet.h> #include <netinet/tcp.h> +#include <netinet/udp.h> #include <linux/if_packet.h> #include <linux/netlink.h> #include <sched.h> @@ -2644,6 +2645,11 @@ static void do_print_sockopt(const char *name, abi_long arg1) print_raw_param(TARGET_ABI_FMT_ld, optname, 0); print_pointer(optval, 0); break; + case SOL_UDP: + qemu_log("SOL_UDP,"); + print_raw_param(TARGET_ABI_FMT_ld, optname, 0); + print_pointer(optval, 0); + break; case SOL_IP: qemu_log("SOL_IP,"); print_raw_param(TARGET_ABI_FMT_ld, optname, 0); diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 98aaca01872f..969db2008104 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -53,6 +53,7 @@ //#include <sys/user.h> #include <netinet/ip.h> #include <netinet/tcp.h> +#include <netinet/udp.h> #include <linux/wireless.h> #include <linux/icmp.h> #include <linux/icmpv6.h> @@ -2184,7 +2185,8 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, switch(level) { case SOL_TCP: - /* TCP options all take an 'int' value. */ + case SOL_UDP: + /* TCP and UDP options all take an 'int' value. */ if (optlen < sizeof(uint32_t)) return -TARGET_EINVAL; @@ -2832,7 +2834,8 @@ get_timeout: } break; case SOL_TCP: - /* TCP options all take an 'int' value. */ + case SOL_UDP: + /* TCP and UDP options all take an 'int' value. */ int_case: if (get_user_u32(len, optlen)) return -TARGET_EFAULT; -- 2.29.2 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-20 19:53 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier 2021-01-20 19:53 ` [PULL 1/5] linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls Laurent Vivier 2021-01-20 19:53 ` [PULL 2/5] linux-user: add missing UDP get/setsockopt option Laurent Vivier @ 2021-01-20 19:53 ` Laurent Vivier 2021-01-20 19:53 ` [PULL 4/5] linux-user: Add IPv6 options to do_print_sockopt() Laurent Vivier ` (2 subsequent siblings) 5 siblings, 0 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 19:53 UTC (permalink / raw) To: qemu-devel; +Cc: Philippe Mathieu-Daudé, Laurent Vivier, Shu-Chun Weng From: Shu-Chun Weng <scw@google.com> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. Signed-off-by: Shu-Chun Weng <scw@google.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20201218193213.3566856-4-scw@google.com> [PMD: Add missing <linux/in6.h> include for IPV6_ADDR_PREFERENCES] Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- linux-user/syscall.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 969db2008104..5d482dcbefd6 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -51,6 +51,7 @@ #include <sys/sysinfo.h> #include <sys/signalfd.h> //#include <sys/user.h> +#include <netinet/in.h> #include <netinet/ip.h> #include <netinet/tcp.h> #include <netinet/udp.h> @@ -58,6 +59,7 @@ #include <linux/icmp.h> #include <linux/icmpv6.h> #include <linux/if_tun.h> +#include <linux/in6.h> #include <linux/errqueue.h> #include <linux/random.h> #ifdef CONFIG_TIMERFD @@ -2272,6 +2274,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, case IPV6_RECVDSTOPTS: case IPV6_2292DSTOPTS: case IPV6_TCLASS: + case IPV6_ADDR_PREFERENCES: #ifdef IPV6_RECVPATHMTU case IPV6_RECVPATHMTU: #endif @@ -2926,6 +2929,7 @@ get_timeout: case IPV6_RECVDSTOPTS: case IPV6_2292DSTOPTS: case IPV6_TCLASS: + case IPV6_ADDR_PREFERENCES: #ifdef IPV6_RECVPATHMTU case IPV6_RECVPATHMTU: #endif -- 2.29.2 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 4/5] linux-user: Add IPv6 options to do_print_sockopt() 2021-01-20 19:53 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier ` (2 preceding siblings ...) 2021-01-20 19:53 ` [PULL 3/5] linux-user: add missing IPv6 " Laurent Vivier @ 2021-01-20 19:53 ` Laurent Vivier 2021-01-20 19:53 ` [PULL 5/5] linux-user: Remove obsolete F_SHLCK and F_EXLCK translation Laurent Vivier 2021-01-21 10:44 ` [PULL 0/5] Linux user for 6.0 patches Peter Maydell 5 siblings, 0 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 19:53 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier, Shu-Chun Weng From: Shu-Chun Weng <scw@google.com> Signed-off-by: Shu-Chun Weng <scw@google.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20201218193213.3566856-5-scw@google.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- linux-user/strace.c | 108 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) diff --git a/linux-user/strace.c b/linux-user/strace.c index 64172de99d98..bc3bb6b2f949 100644 --- a/linux-user/strace.c +++ b/linux-user/strace.c @@ -6,6 +6,7 @@ #include <sys/select.h> #include <sys/mount.h> #include <arpa/inet.h> +#include <netinet/in.h> #include <netinet/tcp.h> #include <netinet/udp.h> #include <linux/if_packet.h> @@ -2761,6 +2762,113 @@ print_optint: break; } break; + case SOL_IPV6: + qemu_log("SOL_IPV6,"); + switch (optname) { + case IPV6_MTU_DISCOVER: + qemu_log("IPV6_MTU_DISCOVER,"); + goto print_optint; + case IPV6_MTU: + qemu_log("IPV6_MTU,"); + goto print_optint; + case IPV6_V6ONLY: + qemu_log("IPV6_V6ONLY,"); + goto print_optint; + case IPV6_RECVPKTINFO: + qemu_log("IPV6_RECVPKTINFO,"); + goto print_optint; + case IPV6_UNICAST_HOPS: + qemu_log("IPV6_UNICAST_HOPS,"); + goto print_optint; + case IPV6_MULTICAST_HOPS: + qemu_log("IPV6_MULTICAST_HOPS,"); + goto print_optint; + case IPV6_MULTICAST_LOOP: + qemu_log("IPV6_MULTICAST_LOOP,"); + goto print_optint; + case IPV6_RECVERR: + qemu_log("IPV6_RECVERR,"); + goto print_optint; + case IPV6_RECVHOPLIMIT: + qemu_log("IPV6_RECVHOPLIMIT,"); + goto print_optint; + case IPV6_2292HOPLIMIT: + qemu_log("IPV6_2292HOPLIMIT,"); + goto print_optint; + case IPV6_CHECKSUM: + qemu_log("IPV6_CHECKSUM,"); + goto print_optint; + case IPV6_ADDRFORM: + qemu_log("IPV6_ADDRFORM,"); + goto print_optint; + case IPV6_2292PKTINFO: + qemu_log("IPV6_2292PKTINFO,"); + goto print_optint; + case IPV6_RECVTCLASS: + qemu_log("IPV6_RECVTCLASS,"); + goto print_optint; + case IPV6_RECVRTHDR: + qemu_log("IPV6_RECVRTHDR,"); + goto print_optint; + case IPV6_2292RTHDR: + qemu_log("IPV6_2292RTHDR,"); + goto print_optint; + case IPV6_RECVHOPOPTS: + qemu_log("IPV6_RECVHOPOPTS,"); + goto print_optint; + case IPV6_2292HOPOPTS: + qemu_log("IPV6_2292HOPOPTS,"); + goto print_optint; + case IPV6_RECVDSTOPTS: + qemu_log("IPV6_RECVDSTOPTS,"); + goto print_optint; + case IPV6_2292DSTOPTS: + qemu_log("IPV6_2292DSTOPTS,"); + goto print_optint; + case IPV6_TCLASS: + qemu_log("IPV6_TCLASS,"); + goto print_optint; + case IPV6_ADDR_PREFERENCES: + qemu_log("IPV6_ADDR_PREFERENCES,"); + goto print_optint; +#ifdef IPV6_RECVPATHMTU + case IPV6_RECVPATHMTU: + qemu_log("IPV6_RECVPATHMTU,"); + goto print_optint; +#endif +#ifdef IPV6_TRANSPARENT + case IPV6_TRANSPARENT: + qemu_log("IPV6_TRANSPARENT,"); + goto print_optint; +#endif +#ifdef IPV6_FREEBIND + case IPV6_FREEBIND: + qemu_log("IPV6_FREEBIND,"); + goto print_optint; +#endif +#ifdef IPV6_RECVORIGDSTADDR + case IPV6_RECVORIGDSTADDR: + qemu_log("IPV6_RECVORIGDSTADDR,"); + goto print_optint; +#endif + case IPV6_PKTINFO: + qemu_log("IPV6_PKTINFO,"); + print_pointer(optval, 0); + break; + case IPV6_ADD_MEMBERSHIP: + qemu_log("IPV6_ADD_MEMBERSHIP,"); + print_pointer(optval, 0); + break; + case IPV6_DROP_MEMBERSHIP: + qemu_log("IPV6_DROP_MEMBERSHIP,"); + print_pointer(optval, 0); + break; + default: + print_raw_param(TARGET_ABI_FMT_ld, optname, 0); + print_pointer(optval, 0); + break; + } + break; default: print_raw_param(TARGET_ABI_FMT_ld, level, 0); print_raw_param(TARGET_ABI_FMT_ld, optname, 0); -- 2.29.2 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 5/5] linux-user: Remove obsolete F_SHLCK and F_EXLCK translation 2021-01-20 19:53 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier ` (3 preceding siblings ...) 2021-01-20 19:53 ` [PULL 4/5] linux-user: Add IPv6 options to do_print_sockopt() Laurent Vivier @ 2021-01-20 19:53 ` Laurent Vivier 2021-01-21 10:44 ` [PULL 0/5] Linux user for 6.0 patches Peter Maydell 5 siblings, 0 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 19:53 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier, Michael Forney From: Michael Forney <mforney@mforney.org> 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> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20210114223602.9004-1-mforney@mforney.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- 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 2617e73472b7..e16ed1d4157f 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 c85c5b9fed65..4568d1f42bdd 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 5d482dcbefd6..34760779c8ec 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -6679,8 +6679,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) -- 2.29.2 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PULL 0/5] Linux user for 6.0 patches 2021-01-20 19:53 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier ` (4 preceding siblings ...) 2021-01-20 19:53 ` [PULL 5/5] linux-user: Remove obsolete F_SHLCK and F_EXLCK translation Laurent Vivier @ 2021-01-21 10:44 ` Peter Maydell 2021-01-21 11:07 ` Laurent Vivier 5 siblings, 1 reply; 18+ messages in thread From: Peter Maydell @ 2021-01-21 10:44 UTC (permalink / raw) To: Laurent Vivier; +Cc: QEMU Developers On Wed, 20 Jan 2021 at 19:56, Laurent Vivier <laurent@vivier.eu> wrote: > > The following changes since commit 48202c712412c803ddb56365c7bca322aa4e7506: > > Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-2021011= > 9-1' into staging (2021-01-19 15:47:23 +0000) > > are available in the Git repository at: > > git://github.com/vivier/qemu.git tags/linux-user-for-6.0-pull-request > > for you to fetch changes up to 8a7e49050b8d5477a567b0ec5d764a564481abdb: > > linux-user: Remove obsolete F_SHLCK and F_EXLCK translation (2021-01-20 18:= > 26:46 +0100) > > ---------------------------------------------------------------- > linux-user pull request 20210119-v2 > > Remove obsolete F_SHLCK and F_EXLCK translation > Update sockopt > Add F_ADD_SEALS and F_GET_SEALS > Now fails with: ../../linux-user/strace.c: In function ‘do_print_sockopt’: ../../linux-user/strace.c:2831:14: error: ‘IPV6_ADDR_PREFERENCES’ undeclared (first use in this function) case IPV6_ADDR_PREFERENCES: ^ thanks -- PMM ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PULL 0/5] Linux user for 6.0 patches 2021-01-21 10:44 ` [PULL 0/5] Linux user for 6.0 patches Peter Maydell @ 2021-01-21 11:07 ` Laurent Vivier 2021-01-21 11:38 ` Philippe Mathieu-Daudé 0 siblings, 1 reply; 18+ messages in thread From: Laurent Vivier @ 2021-01-21 11:07 UTC (permalink / raw) To: Peter Maydell; +Cc: QEMU Developers Le 21/01/2021 à 11:44, Peter Maydell a écrit : > On Wed, 20 Jan 2021 at 19:56, Laurent Vivier <laurent@vivier.eu> wrote: >> >> The following changes since commit 48202c712412c803ddb56365c7bca322aa4e7506: >> >> Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-2021011= >> 9-1' into staging (2021-01-19 15:47:23 +0000) >> >> are available in the Git repository at: >> >> git://github.com/vivier/qemu.git tags/linux-user-for-6.0-pull-request >> >> for you to fetch changes up to 8a7e49050b8d5477a567b0ec5d764a564481abdb: >> >> linux-user: Remove obsolete F_SHLCK and F_EXLCK translation (2021-01-20 18:= >> 26:46 +0100) >> >> ---------------------------------------------------------------- >> linux-user pull request 20210119-v2 >> >> Remove obsolete F_SHLCK and F_EXLCK translation >> Update sockopt >> Add F_ADD_SEALS and F_GET_SEALS >> > Now fails with: > > ../../linux-user/strace.c: In function ‘do_print_sockopt’: > ../../linux-user/strace.c:2831:14: error: ‘IPV6_ADDR_PREFERENCES’ > undeclared (first use in this function) > case IPV6_ADDR_PREFERENCES: Probably the same cause, in a different file. This should fix the problem. diff --git a/linux-user/strace.c b/linux-user/strace.c index bc3bb6b2f949..7b43668b9b0e 100644 --- a/linux-user/strace.c +++ b/linux-user/strace.c @@ -11,6 +11,7 @@ #include <netinet/udp.h> #include <linux/if_packet.h> #include <linux/netlink.h> +#include <linux/in6.h> #include <sched.h> #include "qemu.h" I will try to reproduce it before re-sending the PR. Thanks, Laurent ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PULL 0/5] Linux user for 6.0 patches 2021-01-21 11:07 ` Laurent Vivier @ 2021-01-21 11:38 ` Philippe Mathieu-Daudé 2021-01-21 11:43 ` Philippe Mathieu-Daudé 0 siblings, 1 reply; 18+ messages in thread From: Philippe Mathieu-Daudé @ 2021-01-21 11:38 UTC (permalink / raw) To: Laurent Vivier, Peter Maydell; +Cc: QEMU Developers On 1/21/21 12:07 PM, Laurent Vivier wrote: > Le 21/01/2021 à 11:44, Peter Maydell a écrit : >> On Wed, 20 Jan 2021 at 19:56, Laurent Vivier <laurent@vivier.eu> wrote: >>> >>> The following changes since commit 48202c712412c803ddb56365c7bca322aa4e7506: >>> >>> Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-2021011= >>> 9-1' into staging (2021-01-19 15:47:23 +0000) >>> >>> are available in the Git repository at: >>> >>> git://github.com/vivier/qemu.git tags/linux-user-for-6.0-pull-request >>> >>> for you to fetch changes up to 8a7e49050b8d5477a567b0ec5d764a564481abdb: >>> >>> linux-user: Remove obsolete F_SHLCK and F_EXLCK translation (2021-01-20 18:= >>> 26:46 +0100) >>> >>> ---------------------------------------------------------------- >>> linux-user pull request 20210119-v2 >>> >>> Remove obsolete F_SHLCK and F_EXLCK translation >>> Update sockopt >>> Add F_ADD_SEALS and F_GET_SEALS >>> >> Now fails with: >> >> ../../linux-user/strace.c: In function ‘do_print_sockopt’: >> ../../linux-user/strace.c:2831:14: error: ‘IPV6_ADDR_PREFERENCES’ >> undeclared (first use in this function) >> case IPV6_ADDR_PREFERENCES: I checked on CentOS7 and this part isn't compiled because TARGET_NR_socketcall is not defined, but I only build the x86_64-linux-user target there. > > Probably the same cause, in a different file. > > This should fix the problem. > > diff --git a/linux-user/strace.c b/linux-user/strace.c > index bc3bb6b2f949..7b43668b9b0e 100644 > --- a/linux-user/strace.c > +++ b/linux-user/strace.c > @@ -11,6 +11,7 @@ > #include <netinet/udp.h> > #include <linux/if_packet.h> > #include <linux/netlink.h> > +#include <linux/in6.h> > #include <sched.h> > #include "qemu.h" Sounds good. > > I will try to reproduce it before re-sending the PR. > > Thanks, > Laurent > ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PULL 0/5] Linux user for 6.0 patches 2021-01-21 11:38 ` Philippe Mathieu-Daudé @ 2021-01-21 11:43 ` Philippe Mathieu-Daudé 0 siblings, 0 replies; 18+ messages in thread From: Philippe Mathieu-Daudé @ 2021-01-21 11:43 UTC (permalink / raw) To: Laurent Vivier, Peter Maydell; +Cc: QEMU Developers On 1/21/21 12:38 PM, Philippe Mathieu-Daudé wrote: > On 1/21/21 12:07 PM, Laurent Vivier wrote: >> Le 21/01/2021 à 11:44, Peter Maydell a écrit : >>> On Wed, 20 Jan 2021 at 19:56, Laurent Vivier <laurent@vivier.eu> wrote: >>>> >>>> The following changes since commit 48202c712412c803ddb56365c7bca322aa4e7506: >>>> >>>> Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-2021011= >>>> 9-1' into staging (2021-01-19 15:47:23 +0000) >>>> >>>> are available in the Git repository at: >>>> >>>> git://github.com/vivier/qemu.git tags/linux-user-for-6.0-pull-request >>>> >>>> for you to fetch changes up to 8a7e49050b8d5477a567b0ec5d764a564481abdb: >>>> >>>> linux-user: Remove obsolete F_SHLCK and F_EXLCK translation (2021-01-20 18:= >>>> 26:46 +0100) >>>> >>>> ---------------------------------------------------------------- >>>> linux-user pull request 20210119-v2 >>>> >>>> Remove obsolete F_SHLCK and F_EXLCK translation >>>> Update sockopt >>>> Add F_ADD_SEALS and F_GET_SEALS >>>> >>> Now fails with: >>> >>> ../../linux-user/strace.c: In function ‘do_print_sockopt’: >>> ../../linux-user/strace.c:2831:14: error: ‘IPV6_ADDR_PREFERENCES’ >>> undeclared (first use in this function) >>> case IPV6_ADDR_PREFERENCES: I could reproduce building qemu-ppc64 (--target-list=ppc64-linux-user). > I checked on CentOS7 and this part isn't compiled because > TARGET_NR_socketcall is not defined, but I only build the > x86_64-linux-user target there. > >> >> Probably the same cause, in a different file. >> >> This should fix the problem. >> >> diff --git a/linux-user/strace.c b/linux-user/strace.c >> index bc3bb6b2f949..7b43668b9b0e 100644 >> --- a/linux-user/strace.c >> +++ b/linux-user/strace.c >> @@ -11,6 +11,7 @@ >> #include <netinet/udp.h> >> #include <linux/if_packet.h> >> #include <linux/netlink.h> >> +#include <linux/in6.h> This build with your fix: Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >> #include <sched.h> >> #include "qemu.h" > > Sounds good. > >> >> I will try to reproduce it before re-sending the PR. >> >> Thanks, >> Laurent >> > > ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PULL 0/5] Linux user for 6.0 patches @ 2021-01-21 12:38 Laurent Vivier 2021-01-21 12:38 ` [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option Laurent Vivier 0 siblings, 1 reply; 18+ messages in thread From: Laurent Vivier @ 2021-01-21 12:38 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier The following changes since commit 48202c712412c803ddb56365c7bca322aa4e7506: Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-2021011= 9-1' into staging (2021-01-19 15:47:23 +0000) are available in the Git repository at: git://github.com/vivier/qemu.git tags/linux-user-for-6.0-pull-request for you to fetch changes up to b1d2e476e94cb215d9e19fef1049d413b414ffc2: linux-user: Remove obsolete F_SHLCK and F_EXLCK translation (2021-01-21 13:= 27:34 +0100) ---------------------------------------------------------------- linux-user pull request 20210119-v3 Remove obsolete F_SHLCK and F_EXLCK translation Update sockopt Add F_ADD_SEALS and F_GET_SEALS ---------------------------------------------------------------- Michael Forney (1): linux-user: Remove obsolete F_SHLCK and F_EXLCK translation Shu-Chun Weng (4): linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls linux-user: add missing UDP get/setsockopt option linux-user: add missing IPv6 get/setsockopt option linux-user: Add IPv6 options to do_print_sockopt() linux-user/alpha/target_fcntl.h | 2 - linux-user/generic/fcntl.h | 5 -- linux-user/strace.c | 154 ++++++++++++++++++++++++++++++-- linux-user/syscall.c | 23 ++++- linux-user/syscall_defs.h | 14 +-- 5 files changed, 174 insertions(+), 24 deletions(-) --=20 2.29.2 ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-21 12:38 Laurent Vivier @ 2021-01-21 12:38 ` Laurent Vivier 0 siblings, 0 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-21 12:38 UTC (permalink / raw) To: qemu-devel; +Cc: Philippe Mathieu-Daudé, Laurent Vivier, Shu-Chun Weng From: Shu-Chun Weng <scw@google.com> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. Signed-off-by: Shu-Chun Weng <scw@google.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20201218193213.3566856-4-scw@google.com> [PMD: Add missing <linux/in6.h> include for IPV6_ADDR_PREFERENCES] Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- linux-user/syscall.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 969db2008104..5d482dcbefd6 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -51,6 +51,7 @@ #include <sys/sysinfo.h> #include <sys/signalfd.h> //#include <sys/user.h> +#include <netinet/in.h> #include <netinet/ip.h> #include <netinet/tcp.h> #include <netinet/udp.h> @@ -58,6 +59,7 @@ #include <linux/icmp.h> #include <linux/icmpv6.h> #include <linux/if_tun.h> +#include <linux/in6.h> #include <linux/errqueue.h> #include <linux/random.h> #ifdef CONFIG_TIMERFD @@ -2272,6 +2274,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, case IPV6_RECVDSTOPTS: case IPV6_2292DSTOPTS: case IPV6_TCLASS: + case IPV6_ADDR_PREFERENCES: #ifdef IPV6_RECVPATHMTU case IPV6_RECVPATHMTU: #endif @@ -2926,6 +2929,7 @@ get_timeout: case IPV6_RECVDSTOPTS: case IPV6_2292DSTOPTS: case IPV6_TCLASS: + case IPV6_ADDR_PREFERENCES: #ifdef IPV6_RECVPATHMTU case IPV6_RECVPATHMTU: #endif -- 2.29.2 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PULL 0/5] Linux user for 6.0 patches @ 2021-01-19 17:54 Laurent Vivier 2021-01-19 17:54 ` [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option Laurent Vivier 0 siblings, 1 reply; 18+ messages in thread From: Laurent Vivier @ 2021-01-19 17:54 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier The following changes since commit e43d564fa3a0d1e133935c8180ad4f4ccf699f33: Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.0-p= ull-request' into staging (2021-01-18 15:19:06 +0000) are available in the Git repository at: git://github.com/vivier/qemu.git tags/linux-user-for-6.0-pull-request for you to fetch changes up to 07e6a3d4e5160955203b82d7ed0d8f523b6b8963: linux-user: Remove obsolete F_SHLCK and F_EXLCK translation (2021-01-19 18:= 53:58 +0100) ---------------------------------------------------------------- linux-user pull request 20210119 Remove obsolete F_SHLCK and F_EXLCK translation Update sockopt Add F_ADD_SEALS and F_GET_SEALS ---------------------------------------------------------------- Michael Forney (1): linux-user: Remove obsolete F_SHLCK and F_EXLCK translation Shu-Chun Weng (4): linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls linux-user: add missing UDP get/setsockopt option linux-user: add missing IPv6 get/setsockopt option linux-user: Add IPv6 options to do_print_sockopt() linux-user/alpha/target_fcntl.h | 2 - linux-user/generic/fcntl.h | 5 -- linux-user/strace.c | 153 ++++++++++++++++++++++++++++++-- linux-user/syscall.c | 22 ++++- linux-user/syscall_defs.h | 14 +-- 5 files changed, 172 insertions(+), 24 deletions(-) --=20 2.29.2 ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-19 17:54 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier @ 2021-01-19 17:54 ` Laurent Vivier 2021-01-20 12:16 ` Philippe Mathieu-Daudé 0 siblings, 1 reply; 18+ messages in thread From: Laurent Vivier @ 2021-01-19 17:54 UTC (permalink / raw) To: qemu-devel; +Cc: Laurent Vivier, Shu-Chun Weng From: Shu-Chun Weng <scw@google.com> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. Signed-off-by: Shu-Chun Weng <scw@google.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20201218193213.3566856-4-scw@google.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- linux-user/syscall.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 969db2008104..70c61d15ebf8 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -51,6 +51,7 @@ #include <sys/sysinfo.h> #include <sys/signalfd.h> //#include <sys/user.h> +#include <netinet/in.h> #include <netinet/ip.h> #include <netinet/tcp.h> #include <netinet/udp.h> @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, case IPV6_RECVDSTOPTS: case IPV6_2292DSTOPTS: case IPV6_TCLASS: + case IPV6_ADDR_PREFERENCES: #ifdef IPV6_RECVPATHMTU case IPV6_RECVPATHMTU: #endif @@ -2926,6 +2928,7 @@ get_timeout: case IPV6_RECVDSTOPTS: case IPV6_2292DSTOPTS: case IPV6_TCLASS: + case IPV6_ADDR_PREFERENCES: #ifdef IPV6_RECVPATHMTU case IPV6_RECVPATHMTU: #endif -- 2.29.2 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-19 17:54 ` [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option Laurent Vivier @ 2021-01-20 12:16 ` Philippe Mathieu-Daudé 2021-01-20 16:00 ` Laurent Vivier 0 siblings, 1 reply; 18+ messages in thread From: Philippe Mathieu-Daudé @ 2021-01-20 12:16 UTC (permalink / raw) To: Laurent Vivier, qemu-devel; +Cc: Shu-Chun Weng On 1/19/21 6:54 PM, Laurent Vivier wrote: > From: Shu-Chun Weng <scw@google.com> > > IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. > > Signed-off-by: Shu-Chun Weng <scw@google.com> > Reviewed-by: Laurent Vivier <laurent@vivier.eu> > Message-Id: <20201218193213.3566856-4-scw@google.com> > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > --- > linux-user/syscall.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 969db2008104..70c61d15ebf8 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -51,6 +51,7 @@ > #include <sys/sysinfo.h> > #include <sys/signalfd.h> > //#include <sys/user.h> > +#include <netinet/in.h> > #include <netinet/ip.h> > #include <netinet/tcp.h> > #include <netinet/udp.h> > @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, > case IPV6_RECVDSTOPTS: > case IPV6_2292DSTOPTS: > case IPV6_TCLASS: > + case IPV6_ADDR_PREFERENCES: > #ifdef IPV6_RECVPATHMTU > case IPV6_RECVPATHMTU: > #endif > @@ -2926,6 +2928,7 @@ get_timeout: > case IPV6_RECVDSTOPTS: > case IPV6_2292DSTOPTS: > case IPV6_TCLASS: > + case IPV6_ADDR_PREFERENCES: > #ifdef IPV6_RECVPATHMTU > case IPV6_RECVPATHMTU: > #endif > Building on Centos7: ../linux-user/syscall.c: In function 'do_setsockopt': ../linux-user/syscall.c:2276:14: error: 'IPV6_ADDR_PREFERENCES' undeclared (first use in this function) case IPV6_ADDR_PREFERENCES: ^ ../linux-user/syscall.c:2276:14: note: each undeclared identifier is reported only once for each function it appears in ../linux-user/syscall.c: In function 'do_getsockopt': ../linux-user/syscall.c:2931:14: error: 'IPV6_ADDR_PREFERENCES' undeclared (first use in this function) case IPV6_ADDR_PREFERENCES: ^ ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-20 12:16 ` Philippe Mathieu-Daudé @ 2021-01-20 16:00 ` Laurent Vivier 2021-01-20 16:12 ` Philippe Mathieu-Daudé 0 siblings, 1 reply; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 16:00 UTC (permalink / raw) To: Philippe Mathieu-Daudé, qemu-devel; +Cc: Shu-Chun Weng Le 20/01/2021 à 13:16, Philippe Mathieu-Daudé a écrit : > On 1/19/21 6:54 PM, Laurent Vivier wrote: >> From: Shu-Chun Weng <scw@google.com> >> >> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. >> >> Signed-off-by: Shu-Chun Weng <scw@google.com> >> Reviewed-by: Laurent Vivier <laurent@vivier.eu> >> Message-Id: <20201218193213.3566856-4-scw@google.com> >> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >> --- >> linux-user/syscall.c | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >> index 969db2008104..70c61d15ebf8 100644 >> --- a/linux-user/syscall.c >> +++ b/linux-user/syscall.c >> @@ -51,6 +51,7 @@ >> #include <sys/sysinfo.h> >> #include <sys/signalfd.h> >> //#include <sys/user.h> >> +#include <netinet/in.h> >> #include <netinet/ip.h> >> #include <netinet/tcp.h> >> #include <netinet/udp.h> >> @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, >> case IPV6_RECVDSTOPTS: >> case IPV6_2292DSTOPTS: >> case IPV6_TCLASS: >> + case IPV6_ADDR_PREFERENCES: >> #ifdef IPV6_RECVPATHMTU >> case IPV6_RECVPATHMTU: >> #endif >> @@ -2926,6 +2928,7 @@ get_timeout: >> case IPV6_RECVDSTOPTS: >> case IPV6_2292DSTOPTS: >> case IPV6_TCLASS: >> + case IPV6_ADDR_PREFERENCES: >> #ifdef IPV6_RECVPATHMTU >> case IPV6_RECVPATHMTU: >> #endif >> > > Building on Centos7: > > ../linux-user/syscall.c: In function 'do_setsockopt': > ../linux-user/syscall.c:2276:14: error: 'IPV6_ADDR_PREFERENCES' > undeclared (first use in this function) > case IPV6_ADDR_PREFERENCES: > ^ > ../linux-user/syscall.c:2276:14: note: each undeclared identifier is > reported only once for each function it appears in > ../linux-user/syscall.c: In function 'do_getsockopt': > ../linux-user/syscall.c:2931:14: error: 'IPV6_ADDR_PREFERENCES' > undeclared (first use in this function) > case IPV6_ADDR_PREFERENCES: > ^ > Strange... this is defined since kernel v2.6.26 in /usr/include/linux/in6.h 7cbca67c0732 [IPV6]: Support Source Address Selection API (RFC5014). Could try adding the include? Thanks, Laurent ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-20 16:00 ` Laurent Vivier @ 2021-01-20 16:12 ` Philippe Mathieu-Daudé 2021-01-20 16:22 ` Laurent Vivier 0 siblings, 1 reply; 18+ messages in thread From: Philippe Mathieu-Daudé @ 2021-01-20 16:12 UTC (permalink / raw) To: Laurent Vivier, qemu-devel; +Cc: Shu-Chun Weng On 1/20/21 5:00 PM, Laurent Vivier wrote: > Le 20/01/2021 à 13:16, Philippe Mathieu-Daudé a écrit : >> On 1/19/21 6:54 PM, Laurent Vivier wrote: >>> From: Shu-Chun Weng <scw@google.com> >>> >>> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. >>> >>> Signed-off-by: Shu-Chun Weng <scw@google.com> >>> Reviewed-by: Laurent Vivier <laurent@vivier.eu> >>> Message-Id: <20201218193213.3566856-4-scw@google.com> >>> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >>> --- >>> linux-user/syscall.c | 3 +++ >>> 1 file changed, 3 insertions(+) >>> >>> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >>> index 969db2008104..70c61d15ebf8 100644 >>> --- a/linux-user/syscall.c >>> +++ b/linux-user/syscall.c >>> @@ -51,6 +51,7 @@ >>> #include <sys/sysinfo.h> >>> #include <sys/signalfd.h> >>> //#include <sys/user.h> >>> +#include <netinet/in.h> >>> #include <netinet/ip.h> >>> #include <netinet/tcp.h> >>> #include <netinet/udp.h> >>> @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, >>> case IPV6_RECVDSTOPTS: >>> case IPV6_2292DSTOPTS: >>> case IPV6_TCLASS: >>> + case IPV6_ADDR_PREFERENCES: >>> #ifdef IPV6_RECVPATHMTU >>> case IPV6_RECVPATHMTU: >>> #endif >>> @@ -2926,6 +2928,7 @@ get_timeout: >>> case IPV6_RECVDSTOPTS: >>> case IPV6_2292DSTOPTS: >>> case IPV6_TCLASS: >>> + case IPV6_ADDR_PREFERENCES: >>> #ifdef IPV6_RECVPATHMTU >>> case IPV6_RECVPATHMTU: >>> #endif >>> >> >> Building on Centos7: >> >> ../linux-user/syscall.c: In function 'do_setsockopt': >> ../linux-user/syscall.c:2276:14: error: 'IPV6_ADDR_PREFERENCES' >> undeclared (first use in this function) >> case IPV6_ADDR_PREFERENCES: >> ^ >> ../linux-user/syscall.c:2276:14: note: each undeclared identifier is >> reported only once for each function it appears in >> ../linux-user/syscall.c: In function 'do_getsockopt': >> ../linux-user/syscall.c:2931:14: error: 'IPV6_ADDR_PREFERENCES' >> undeclared (first use in this function) >> case IPV6_ADDR_PREFERENCES: >> ^ >> > > Strange... this is defined since kernel v2.6.26 in /usr/include/linux/in6.h > > 7cbca67c0732 [IPV6]: Support Source Address Selection API (RFC5014). > > Could try adding the include? Yes, this fixed it, thanks: -- >8 -- diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 1f91aa0ed5e..34760779c8e 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -59,6 +59,7 @@ #include <linux/icmp.h> #include <linux/icmpv6.h> #include <linux/if_tun.h> +#include <linux/in6.h> #include <linux/errqueue.h> #include <linux/random.h> #ifdef CONFIG_TIMERFD --- ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-20 16:12 ` Philippe Mathieu-Daudé @ 2021-01-20 16:22 ` Laurent Vivier 2021-01-20 16:56 ` Philippe Mathieu-Daudé 0 siblings, 1 reply; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 16:22 UTC (permalink / raw) To: Philippe Mathieu-Daudé, qemu-devel; +Cc: Shu-Chun Weng Le 20/01/2021 à 17:12, Philippe Mathieu-Daudé a écrit : > On 1/20/21 5:00 PM, Laurent Vivier wrote: >> Le 20/01/2021 à 13:16, Philippe Mathieu-Daudé a écrit : >>> On 1/19/21 6:54 PM, Laurent Vivier wrote: >>>> From: Shu-Chun Weng <scw@google.com> >>>> >>>> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. >>>> >>>> Signed-off-by: Shu-Chun Weng <scw@google.com> >>>> Reviewed-by: Laurent Vivier <laurent@vivier.eu> >>>> Message-Id: <20201218193213.3566856-4-scw@google.com> >>>> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >>>> --- >>>> linux-user/syscall.c | 3 +++ >>>> 1 file changed, 3 insertions(+) >>>> >>>> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >>>> index 969db2008104..70c61d15ebf8 100644 >>>> --- a/linux-user/syscall.c >>>> +++ b/linux-user/syscall.c >>>> @@ -51,6 +51,7 @@ >>>> #include <sys/sysinfo.h> >>>> #include <sys/signalfd.h> >>>> //#include <sys/user.h> >>>> +#include <netinet/in.h> >>>> #include <netinet/ip.h> >>>> #include <netinet/tcp.h> >>>> #include <netinet/udp.h> >>>> @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, >>>> case IPV6_RECVDSTOPTS: >>>> case IPV6_2292DSTOPTS: >>>> case IPV6_TCLASS: >>>> + case IPV6_ADDR_PREFERENCES: >>>> #ifdef IPV6_RECVPATHMTU >>>> case IPV6_RECVPATHMTU: >>>> #endif >>>> @@ -2926,6 +2928,7 @@ get_timeout: >>>> case IPV6_RECVDSTOPTS: >>>> case IPV6_2292DSTOPTS: >>>> case IPV6_TCLASS: >>>> + case IPV6_ADDR_PREFERENCES: >>>> #ifdef IPV6_RECVPATHMTU >>>> case IPV6_RECVPATHMTU: >>>> #endif >>>> >>> >>> Building on Centos7: >>> >>> ../linux-user/syscall.c: In function 'do_setsockopt': >>> ../linux-user/syscall.c:2276:14: error: 'IPV6_ADDR_PREFERENCES' >>> undeclared (first use in this function) >>> case IPV6_ADDR_PREFERENCES: >>> ^ >>> ../linux-user/syscall.c:2276:14: note: each undeclared identifier is >>> reported only once for each function it appears in >>> ../linux-user/syscall.c: In function 'do_getsockopt': >>> ../linux-user/syscall.c:2931:14: error: 'IPV6_ADDR_PREFERENCES' >>> undeclared (first use in this function) >>> case IPV6_ADDR_PREFERENCES: >>> ^ >>> >> >> Strange... this is defined since kernel v2.6.26 in /usr/include/linux/in6.h >> >> 7cbca67c0732 [IPV6]: Support Source Address Selection API (RFC5014). >> >> Could try adding the include? > > Yes, this fixed it, thanks: > > -- >8 -- > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 1f91aa0ed5e..34760779c8e 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -59,6 +59,7 @@ > #include <linux/icmp.h> > #include <linux/icmpv6.h> > #include <linux/if_tun.h> > +#include <linux/in6.h> > #include <linux/errqueue.h> > #include <linux/random.h> > #ifdef CONFIG_TIMERFD > --- > Could you send a patch to the ML? Thanks, Laurent ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-20 16:22 ` Laurent Vivier @ 2021-01-20 16:56 ` Philippe Mathieu-Daudé 2021-01-20 17:15 ` Laurent Vivier 0 siblings, 1 reply; 18+ messages in thread From: Philippe Mathieu-Daudé @ 2021-01-20 16:56 UTC (permalink / raw) To: Laurent Vivier, qemu-devel; +Cc: Shu-Chun Weng On 1/20/21 5:22 PM, Laurent Vivier wrote: > Le 20/01/2021 à 17:12, Philippe Mathieu-Daudé a écrit : >> On 1/20/21 5:00 PM, Laurent Vivier wrote: >>> Le 20/01/2021 à 13:16, Philippe Mathieu-Daudé a écrit : >>>> On 1/19/21 6:54 PM, Laurent Vivier wrote: >>>>> From: Shu-Chun Weng <scw@google.com> >>>>> >>>>> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. >>>>> >>>>> Signed-off-by: Shu-Chun Weng <scw@google.com> >>>>> Reviewed-by: Laurent Vivier <laurent@vivier.eu> >>>>> Message-Id: <20201218193213.3566856-4-scw@google.com> >>>>> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >>>>> --- >>>>> linux-user/syscall.c | 3 +++ >>>>> 1 file changed, 3 insertions(+) >>>>> >>>>> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >>>>> index 969db2008104..70c61d15ebf8 100644 >>>>> --- a/linux-user/syscall.c >>>>> +++ b/linux-user/syscall.c >>>>> @@ -51,6 +51,7 @@ >>>>> #include <sys/sysinfo.h> >>>>> #include <sys/signalfd.h> >>>>> //#include <sys/user.h> >>>>> +#include <netinet/in.h> >>>>> #include <netinet/ip.h> >>>>> #include <netinet/tcp.h> >>>>> #include <netinet/udp.h> >>>>> @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, >>>>> case IPV6_RECVDSTOPTS: >>>>> case IPV6_2292DSTOPTS: >>>>> case IPV6_TCLASS: >>>>> + case IPV6_ADDR_PREFERENCES: >>>>> #ifdef IPV6_RECVPATHMTU >>>>> case IPV6_RECVPATHMTU: >>>>> #endif >>>>> @@ -2926,6 +2928,7 @@ get_timeout: >>>>> case IPV6_RECVDSTOPTS: >>>>> case IPV6_2292DSTOPTS: >>>>> case IPV6_TCLASS: >>>>> + case IPV6_ADDR_PREFERENCES: >>>>> #ifdef IPV6_RECVPATHMTU >>>>> case IPV6_RECVPATHMTU: >>>>> #endif >>>>> >>>> >>>> Building on Centos7: >>>> >>>> ../linux-user/syscall.c: In function 'do_setsockopt': >>>> ../linux-user/syscall.c:2276:14: error: 'IPV6_ADDR_PREFERENCES' >>>> undeclared (first use in this function) >>>> case IPV6_ADDR_PREFERENCES: >>>> ^ >>>> ../linux-user/syscall.c:2276:14: note: each undeclared identifier is >>>> reported only once for each function it appears in >>>> ../linux-user/syscall.c: In function 'do_getsockopt': >>>> ../linux-user/syscall.c:2931:14: error: 'IPV6_ADDR_PREFERENCES' >>>> undeclared (first use in this function) >>>> case IPV6_ADDR_PREFERENCES: >>>> ^ >>>> >>> >>> Strange... this is defined since kernel v2.6.26 in /usr/include/linux/in6.h >>> >>> 7cbca67c0732 [IPV6]: Support Source Address Selection API (RFC5014). >>> >>> Could try adding the include? >> >> Yes, this fixed it, thanks: >> >> -- >8 -- >> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >> index 1f91aa0ed5e..34760779c8e 100644 >> --- a/linux-user/syscall.c >> +++ b/linux-user/syscall.c >> @@ -59,6 +59,7 @@ >> #include <linux/icmp.h> >> #include <linux/icmpv6.h> >> #include <linux/if_tun.h> >> +#include <linux/in6.h> >> #include <linux/errqueue.h> >> #include <linux/random.h> >> #ifdef CONFIG_TIMERFD >> --- >> > > Could you send a patch to the ML? Me? OK... > > Thanks, > Laurent > ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option 2021-01-20 16:56 ` Philippe Mathieu-Daudé @ 2021-01-20 17:15 ` Laurent Vivier 0 siblings, 0 replies; 18+ messages in thread From: Laurent Vivier @ 2021-01-20 17:15 UTC (permalink / raw) To: Philippe Mathieu-Daudé, qemu-devel; +Cc: Shu-Chun Weng Le 20/01/2021 à 17:56, Philippe Mathieu-Daudé a écrit : > On 1/20/21 5:22 PM, Laurent Vivier wrote: >> Le 20/01/2021 à 17:12, Philippe Mathieu-Daudé a écrit : >>> On 1/20/21 5:00 PM, Laurent Vivier wrote: >>>> Le 20/01/2021 à 13:16, Philippe Mathieu-Daudé a écrit : >>>>> On 1/19/21 6:54 PM, Laurent Vivier wrote: >>>>>> From: Shu-Chun Weng <scw@google.com> >>>>>> >>>>>> IPV6_ADDR_PREFERENCES (RFC5014: Source address selection) was not supported. >>>>>> >>>>>> Signed-off-by: Shu-Chun Weng <scw@google.com> >>>>>> Reviewed-by: Laurent Vivier <laurent@vivier.eu> >>>>>> Message-Id: <20201218193213.3566856-4-scw@google.com> >>>>>> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >>>>>> --- >>>>>> linux-user/syscall.c | 3 +++ >>>>>> 1 file changed, 3 insertions(+) >>>>>> >>>>>> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >>>>>> index 969db2008104..70c61d15ebf8 100644 >>>>>> --- a/linux-user/syscall.c >>>>>> +++ b/linux-user/syscall.c >>>>>> @@ -51,6 +51,7 @@ >>>>>> #include <sys/sysinfo.h> >>>>>> #include <sys/signalfd.h> >>>>>> //#include <sys/user.h> >>>>>> +#include <netinet/in.h> >>>>>> #include <netinet/ip.h> >>>>>> #include <netinet/tcp.h> >>>>>> #include <netinet/udp.h> >>>>>> @@ -2272,6 +2273,7 @@ static abi_long do_setsockopt(int sockfd, int level, int optname, >>>>>> case IPV6_RECVDSTOPTS: >>>>>> case IPV6_2292DSTOPTS: >>>>>> case IPV6_TCLASS: >>>>>> + case IPV6_ADDR_PREFERENCES: >>>>>> #ifdef IPV6_RECVPATHMTU >>>>>> case IPV6_RECVPATHMTU: >>>>>> #endif >>>>>> @@ -2926,6 +2928,7 @@ get_timeout: >>>>>> case IPV6_RECVDSTOPTS: >>>>>> case IPV6_2292DSTOPTS: >>>>>> case IPV6_TCLASS: >>>>>> + case IPV6_ADDR_PREFERENCES: >>>>>> #ifdef IPV6_RECVPATHMTU >>>>>> case IPV6_RECVPATHMTU: >>>>>> #endif >>>>>> >>>>> >>>>> Building on Centos7: >>>>> >>>>> ../linux-user/syscall.c: In function 'do_setsockopt': >>>>> ../linux-user/syscall.c:2276:14: error: 'IPV6_ADDR_PREFERENCES' >>>>> undeclared (first use in this function) >>>>> case IPV6_ADDR_PREFERENCES: >>>>> ^ >>>>> ../linux-user/syscall.c:2276:14: note: each undeclared identifier is >>>>> reported only once for each function it appears in >>>>> ../linux-user/syscall.c: In function 'do_getsockopt': >>>>> ../linux-user/syscall.c:2931:14: error: 'IPV6_ADDR_PREFERENCES' >>>>> undeclared (first use in this function) >>>>> case IPV6_ADDR_PREFERENCES: >>>>> ^ >>>>> >>>> >>>> Strange... this is defined since kernel v2.6.26 in /usr/include/linux/in6.h >>>> >>>> 7cbca67c0732 [IPV6]: Support Source Address Selection API (RFC5014). >>>> >>>> Could try adding the include? >>> >>> Yes, this fixed it, thanks: >>> >>> -- >8 -- >>> diff --git a/linux-user/syscall.c b/linux-user/syscall.c >>> index 1f91aa0ed5e..34760779c8e 100644 >>> --- a/linux-user/syscall.c >>> +++ b/linux-user/syscall.c >>> @@ -59,6 +59,7 @@ >>> #include <linux/icmp.h> >>> #include <linux/icmpv6.h> >>> #include <linux/if_tun.h> >>> +#include <linux/in6.h> >>> #include <linux/errqueue.h> >>> #include <linux/random.h> >>> #ifdef CONFIG_TIMERFD >>> --- >>> >> >> Could you send a patch to the ML? > > Me? OK... > Oh, I didn't see the message from Peter and I though it was already merged, so I was speaking about a patch to fix the build... Anyway, you did it, so I will update the the PR with your update. Thank you Philippe :) Laurent ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2021-01-21 12:50 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-01-20 19:53 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier 2021-01-20 19:53 ` [PULL 1/5] linux-user: Support F_ADD_SEALS and F_GET_SEALS fcntls Laurent Vivier 2021-01-20 19:53 ` [PULL 2/5] linux-user: add missing UDP get/setsockopt option Laurent Vivier 2021-01-20 19:53 ` [PULL 3/5] linux-user: add missing IPv6 " Laurent Vivier 2021-01-20 19:53 ` [PULL 4/5] linux-user: Add IPv6 options to do_print_sockopt() Laurent Vivier 2021-01-20 19:53 ` [PULL 5/5] linux-user: Remove obsolete F_SHLCK and F_EXLCK translation Laurent Vivier 2021-01-21 10:44 ` [PULL 0/5] Linux user for 6.0 patches Peter Maydell 2021-01-21 11:07 ` Laurent Vivier 2021-01-21 11:38 ` Philippe Mathieu-Daudé 2021-01-21 11:43 ` Philippe Mathieu-Daudé -- strict thread matches above, loose matches on Subject: below -- 2021-01-21 12:38 Laurent Vivier 2021-01-21 12:38 ` [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option Laurent Vivier 2021-01-19 17:54 [PULL 0/5] Linux user for 6.0 patches Laurent Vivier 2021-01-19 17:54 ` [PULL 3/5] linux-user: add missing IPv6 get/setsockopt option Laurent Vivier 2021-01-20 12:16 ` Philippe Mathieu-Daudé 2021-01-20 16:00 ` Laurent Vivier 2021-01-20 16:12 ` Philippe Mathieu-Daudé 2021-01-20 16:22 ` Laurent Vivier 2021-01-20 16:56 ` Philippe Mathieu-Daudé 2021-01-20 17:15 ` Laurent Vivier
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.