Hi, On Sat, Oct 31, 2015 at 04:57:04PM +0300, Dmitry V. Levin wrote: > On Sat, Oct 31, 2015 at 12:47:53AM -0400, Mike Frysinger wrote: > > diff --git a/ipc_msg.c b/ipc_msg.c > > index 55747cb..2fc7470 100644 > > --- a/ipc_msg.c > > +++ b/ipc_msg.c > > @@ -31,9 +31,7 @@ > > */ > > > > #include "defs.h" > > - > > -#include <sys/ipc.h> > > -#include <sys/msg.h> > > +#include "ipc_defs.h" > > > > #include "xlat/ipc_msg_flags.h" > > #include "xlat/resource_flags.h" > > I suppose <sys/msg.h> is required for "xlat/ipc_msg_flags.h" > > > diff --git a/ipc_shm.c b/ipc_shm.c > > index 4a41690..03f38ab 100644 > > --- a/ipc_shm.c > > +++ b/ipc_shm.c > > @@ -32,8 +32,6 @@ > > > > #include "defs.h" > > > > -#include <sys/shm.h> > > - > > #include "xlat/shm_resource_flags.h" > > #include "xlat/shm_flags.h" > > Likewise, <sys/shm.h> is required for "xlat/shm_resource_flags.h"
I'm going to push your patch with the following editions, if you don't mind. --- a/configure.ac +++ b/configure.ac @@ -259,10 +259,6 @@ AC_CHECK_FUNCS(m4_normalize([ ])) AC_CHECK_HEADERS(m4_normalize([ asm/cachectl.h - asm/ipcbuf.h - asm/msgbuf.h - asm/sembuf.h - asm/shmbuf.h asm/sysmips.h bluetooth/bluetooth.h elf.h @@ -275,7 +271,6 @@ AC_CHECK_HEADERS(m4_normalize([ linux/ip_vs.h linux/ipc.h linux/mmtimer.h - linux/mqueue.h linux/msg.h linux/perf_event.h linux/seccomp.h @@ -301,6 +296,7 @@ AC_CHECK_HEADERS(m4_normalize([ sys/vfs.h sys/xattr.h ])) +AC_CHECK_HEADERS([linux/mqueue.h],,, [#include <linux/types.h>]) AC_CHECK_HEADERS([linux/icmp.h linux/in6.h linux/netlink.h linux/if_packet.h], [], [], [#include <stddef.h> #include <sys/socket.h> --- a/ipc_defs.h +++ b/ipc_defs.h @@ -27,7 +27,7 @@ #ifdef HAVE_SYS_IPC_H # include <sys/ipc.h> -#elif defined(HAVE_LINUX_IPC_H) +#elif defined HAVE_LINUX_IPC_H # include <linux/ipc.h> /* While glibc uses __key, the kernel uses key. */ # define __key key --- a/ipc_msg.c +++ b/ipc_msg.c @@ -33,6 +33,12 @@ #include "defs.h" #include "ipc_defs.h" +#ifdef HAVE_SYS_MSG_H +# include <sys/msg.h> +#elif defined HAVE_LINUX_MSG_H +# include <linux/msg.h> +#endif + #include "xlat/ipc_msg_flags.h" #include "xlat/resource_flags.h" --- a/ipc_msgctl.c +++ b/ipc_msgctl.c @@ -31,22 +31,21 @@ */ #include "defs.h" + +#include DEF_MPERS_TYPE(msqid_ds_t) + #include "ipc_defs.h" #ifdef HAVE_SYS_MSG_H /* The C library generally exports the struct the current kernel expects. */ # include <sys/msg.h> typedef struct msqid_ds msqid_ds_t; -#elif defined(HAVE_ASM_MSGBUF_H) -/* The asm header provides the 64bit struct directly for us. */ -# include <asm/msgbuf.h> -typedef struct msqid64_ds msqid_ds_t; -#elif defined(HAVE_LINUX_MSG_H) +#elif defined HAVE_LINUX_MSG_H /* The linux header might provide the right struct. */ # include <linux/msg.h> typedef struct msqid64_ds msqid_ds_t; #endif -#include DEF_MPERS_TYPE(msqid_ds_t) + #include MPERS_DEFS #include "xlat/msgctl_flags.h" --- a/ipc_sem.c +++ b/ipc_sem.c @@ -35,14 +35,14 @@ #ifdef HAVE_SYS_SEM_H # include <sys/sem.h> -#elif defined(HAVE_LINUX_SEM_H) +#elif defined HAVE_LINUX_SEM_H # include <linux/sem.h> #endif #include "xlat/semctl_flags.h" #include "xlat/semop_flags.h" -#if defined(HAVE_SYS_SHM_H) || defined(HAVE_LINUX_SEM_H) +#if defined HAVE_SYS_SEM_H || defined HAVE_LINUX_SEM_H static void tprint_sembuf(const struct sembuf *sb) { @@ -55,7 +55,7 @@ tprint_sembuf(const struct sembuf *sb) static void tprint_sembuf_array(struct tcb *tcp, const long addr, const unsigned long count) { -#if defined(HAVE_SYS_SHM_H) || defined(HAVE_LINUX_SEM_H) +#if defined HAVE_SYS_SEM_H || defined HAVE_LINUX_SEM_H unsigned long max_count; struct sembuf sb; --- a/ipc_shm.c +++ b/ipc_shm.c @@ -32,6 +32,12 @@ #include "defs.h" +#ifdef HAVE_SYS_SHM_H +# include <sys/shm.h> +#elif defined HAVE_LINUX_SHM_H +# include <linux/shm.h> +#endif + #include "xlat/shm_resource_flags.h" #include "xlat/shm_flags.h" --- a/ipc_shmctl.c +++ b/ipc_shmctl.c @@ -31,22 +31,21 @@ */ #include "defs.h" -#include "ipc_defs.h" #include DEF_MPERS_TYPE(shmid_ds_t) + +#include "ipc_defs.h" + #ifdef HAVE_SYS_SHM_H /* The C library generally exports the struct the current kernel expects. */ # include <sys/shm.h> typedef struct shmid_ds shmid_ds_t; -#elif defined(HAVE_ASM_SHMBUF_H) -/* The asm header provides the 64bit struct directly for us. */ -# include <asm/shmbuf.h> -typedef struct shmid64_ds shmid_ds_t; -#elif defined(HAVE_LINUX_SHM_H) +#elif defined HAVE_LINUX_SHM_H /* The linux header might provide the right struct. */ # include <linux/shm.h> typedef struct shmid64_ds shmid_ds_t; #endif + #include MPERS_DEFS #include "xlat/shmctl_flags.h" --- a/print_mq_attr.c +++ b/print_mq_attr.c @@ -29,20 +29,21 @@ #include "defs.h" #include DEF_MPERS_TYPE(mq_attr_t) + #ifdef HAVE_MQUEUE_H # include <mqueue.h> typedef struct mq_attr mq_attr_t; -#elif defined(HAVE_LINUX_MQUEUE_H) +#elif defined HAVE_LINUX_MQUEUE_H +# include <linux/types.h> # include <linux/mqueue.h> typedef struct mq_attr mq_attr_t; #endif + #include MPERS_DEFS MPERS_PRINTER_DECL(void, printmqattr)(struct tcb *tcp, const long addr) { -# ifndef HAVE_MQUEUE_H - printaddr(addr); -# else +#if defined HAVE_MQUEUE_H || defined HAVE_LINUX_MQUEUE_H mq_attr_t attr; if (umove_or_printaddr(tcp, addr, &attr)) return; @@ -51,5 +52,7 @@ MPERS_PRINTER_DECL(void, printmqattr)(struct tcb *tcp, const long addr) tprintf(", mq_maxmsg=%ld, mq_msgsize=%ld, mq_curmsg=%ld}", (long) attr.mq_maxmsg, (long) attr.mq_msgsize, (long) attr.mq_curmsgs); -# endif +#else + printaddr(addr); +#endif } -- ldv
pgpSvbjiJ3G7C.pgp
Description: PGP signature
------------------------------------------------------------------------------ Go from Idea to Many App Stores Faster with Intel(R) XDK Give your users amazing mobile app experiences with Intel(R) XDK. Use one codebase in this all-in-one HTML5 development environment. Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs. http://pubads.g.doubleclick.net/gampad/clk?id=254741551&iu=/4140
_______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel