qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] buildbot failure in qemu on default_x86_64_rhel5


From: Aneesh Kumar K.V
Subject: Re: [Qemu-devel] buildbot failure in qemu on default_x86_64_rhel5
Date: Sat, 01 Oct 2011 15:03:23 +0530
User-agent: Notmuch/0.9_rc1 (http://notmuchmail.org) Emacs/23.2.1 (x86_64-pc-linux-gnu)

On Sat, 01 Oct 2011 14:28:47 +0530, "Aneesh Kumar K.V" <address@hidden> wrote:
> On Fri, 30 Sep 2011 09:26:53 +0100, Stefan Hajnoczi <address@hidden> wrote:
> > On Fri, Sep 30, 2011 at 12:28 AM,  <address@hidden> wrote:
> > > The Buildbot has detected a new failure on builder default_x86_64_rhel5 
> > > while building qemu.
> > > Full details are available at:
> > >  
> > > http://buildbot.b1-systems.de/qemu/builders/default_x86_64_rhel5/builds/24
> > 
> > Build error on RHEL 5 in virtio-9p-handle.c:
> > /home/buildbot/slave-public/default_x86_64_rhel5/build/hw/9pfs/virtio-9p-handle.c:
> > In function 'handle_utimensat':
> > /home/buildbot/slave-public/default_x86_64_rhel5/build/hw/9pfs/virtio-9p-handle.c:377:
> > warning: implicit declaration of function 'futimens'
> > /home/buildbot/slave-public/default_x86_64_rhel5/build/hw/9pfs/virtio-9p-handle.c:377:
> > warning: nested extern declaration of 'futimens'
> > 
> > RHEL 5 only has glibc 2.5 but futimens(2) was introduced in glibc 2.6.
> 
> We can make handle only available to glibc 2.6 and above . Handle fs
> drive will anyhow require a 2.6.39 kernel. Something like.
> 

I guess the below is better. I haven't built test the changes on rhel5
yet.

>From c8e781fc8077587d23fcf658c14b5992282563a8 Mon Sep 17 00:00:00 2001
From: Aneesh Kumar K.V <address@hidden>
Date: Sat, 1 Oct 2011 14:59:42 +0530
Subject: [PATCH] hw/9pfs: Fix build error on platform that don't support 
futimens

Signed-off-by: Aneesh Kumar K.V <address@hidden>
---
 hw/9pfs/virtio-9p-handle.c |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/hw/9pfs/virtio-9p-handle.c b/hw/9pfs/virtio-9p-handle.c
index 860b0e3..9e9ceb3 100644
--- a/hw/9pfs/virtio-9p-handle.c
+++ b/hw/9pfs/virtio-9p-handle.c
@@ -386,12 +386,17 @@ static int handle_utimensat(FsContext *ctx, V9fsPath 
*fs_path,
     int fd, ret;
     struct handle_data *data = (struct handle_data *)ctx->private;
 
+#ifdef CONFIG_UTIMENSAT
     fd = open_by_handle(data->mountfd, fs_path->data, O_NONBLOCK);
     if (fd < 0) {
         return fd;
     }
     ret = futimens(fd, buf);
     close(fd);
+#else
+    ret = -1;
+    errno = ENOSYS;
+#endif
     return ret;
 }
 
@@ -591,8 +596,16 @@ static int handle_init(FsContext *ctx)
     int ret, mnt_id;
     struct statfs stbuf;
     struct file_handle fh;
-    struct handle_data *data = g_malloc(sizeof(struct handle_data));
+    struct handle_data *data;
 
+#ifndef CONFIG_UTIMENSAT
+    /*
+     * We support handle fs driver only if all related
+     * syscalls are provided by host.
+     */
+    return -1;
+#endif
+    data = g_malloc(sizeof(struct handle_data));
     data->mountfd = open(ctx->fs_root, O_DIRECTORY);
     if (data->mountfd < 0) {
         ret = data->mountfd;
-- 
1.7.4.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]