From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NvHo9-0006zE-4e for qemu-devel@nongnu.org; Fri, 26 Mar 2010 18:15:13 -0400 Received: from [140.186.70.92] (port=56929 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NvHo7-0006ur-9M for qemu-devel@nongnu.org; Fri, 26 Mar 2010 18:15:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NvHn5-0007sO-K9 for qemu-devel@nongnu.org; Fri, 26 Mar 2010 18:14:09 -0400 Received: from hall.aurel32.net ([88.191.82.174]:34768) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NvHn5-0007sJ-Cy for qemu-devel@nongnu.org; Fri, 26 Mar 2010 18:14:07 -0400 Date: Fri, 26 Mar 2010 23:14:06 +0100 From: Aurelien Jarno Subject: Re: [Qemu-devel] [PATCH 3/4] Add inotify_init1 syscall support Message-ID: <20100326221406.GD15194@volta.aurel32.net> References: <47b7d8a4c69443f7902c4b413143cb8de67c1d6e.1269616764.git.riku.voipio@nokia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <47b7d8a4c69443f7902c4b413143cb8de67c1d6e.1269616764.git.riku.voipio@nokia.com> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Riku Voipio Cc: Riku Voipio , qemu-devel@nongnu.org On Fri, Mar 26, 2010 at 03:25:11PM +0000, Riku Voipio wrote: > From: Riku Voipio > > New syscall which gets actively used when you have a > fresh kernel. > > Signed-off-by: Riku Voipio Thanks, applied. > --- > configure | 18 ++++++++++++++++++ > linux-user/syscall.c | 14 ++++++++++++++ > 2 files changed, 32 insertions(+), 0 deletions(-) > > diff --git a/configure b/configure > index 6bc40a3..f9e08f6 100755 > --- a/configure > +++ b/configure > @@ -1629,6 +1629,21 @@ if compile_prog "" "" ; then > inotify=yes > fi > > +inotify1=no > +cat > $TMPC << EOF > +#include > + > +int > +main(void) > +{ > + /* try to start inotify */ > + return inotify_init1(0); > +} > +EOF > +if compile_prog "" "" ; then > + inotify1=yes > +fi > + > # check if utimensat and futimens are supported > utimens=no > cat > $TMPC << EOF > @@ -2136,6 +2151,9 @@ fi > if test "$inotify" = "yes" ; then > echo "CONFIG_INOTIFY=y" >> $config_host_mak > fi > +if test "$inotify1" = "yes" ; then > + echo "CONFIG_INOTIFY1=y" >> $config_host_mak > +fi > if test "$byteswap_h" = "yes" ; then > echo "CONFIG_BYTESWAP_H=y" >> $config_host_mak > fi > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index 845bb60..4b2a765 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -506,9 +506,18 @@ static int sys_inotify_rm_watch(int fd, int32_t wd) > return (inotify_rm_watch(fd, wd)); > } > #endif > +#ifdef CONFIG_INOTIFY1 > +#if defined(TARGET_NR_inotify_init1) && defined(__NR_inotify_init1) > +static int sys_inotify_init1(int flags) > +{ > + return (inotify_init1(flags)); > +} > +#endif > +#endif > #else > /* Userspace can usually survive runtime without inotify */ > #undef TARGET_NR_inotify_init > +#undef TARGET_NR_inotify_init1 > #undef TARGET_NR_inotify_add_watch > #undef TARGET_NR_inotify_rm_watch > #endif /* CONFIG_INOTIFY */ > @@ -7174,6 +7183,11 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, > ret = get_errno(sys_inotify_init()); > break; > #endif > +#if defined(TARGET_NR_inotify_init1) && defined(__NR_inotify_init1) > + case TARGET_NR_inotify_init1: > + ret = get_errno(sys_inotify_init1(arg1)); > + break; > +#endif > #if defined(TARGET_NR_inotify_add_watch) && defined(__NR_inotify_add_watch) > case TARGET_NR_inotify_add_watch: > p = lock_user_string(arg2); > -- > 1.6.5 > > > > -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net