On Mon, 28 Nov 2011 16:36:18 -0600, Anthony Liguori <anth...@codemonkey.ws> wrote: > On 11/23/2011 12:16 AM, Aneesh Kumar K.V wrote: > > On Mon, 21 Nov 2011 09:29:11 +0100, Paolo Bonzini<pbonz...@redhat.com> > > wrote: > >> Small requirements on "new" features have percolated to virtio-9p-local.c. > >> In particular, the utimensat wrapper actually only supports dirfd = > >> AT_FDCWD > >> and flags = AT_SYMLINK_NOFOLLOW in the fallback code. Remove the arguments > >> so that virtio-9p-local.c will not use AT_* constants. > >> > >> At the same time, fail local_ioc_getversion if the ioctl is not supported > >> by the host. > >> > >> Signed-off-by: Paolo Bonzini<pbonz...@redhat.com> > > Hrm, I may have messed this up. My mailbox processing script seems to have > found Aneesh's patch instead of Paolo's. > > Can ya'll take a look at 2507718baf311ea78156c6777d38410a9f89ce89 and tell me > if > I need to revert it? >
No i don't think that needs a revert. But we may need the below patch. I have also send the change as a separate mail to the list. >From db7fdc1c8eb95d556c18ee44fd4f9d5a3aabf9c4 Mon Sep 17 00:00:00 2001 From: "Aneesh Kumar K.V" <aneesh.ku...@linux.vnet.ibm.com> Date: Tue, 29 Nov 2011 15:10:52 +0530 Subject: [PATCH] hw/9pfs: Improve portability to older systems commit ae0f940e6b4f5177892dd6a12762282fa9089972 2507718baf311ea78156c6777d38410a9f89ce89 missed updating virtio-9p-handle.c. Signed-off-by: Aneesh Kumar K.V <aneesh.ku...@linux.vnet.ibm.com> --- hw/9pfs/virtio-9p-handle.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/hw/9pfs/virtio-9p-handle.c b/hw/9pfs/virtio-9p-handle.c index 7644ae5..93552a1 100644 --- a/hw/9pfs/virtio-9p-handle.c +++ b/hw/9pfs/virtio-9p-handle.c @@ -599,7 +599,8 @@ static int handle_unlinkat(FsContext *ctx, V9fsPath *dir, static int handle_ioc_getversion(FsContext *ctx, V9fsPath *path, mode_t st_mode, uint64_t *st_gen) { - int err; + int err = -ENOTTY; +#ifdef FS_IOC_GETVERSION V9fsFidOpenState fid_open; /* @@ -615,6 +616,7 @@ static int handle_ioc_getversion(FsContext *ctx, V9fsPath *path, } err = ioctl(fid_open.fd, FS_IOC_GETVERSION, st_gen); handle_close(ctx, &fid_open); +#endif return err; } @@ -630,6 +632,7 @@ static int handle_init(FsContext *ctx) ret = data->mountfd; goto err_out; } +#ifdef FS_IOC_GETVERSION ret = statfs(ctx->fs_root, &stbuf); if (!ret) { switch (stbuf.f_type) { @@ -641,6 +644,7 @@ static int handle_init(FsContext *ctx) break; } } +#endif memset(&fh, 0, sizeof(struct file_handle)); ret = name_to_handle(data->mountfd, ".", &fh, &mnt_id, 0); if (ret && errno == EOVERFLOW) { -- 1.7.5.4