qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL] VirtFS update
@ 2011-09-13 13:27 Aneesh Kumar K.V
  2011-09-15 19:10 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-09-13 13:27 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: QEMU Developers


Hi Anthony,

This series contain few fixes to VirtFS server. The patch set also add
two new 9p operations. Please pull.

The following changes since commit 07ff2c4475df77e38a31d50ee7f3932631806c15:

  Merge remote-tracking branch 'origin/master' into staging (2011-09-08 09:25:36 -0500)

are available in the git repository at:

  git://repo.or.cz/qemu/v9fs.git for-upstream-4

Aneesh Kumar K.V (5):
      hw/9pfs: Update the fidp path before opendir
      hw/9pfs: Initialize rest of qid field to zero.
      hw/9pfs: Fix memleaks in some 9p operation
      hw/9pfs: add 9P2000.L renameat operation
      hw/9pfs: add 9P2000.L unlinkat operation

 hw/9pfs/virtio-9p.c |  126 +++++++++++++++++++++++++++++++++++++++++++++++++++
 hw/9pfs/virtio-9p.h |    4 ++
 2 files changed, 130 insertions(+), 0 deletions(-)


-aneesh

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2011-09-13 13:27 Aneesh Kumar K.V
@ 2011-09-15 19:10 ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2011-09-15 19:10 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers

On 09/13/2011 08:27 AM, Aneesh Kumar K.V wrote:
>
> Hi Anthony,
>
> This series contain few fixes to VirtFS server. The patch set also add
> two new 9p operations. Please pull.
>
> The following changes since commit 07ff2c4475df77e38a31d50ee7f3932631806c15:
>
>    Merge remote-tracking branch 'origin/master' into staging (2011-09-08 09:25:36 -0500)


Pulled.  Thanks.

Regards,

Anthony Liguori


> are available in the git repository at:
>
>    git://repo.or.cz/qemu/v9fs.git for-upstream-4
>
> Aneesh Kumar K.V (5):
>        hw/9pfs: Update the fidp path before opendir
>        hw/9pfs: Initialize rest of qid field to zero.
>        hw/9pfs: Fix memleaks in some 9p operation
>        hw/9pfs: add 9P2000.L renameat operation
>        hw/9pfs: add 9P2000.L unlinkat operation
>
>   hw/9pfs/virtio-9p.c |  126 +++++++++++++++++++++++++++++++++++++++++++++++++++
>   hw/9pfs/virtio-9p.h |    4 ++
>   2 files changed, 130 insertions(+), 0 deletions(-)
>
>
> -aneesh
>
>
>

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2011-09-27  9:11 Aneesh Kumar K.V
  2011-09-29 20:05 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-09-27  9:11 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: QEMU Developers


The following changes since commit d85a1302a91912c52cdc3fe459b313848a8a0792:

  Merge remote-tracking branch 'kwolf/for-anthony' into staging (2011-09-22 10:31:26 -0500)

are available in the git repository at:

  git://repo.or.cz/qemu/v9fs.git for-upstream-5

Aneesh Kumar K.V (8):
      hw/9pfs: Make v9fs_string* functions non-static
      hw/9pfs: Use read-write lock for protecting fid path.
      hw/9pfs: Move fid pathname tracking to seperate data type.
      hw/9pfs: Add init callback to fs driver
      hw/9pfs: Add fs driver specific details to fscontext
      hw/9pfs: Avoid unnecessary get_fid in v9fs_clunk
      hw/9pfs: Implement TFLUSH operation
      hw/9pfs: Add handle based fs driver

 Makefile.objs              |    8 +-
 fsdev/file-op-9p.h         |   54 ++-
 fsdev/qemu-fsdev.c         |    1 +
 fsdev/qemu-fsdev.h         |    1 +
 hw/9pfs/codir.c            |   64 +++-
 hw/9pfs/cofile.c           |  110 +++++--
 hw/9pfs/cofs.c             |  195 ++++++++++--
 hw/9pfs/coxattr.c          |   41 ++-
 hw/9pfs/virtio-9p-coth.h   |   72 +++--
 hw/9pfs/virtio-9p-device.c |   10 +-
 hw/9pfs/virtio-9p-handle.c |  611 +++++++++++++++++++++++++++++++++
 hw/9pfs/virtio-9p-local.c  |  213 +++++++++---
 hw/9pfs/virtio-9p.c        |  820 ++++++++++++++++++++++++--------------------
 hw/9pfs/virtio-9p.h        |   50 +++-
 14 files changed, 1712 insertions(+), 538 deletions(-)
 create mode 100644 hw/9pfs/virtio-9p-handle.c

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2011-09-27  9:11 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
@ 2011-09-29 20:05 ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2011-09-29 20:05 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers

On 09/27/2011 04:11 AM, Aneesh Kumar K.V wrote:
>
> The following changes since commit d85a1302a91912c52cdc3fe459b313848a8a0792:
>
>    Merge remote-tracking branch 'kwolf/for-anthony' into staging (2011-09-22 10:31:26 -0500)
>
> are available in the git repository at:
>
>    git://repo.or.cz/qemu/v9fs.git for-upstream-5

Pulled.  Thanks.

Regards,

Anthony Liguori

>
> Aneesh Kumar K.V (8):
>        hw/9pfs: Make v9fs_string* functions non-static
>        hw/9pfs: Use read-write lock for protecting fid path.
>        hw/9pfs: Move fid pathname tracking to seperate data type.
>        hw/9pfs: Add init callback to fs driver
>        hw/9pfs: Add fs driver specific details to fscontext
>        hw/9pfs: Avoid unnecessary get_fid in v9fs_clunk
>        hw/9pfs: Implement TFLUSH operation
>        hw/9pfs: Add handle based fs driver
>
>   Makefile.objs              |    8 +-
>   fsdev/file-op-9p.h         |   54 ++-
>   fsdev/qemu-fsdev.c         |    1 +
>   fsdev/qemu-fsdev.h         |    1 +
>   hw/9pfs/codir.c            |   64 +++-
>   hw/9pfs/cofile.c           |  110 +++++--
>   hw/9pfs/cofs.c             |  195 ++++++++++--
>   hw/9pfs/coxattr.c          |   41 ++-
>   hw/9pfs/virtio-9p-coth.h   |   72 +++--
>   hw/9pfs/virtio-9p-device.c |   10 +-
>   hw/9pfs/virtio-9p-handle.c |  611 +++++++++++++++++++++++++++++++++
>   hw/9pfs/virtio-9p-local.c  |  213 +++++++++---
>   hw/9pfs/virtio-9p.c        |  820 ++++++++++++++++++++++++--------------------
>   hw/9pfs/virtio-9p.h        |   50 +++-
>   14 files changed, 1712 insertions(+), 538 deletions(-)
>   create mode 100644 hw/9pfs/virtio-9p-handle.c
>
>
>

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] Virtfs update
@ 2011-11-02 10:22 Aneesh Kumar K.V
  2011-11-02 12:42 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-11-02 10:22 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers


The following changes since commit e072ea2fd8fdceef64159b9596d3c15ce01bea91:

  Bump version to 1.0-rc0 (2011-11-01 19:37:01 -0500)

are available in the git repository at:
  git://repo.or.cz/qemu/v9fs.git for-upstream-8

Aneesh Kumar K.V (1):
      hw/9pfs: Move opt validation to FsDriver callback

Stefan Hajnoczi (1):
      hw/9pfs: use g_vasprintf() instead of rolling our own

 fsdev/file-op-9p.h         |   15 ++++++-
 fsdev/qemu-fsdev.c         |   44 +++----------------
 fsdev/qemu-fsdev.h         |   10 ----
 hw/9pfs/virtio-9p-device.c |   13 +++--
 hw/9pfs/virtio-9p-handle.c |   20 +++++++++
 hw/9pfs/virtio-9p-local.c  |   34 ++++++++++++++
 hw/9pfs/virtio-9p.c        |  103 ++------------------------------------------
 vl.c                       |    8 +---
 8 files changed, 87 insertions(+), 160 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] Virtfs update
  2011-11-02 10:22 [Qemu-devel] [PULL] Virtfs update Aneesh Kumar K.V
@ 2011-11-02 12:42 ` Anthony Liguori
  2011-11-02 14:09   ` Aneesh Kumar K.V
  2011-11-02 15:55   ` Markus Armbruster
  0 siblings, 2 replies; 46+ messages in thread
From: Anthony Liguori @ 2011-11-02 12:42 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers

On 11/02/2011 05:22 AM, Aneesh Kumar K.V wrote:
>
> The following changes since commit e072ea2fd8fdceef64159b9596d3c15ce01bea91:
>
>    Bump version to 1.0-rc0 (2011-11-01 19:37:01 -0500)
>
> are available in the git repository at:
>    git://repo.or.cz/qemu/v9fs.git for-upstream-8
>
> Aneesh Kumar K.V (1):
>        hw/9pfs: Move opt validation to FsDriver callback
>
> Stefan Hajnoczi (1):
>        hw/9pfs: use g_vasprintf() instead of rolling our own

Neither of these look like bug fixes to me.

Regards,

Anthony Liguori

>
>   fsdev/file-op-9p.h         |   15 ++++++-
>   fsdev/qemu-fsdev.c         |   44 +++----------------
>   fsdev/qemu-fsdev.h         |   10 ----
>   hw/9pfs/virtio-9p-device.c |   13 +++--
>   hw/9pfs/virtio-9p-handle.c |   20 +++++++++
>   hw/9pfs/virtio-9p-local.c  |   34 ++++++++++++++
>   hw/9pfs/virtio-9p.c        |  103 ++------------------------------------------
>   vl.c                       |    8 +---
>   8 files changed, 87 insertions(+), 160 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] Virtfs update
  2011-11-02 12:42 ` Anthony Liguori
@ 2011-11-02 14:09   ` Aneesh Kumar K.V
  2011-11-03 13:09     ` Anthony Liguori
  2011-11-02 15:55   ` Markus Armbruster
  1 sibling, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-11-02 14:09 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: QEMU Developers

On Wed, 02 Nov 2011 07:42:16 -0500, Anthony Liguori <aliguori@us.ibm.com> wrote:
> On 11/02/2011 05:22 AM, Aneesh Kumar K.V wrote:
> >
> > The following changes since commit e072ea2fd8fdceef64159b9596d3c15ce01bea91:
> >
> >    Bump version to 1.0-rc0 (2011-11-01 19:37:01 -0500)
> >
> > are available in the git repository at:
> >    git://repo.or.cz/qemu/v9fs.git for-upstream-8
> >
> > Aneesh Kumar K.V (1):
> >        hw/9pfs: Move opt validation to FsDriver callback
> >
> > Stefan Hajnoczi (1):
> >        hw/9pfs: use g_vasprintf() instead of rolling our own
> 
> Neither of these look like bug fixes to me.
> 
> Regards,
> 

The related discussion for the first commit can be found at

http://article.gmane.org/gmane.comp.emulators.qemu/122891

I dropped the second commit. updated details below.


The following changes since commit e072ea2fd8fdceef64159b9596d3c15ce01bea91:

  Bump version to 1.0-rc0 (2011-11-01 19:37:01 -0500)

are available in the git repository at:
  git://repo.or.cz/qemu/v9fs.git for-upstream-8

Stefan Hajnoczi (1):
      hw/9pfs: use g_vasprintf() instead of rolling our own

 hw/9pfs/virtio-9p.c |  103 ++-------------------------------------------------
 1 files changed, 4 insertions(+), 99 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] Virtfs update
  2011-11-02 12:42 ` Anthony Liguori
  2011-11-02 14:09   ` Aneesh Kumar K.V
@ 2011-11-02 15:55   ` Markus Armbruster
  1 sibling, 0 replies; 46+ messages in thread
From: Markus Armbruster @ 2011-11-02 15:55 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: Aneesh Kumar K.V, QEMU Developers

Anthony Liguori <aliguori@us.ibm.com> writes:

> On 11/02/2011 05:22 AM, Aneesh Kumar K.V wrote:
>>
>> The following changes since commit e072ea2fd8fdceef64159b9596d3c15ce01bea91:
>>
>>    Bump version to 1.0-rc0 (2011-11-01 19:37:01 -0500)
>>
>> are available in the git repository at:
>>    git://repo.or.cz/qemu/v9fs.git for-upstream-8
>>
>> Aneesh Kumar K.V (1):
>>        hw/9pfs: Move opt validation to FsDriver callback
>>
>> Stefan Hajnoczi (1):
>>        hw/9pfs: use g_vasprintf() instead of rolling our own
>
> Neither of these look like bug fixes to me.

The second one is actually a minor portability fix: one of the replaced
functions uses va_copy() without a matching va_end().  I posted the
obvious fix "Subject: [PATCH 2/2] hw/9pfs: Supply missing va_end()", but
Stefan's fix is better.

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] Virtfs update
  2011-11-02 14:09   ` Aneesh Kumar K.V
@ 2011-11-03 13:09     ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2011-11-03 13:09 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers

On 11/02/2011 09:09 AM, Aneesh Kumar K.V wrote:
> On Wed, 02 Nov 2011 07:42:16 -0500, Anthony Liguori<aliguori@us.ibm.com>  wrote:
>> On 11/02/2011 05:22 AM, Aneesh Kumar K.V wrote:
>>>
>>> The following changes since commit e072ea2fd8fdceef64159b9596d3c15ce01bea91:
>>>
>>>     Bump version to 1.0-rc0 (2011-11-01 19:37:01 -0500)
>>>
>>> are available in the git repository at:
>>>     git://repo.or.cz/qemu/v9fs.git for-upstream-8
>>>
>>> Aneesh Kumar K.V (1):
>>>         hw/9pfs: Move opt validation to FsDriver callback
>>>
>>> Stefan Hajnoczi (1):
>>>         hw/9pfs: use g_vasprintf() instead of rolling our own
>>
>> Neither of these look like bug fixes to me.
>>
>> Regards,
>>
>
> The related discussion for the first commit can be found at
>
> http://article.gmane.org/gmane.comp.emulators.qemu/122891
>
> I dropped the second commit. updated details below.

Pulled.  Thanks.

Regards,

Anthony Liguori

>
>
> The following changes since commit e072ea2fd8fdceef64159b9596d3c15ce01bea91:
>
>    Bump version to 1.0-rc0 (2011-11-01 19:37:01 -0500)
>
> are available in the git repository at:
>    git://repo.or.cz/qemu/v9fs.git for-upstream-8
>
> Stefan Hajnoczi (1):
>        hw/9pfs: use g_vasprintf() instead of rolling our own
>
>   hw/9pfs/virtio-9p.c |  103 ++-------------------------------------------------
>   1 files changed, 4 insertions(+), 99 deletions(-)
>
>
>

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2011-12-05  9:04 Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 1/5] hw/9pfs: Improve portability to older systems Aneesh Kumar K.V
                   ` (4 more replies)
  0 siblings, 5 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-05  9:04 UTC (permalink / raw)
  To: qemu-devel, jmforbes; +Cc: aliguori, qemu-stable

Hi,

I guess all these patches can be applied to 1.0 stable series.

The following changes since commit 1c8a881daaca6fe0646a425b0970fb3ad25f6732:

  Update version for 1.0 release (2011-12-01 14:04:21 -0600)

are available in the git repository at:
  git://repo.or.cz/qemu/v9fs.git 1.0-fixes

Aneesh Kumar K.V (4):
      hw/9pfs: Improve portability to older systems
      hw/9pfs: use migration blockers to prevent live migration when virtfs export path is mounted
      hw/9pfs: Add qdev.reset callback for virtio-9p-pci device
      hw/9pfs: Use the correct file descriptor in Fsdriver Callback

Deepak C Shetty (1):
      hw/9pfs: Reset server state during TVERSION

 Makefile.objs              |    4 +-
 fsdev/file-op-9p.h         |    4 +-
 fsdev/qemu-fsdev.c         |    2 +
 hw/9pfs/cofile.c           |    4 +-
 hw/9pfs/virtio-9p-device.c |   25 +++++++++--------
 hw/9pfs/virtio-9p-handle.c |   61 ++++++++++++++++----------------------------
 hw/9pfs/virtio-9p-local.c  |   36 ++++++++++++++++++-------
 hw/9pfs/virtio-9p-synth.c  |    5 ++-
 hw/9pfs/virtio-9p.c        |   45 ++++++++++++++++++++++++++++++++
 hw/9pfs/virtio-9p.h        |    5 ++-
 hw/virtio-pci.c            |    2 +-
 hw/virtio-pci.h            |    1 +
 qerror.c                   |    5 +++
 qerror.h                   |    3 ++
 14 files changed, 130 insertions(+), 72 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PATCH 1/5] hw/9pfs: Improve portability to older systems
  2011-12-05  9:04 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
@ 2011-12-05  9:04 ` Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 2/5] hw/9pfs: use migration blockers to prevent live migration when virtfs export path is mounted Aneesh Kumar K.V
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-05  9:04 UTC (permalink / raw)
  To: qemu-devel, jmforbes; +Cc: aliguori, qemu-stable, Aneesh Kumar K.V

From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>

handle fs driver require a set of newly added syscalls. Don't
Compile handle FS driver if those syscalls are not available.
Instead of adding #ifdef for all those syscalls we check for
open by handle syscall. If that is available then rest of the
syscalls used by the driver should be available.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
---
 Makefile.objs              |    4 ++--
 fsdev/qemu-fsdev.c         |    2 ++
 hw/9pfs/virtio-9p-handle.c |   33 ---------------------------------
 3 files changed, 4 insertions(+), 35 deletions(-)

diff --git a/Makefile.objs b/Makefile.objs
index d7a6539..3a699ee 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -310,8 +310,8 @@ hw-obj-$(CONFIG_SOUND) += $(sound-obj-y)
 9pfs-nested-$(CONFIG_VIRTFS) += virtio-9p-local.o virtio-9p-xattr.o
 9pfs-nested-$(CONFIG_VIRTFS) += virtio-9p-xattr-user.o virtio-9p-posix-acl.o
 9pfs-nested-$(CONFIG_VIRTFS) += virtio-9p-coth.o cofs.o codir.o cofile.o
-9pfs-nested-$(CONFIG_VIRTFS) += coxattr.o virtio-9p-handle.o
-9pfs-nested-$(CONFIG_VIRTFS) += virtio-9p-synth.o
+9pfs-nested-$(CONFIG_VIRTFS) += coxattr.o virtio-9p-synth.o
+9pfs-nested-$(CONFIG_OPEN_BY_HANDLE) +=  virtio-9p-handle.o
 
 hw-obj-$(CONFIG_REALLY_VIRTFS) += $(addprefix 9pfs/, $(9pfs-nested-y))
 $(addprefix 9pfs/, $(9pfs-nested-y)): QEMU_CFLAGS+=$(GLIB_CFLAGS)
diff --git a/fsdev/qemu-fsdev.c b/fsdev/qemu-fsdev.c
index 7fd2aa7..6684f7e 100644
--- a/fsdev/qemu-fsdev.c
+++ b/fsdev/qemu-fsdev.c
@@ -23,7 +23,9 @@ static QTAILQ_HEAD(FsDriverEntry_head, FsDriverListEntry) fsdriver_entries =
 
 static FsDriverTable FsDrivers[] = {
     { .name = "local", .ops = &local_ops},
+#ifdef CONFIG_OPEN_BY_HANDLE
     { .name = "handle", .ops = &handle_ops},
+#endif
     { .name = "synth", .ops = &synth_ops},
 };
 
diff --git a/hw/9pfs/virtio-9p-handle.c b/hw/9pfs/virtio-9p-handle.c
index 7644ae5..a62f690 100644
--- a/hw/9pfs/virtio-9p-handle.c
+++ b/hw/9pfs/virtio-9p-handle.c
@@ -45,7 +45,6 @@ struct handle_data {
     int handle_bytes;
 };
 
-#ifdef CONFIG_OPEN_BY_HANDLE
 static inline int name_to_handle(int dirfd, const char *name,
                                  struct file_handle *fh, int *mnt_id, int flags)
 {
@@ -56,38 +55,6 @@ static inline int open_by_handle(int mountfd, const char *fh, int flags)
 {
     return open_by_handle_at(mountfd, (struct file_handle *)fh, flags);
 }
-#else
-
-struct rpl_file_handle {
-    unsigned int handle_bytes;
-    int handle_type;
-    unsigned char handle[0];
-};
-#define file_handle rpl_file_handle
-
-#ifndef AT_REMOVEDIR
-#define AT_REMOVEDIR    0x200
-#endif
-#ifndef AT_EMPTY_PATH
-#define AT_EMPTY_PATH   0x1000  /* Allow empty relative pathname */
-#endif
-#ifndef O_PATH
-#define O_PATH    010000000
-#endif
-
-static inline int name_to_handle(int dirfd, const char *name,
-                                 struct file_handle *fh, int *mnt_id, int flags)
-{
-    errno = ENOSYS;
-    return -1;
-}
-
-static inline int open_by_handle(int mountfd, const char *fh, int flags)
-{
-    errno = ENOSYS;
-    return -1;
-}
-#endif
 
 static int handle_update_file_cred(int dirfd, const char *name, FsCred *credp)
 {
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PATCH 2/5] hw/9pfs: use migration blockers to prevent live migration when virtfs export path is mounted
  2011-12-05  9:04 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 1/5] hw/9pfs: Improve portability to older systems Aneesh Kumar K.V
@ 2011-12-05  9:04 ` Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 3/5] hw/9pfs: Reset server state during TVERSION Aneesh Kumar K.V
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-05  9:04 UTC (permalink / raw)
  To: qemu-devel, jmforbes; +Cc: aliguori, qemu-stable, Aneesh Kumar K.V

From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>

Now when you try to migrate with VirtFS export path mounted, you get a proper QMP error:

(qemu) migrate tcp:localhost:4444
Migration is disabled when VirtFS export path '/tmp/' is mounted in the guest using mount_tag 'v_tmp'
(qemu)

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
---
 hw/9pfs/virtio-9p-device.c |   22 +++++++++++-----------
 hw/9pfs/virtio-9p.c        |   19 +++++++++++++++++++
 hw/9pfs/virtio-9p.h        |    5 +++--
 qerror.c                   |    5 +++++
 qerror.h                   |    3 +++
 5 files changed, 41 insertions(+), 13 deletions(-)

diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c
index bba4c54..c9bca8b 100644
--- a/hw/9pfs/virtio-9p-device.c
+++ b/hw/9pfs/virtio-9p-device.c
@@ -33,13 +33,15 @@ static V9fsState *to_virtio_9p(VirtIODevice *vdev)
 
 static void virtio_9p_get_config(VirtIODevice *vdev, uint8_t *config)
 {
+    int len;
     struct virtio_9p_config *cfg;
     V9fsState *s = to_virtio_9p(vdev);
 
-    cfg = g_malloc0(sizeof(struct virtio_9p_config) +
-                        s->tag_len);
-    stw_raw(&cfg->tag_len, s->tag_len);
-    memcpy(cfg->tag, s->tag, s->tag_len);
+    len = strlen(s->tag);
+    cfg = g_malloc0(sizeof(struct virtio_9p_config) + len);
+    stw_raw(&cfg->tag_len, len);
+    /* We don't copy the terminating null to config space */
+    memcpy(cfg->tag, s->tag, len);
     memcpy(config, cfg, s->config_size);
     g_free(cfg);
 }
@@ -96,20 +98,18 @@ VirtIODevice *virtio_9p_init(DeviceState *dev, V9fsConf *conf)
     }
 
     len = strlen(conf->tag);
-    if (len > MAX_TAG_LEN) {
+    if (len > MAX_TAG_LEN - 1) {
         fprintf(stderr, "mount tag '%s' (%d bytes) is longer than "
-                "maximum (%d bytes)", conf->tag, len, MAX_TAG_LEN);
+                "maximum (%d bytes)", conf->tag, len, MAX_TAG_LEN - 1);
         exit(1);
     }
-    /* s->tag is non-NULL terminated string */
-    s->tag = g_malloc(len);
-    memcpy(s->tag, conf->tag, len);
-    s->tag_len = len;
+
+    s->tag = strdup(conf->tag);
     s->ctx.uid = -1;
 
     s->ops = fse->ops;
     s->vdev.get_features = virtio_9p_get_features;
-    s->config_size = sizeof(struct virtio_9p_config) + s->tag_len;
+    s->config_size = sizeof(struct virtio_9p_config) + len;
     s->vdev.get_config = virtio_9p_get_config;
     s->fid_list = NULL;
     qemu_co_rwlock_init(&s->rename_lock);
diff --git a/hw/9pfs/virtio-9p.c b/hw/9pfs/virtio-9p.c
index 1b2fc5d..32b98dd 100644
--- a/hw/9pfs/virtio-9p.c
+++ b/hw/9pfs/virtio-9p.c
@@ -23,6 +23,7 @@
 #include "virtio-9p-xattr.h"
 #include "virtio-9p-coth.h"
 #include "trace.h"
+#include "migration.h"
 
 int open_fd_hw;
 int total_open_fd;
@@ -373,6 +374,19 @@ static void put_fid(V9fsPDU *pdu, V9fsFidState *fidp)
      * Don't free the fid if it is in reclaim list
      */
     if (!fidp->ref && fidp->clunked) {
+        if (fidp->fid == pdu->s->root_fid) {
+            /*
+             * if the clunked fid is root fid then we
+             * have unmounted the fs on the client side.
+             * delete the migration blocker. Ideally, this
+             * should be hooked to transport close notification
+             */
+            if (pdu->s->migration_blocker) {
+                migrate_del_blocker(pdu->s->migration_blocker);
+                error_free(pdu->s->migration_blocker);
+                pdu->s->migration_blocker = NULL;
+            }
+        }
         free_fid(pdu, fidp);
     }
 }
@@ -1235,6 +1249,11 @@ static void v9fs_attach(void *opaque)
     err = offset;
     trace_v9fs_attach_return(pdu->tag, pdu->id,
                              qid.type, qid.version, qid.path);
+    s->root_fid = fid;
+    /* disable migration */
+    error_set(&s->migration_blocker, QERR_VIRTFS_FEATURE_BLOCKS_MIGRATION,
+              s->ctx.fs_root, s->tag);
+    migrate_add_blocker(s->migration_blocker);
 out:
     put_fid(pdu, fidp);
 out_nofid:
diff --git a/hw/9pfs/virtio-9p.h b/hw/9pfs/virtio-9p.h
index 7f88356..8b612da 100644
--- a/hw/9pfs/virtio-9p.h
+++ b/hw/9pfs/virtio-9p.h
@@ -246,8 +246,7 @@ typedef struct V9fsState
     V9fsFidState *fid_list;
     FileOperations *ops;
     FsContext ctx;
-    uint16_t tag_len;
-    uint8_t *tag;
+    char *tag;
     size_t config_size;
     enum p9_proto_version proto_version;
     int32_t msize;
@@ -256,6 +255,8 @@ typedef struct V9fsState
      * on rename.
      */
     CoRwlock rename_lock;
+    int32_t root_fid;
+    Error *migration_blocker;
 } V9fsState;
 
 typedef struct V9fsStatState {
diff --git a/qerror.c b/qerror.c
index fdf62b9..25bc91e 100644
--- a/qerror.c
+++ b/qerror.c
@@ -235,6 +235,11 @@ static const QErrorStringTable qerror_table[] = {
                      "supported by this qemu version: %(feature)",
     },
     {
+        .error_fmt = QERR_VIRTFS_FEATURE_BLOCKS_MIGRATION,
+        .desc      = "Migration is disabled when VirtFS export path '%(path)' "
+                     "is mounted in the guest using mount_tag '%(tag)'",
+    },
+    {
         .error_fmt = QERR_VNC_SERVER_FAILED,
         .desc      = "Could not start VNC server on %(target)",
     },
diff --git a/qerror.h b/qerror.h
index 2d3d43b..6414cd9 100644
--- a/qerror.h
+++ b/qerror.h
@@ -192,6 +192,9 @@ QError *qobject_to_qerror(const QObject *obj);
 #define QERR_UNKNOWN_BLOCK_FORMAT_FEATURE \
     "{ 'class': 'UnknownBlockFormatFeature', 'data': { 'device': %s, 'format': %s, 'feature': %s } }"
 
+#define QERR_VIRTFS_FEATURE_BLOCKS_MIGRATION \
+    "{ 'class': 'VirtFSFeatureBlocksMigration', 'data': { 'path': %s, 'tag': %s } }"
+
 #define QERR_VNC_SERVER_FAILED \
     "{ 'class': 'VNCServerFailed', 'data': { 'target': %s } }"
 
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PATCH 3/5] hw/9pfs: Reset server state during TVERSION
  2011-12-05  9:04 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 1/5] hw/9pfs: Improve portability to older systems Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 2/5] hw/9pfs: use migration blockers to prevent live migration when virtfs export path is mounted Aneesh Kumar K.V
@ 2011-12-05  9:04 ` Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 4/5] hw/9pfs: Add qdev.reset callback for virtio-9p-pci device Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 5/5] hw/9pfs: Use the correct file descriptor in Fsdriver Callback Aneesh Kumar K.V
  4 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-05  9:04 UTC (permalink / raw)
  To: qemu-devel, jmforbes
  Cc: Deepak C Shetty, aliguori, qemu-stable, Aneesh Kumar K.V

From: Deepak C Shetty <deepakcs@linux.vnet.ibm.com>

As per the 9p rfc, during TVERSION its necessary to clean all the active
fids, so that we start the session from a clean state. Its also needed in
scenarios where the guest is booting off 9p, and boot fails, and client
restarts, without any knowledge of the past, it will issue a TVERSION again
so this ensures that we always start from a clean state.

Signed-off-by: Deepak C Shetty <deepakcs@linux.vnet.ibm.com>
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
---
 hw/9pfs/virtio-9p.c |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/hw/9pfs/virtio-9p.c b/hw/9pfs/virtio-9p.c
index 32b98dd..dd43209 100644
--- a/hw/9pfs/virtio-9p.c
+++ b/hw/9pfs/virtio-9p.c
@@ -523,6 +523,30 @@ static int v9fs_mark_fids_unreclaim(V9fsPDU *pdu, V9fsPath *path)
     return 0;
 }
 
+static void virtfs_reset(V9fsPDU *pdu)
+{
+    V9fsState *s = pdu->s;
+    V9fsFidState *fidp = NULL;
+
+    /* Free all fids */
+    while (s->fid_list) {
+        fidp = s->fid_list;
+        s->fid_list = fidp->next;
+
+        if (fidp->ref) {
+            fidp->clunked = 1;
+        } else {
+            free_fid(pdu, fidp);
+        }
+    }
+    if (fidp) {
+        /* One or more unclunked fids found... */
+        error_report("9pfs:%s: One or more uncluncked fids "
+                     "found during reset", __func__);
+    }
+    return;
+}
+
 #define P9_QID_TYPE_DIR         0x80
 #define P9_QID_TYPE_SYMLINK     0x02
 
@@ -1196,6 +1220,8 @@ static void v9fs_version(void *opaque)
     pdu_unmarshal(pdu, offset, "ds", &s->msize, &version);
     trace_v9fs_version(pdu->tag, pdu->id, s->msize, version.data);
 
+    virtfs_reset(pdu);
+
     if (!strcmp(version.data, "9P2000.u")) {
         s->proto_version = V9FS_PROTO_2000U;
     } else if (!strcmp(version.data, "9P2000.L")) {
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PATCH 4/5] hw/9pfs: Add qdev.reset callback for virtio-9p-pci device
  2011-12-05  9:04 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
                   ` (2 preceding siblings ...)
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 3/5] hw/9pfs: Reset server state during TVERSION Aneesh Kumar K.V
@ 2011-12-05  9:04 ` Aneesh Kumar K.V
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 5/5] hw/9pfs: Use the correct file descriptor in Fsdriver Callback Aneesh Kumar K.V
  4 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-05  9:04 UTC (permalink / raw)
  To: qemu-devel, jmforbes; +Cc: aliguori, qemu-stable, Aneesh Kumar K.V

From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>

Add the device reset callback

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
---
 hw/9pfs/virtio-9p-device.c |    3 ++-
 hw/virtio-pci.c            |    2 +-
 hw/virtio-pci.h            |    1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c
index c9bca8b..cd343e1 100644
--- a/hw/9pfs/virtio-9p-device.c
+++ b/hw/9pfs/virtio-9p-device.c
@@ -176,7 +176,8 @@ static PCIDeviceInfo virtio_9p_info = {
         DEFINE_PROP_STRING("mount_tag", VirtIOPCIProxy, fsconf.tag),
         DEFINE_PROP_STRING("fsdev", VirtIOPCIProxy, fsconf.fsdev_id),
         DEFINE_PROP_END_OF_LIST(),
-    }
+    },
+    .qdev.reset = virtio_pci_reset,
 };
 
 static void virtio_9p_register_devices(void)
diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c
index 64c6a94..c665f5c 100644
--- a/hw/virtio-pci.c
+++ b/hw/virtio-pci.c
@@ -266,7 +266,7 @@ static void virtio_pci_stop_ioeventfd(VirtIOPCIProxy *proxy)
     proxy->ioeventfd_started = false;
 }
 
-static void virtio_pci_reset(DeviceState *d)
+void virtio_pci_reset(DeviceState *d)
 {
     VirtIOPCIProxy *proxy = container_of(d, VirtIOPCIProxy, pci_dev.qdev);
     virtio_pci_stop_ioeventfd(proxy);
diff --git a/hw/virtio-pci.h b/hw/virtio-pci.h
index f8404de..344c22b 100644
--- a/hw/virtio-pci.h
+++ b/hw/virtio-pci.h
@@ -45,6 +45,7 @@ typedef struct {
 } VirtIOPCIProxy;
 
 void virtio_init_pci(VirtIOPCIProxy *proxy, VirtIODevice *vdev);
+void virtio_pci_reset(DeviceState *d);
 
 /* Virtio ABI version, if we increment this, we break the guest driver. */
 #define VIRTIO_PCI_ABI_VERSION          0
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PATCH 5/5] hw/9pfs: Use the correct file descriptor in Fsdriver Callback
  2011-12-05  9:04 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
                   ` (3 preceding siblings ...)
  2011-12-05  9:04 ` [Qemu-devel] [PATCH 4/5] hw/9pfs: Add qdev.reset callback for virtio-9p-pci device Aneesh Kumar K.V
@ 2011-12-05  9:04 ` Aneesh Kumar K.V
  4 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-05  9:04 UTC (permalink / raw)
  To: qemu-devel, jmforbes; +Cc: aliguori, qemu-stable, Aneesh Kumar K.V

From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>

Fsdriver callback that operate on file descriptor need to
differentiate between directory fd and file fd.

Based on the original patch from Sassan Panahinejad <sassan@sassan.me.uk>

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
---
 fsdev/file-op-9p.h         |    4 ++--
 hw/9pfs/cofile.c           |    4 ++--
 hw/9pfs/virtio-9p-handle.c |   28 ++++++++++++++++++++++------
 hw/9pfs/virtio-9p-local.c  |   36 ++++++++++++++++++++++++++----------
 hw/9pfs/virtio-9p-synth.c  |    5 +++--
 5 files changed, 55 insertions(+), 22 deletions(-)

diff --git a/fsdev/file-op-9p.h b/fsdev/file-op-9p.h
index 1928da2..a85ecd3 100644
--- a/fsdev/file-op-9p.h
+++ b/fsdev/file-op-9p.h
@@ -112,10 +112,10 @@ typedef struct FileOperations
     ssize_t (*pwritev)(FsContext *, V9fsFidOpenState *,
                        const struct iovec *, int, off_t);
     int (*mkdir)(FsContext *, V9fsPath *, const char *, FsCred *);
-    int (*fstat)(FsContext *, V9fsFidOpenState *, struct stat *);
+    int (*fstat)(FsContext *, int, V9fsFidOpenState *, struct stat *);
     int (*rename)(FsContext *, const char *, const char *);
     int (*truncate)(FsContext *, V9fsPath *, off_t);
-    int (*fsync)(FsContext *, V9fsFidOpenState *, int);
+    int (*fsync)(FsContext *, int, V9fsFidOpenState *, int);
     int (*statfs)(FsContext *s, V9fsPath *path, struct statfs *stbuf);
     ssize_t (*lgetxattr)(FsContext *, V9fsPath *,
                          const char *, void *, size_t);
diff --git a/hw/9pfs/cofile.c b/hw/9pfs/cofile.c
index 586b038..b15838c 100644
--- a/hw/9pfs/cofile.c
+++ b/hw/9pfs/cofile.c
@@ -71,7 +71,7 @@ int v9fs_co_fstat(V9fsPDU *pdu, V9fsFidState *fidp, struct stat *stbuf)
     }
     v9fs_co_run_in_worker(
         {
-            err = s->ops->fstat(&s->ctx, &fidp->fs, stbuf);
+            err = s->ops->fstat(&s->ctx, fidp->fid_type, &fidp->fs, stbuf);
             if (err < 0) {
                 err = -errno;
             }
@@ -192,7 +192,7 @@ int v9fs_co_fsync(V9fsPDU *pdu, V9fsFidState *fidp, int datasync)
     }
     v9fs_co_run_in_worker(
         {
-            err = s->ops->fsync(&s->ctx, &fidp->fs, datasync);
+            err = s->ops->fsync(&s->ctx, fidp->fid_type, &fidp->fs, datasync);
             if (err < 0) {
                 err = -errno;
             }
diff --git a/hw/9pfs/virtio-9p-handle.c b/hw/9pfs/virtio-9p-handle.c
index a62f690..f97d898 100644
--- a/hw/9pfs/virtio-9p-handle.c
+++ b/hw/9pfs/virtio-9p-handle.c
@@ -255,10 +255,17 @@ static int handle_mkdir(FsContext *fs_ctx, V9fsPath *dir_path,
     return ret;
 }
 
-static int handle_fstat(FsContext *fs_ctx, V9fsFidOpenState *fs,
-                        struct stat *stbuf)
+static int handle_fstat(FsContext *fs_ctx, int fid_type,
+                        V9fsFidOpenState *fs, struct stat *stbuf)
 {
-    return fstat(fs->fd, stbuf);
+    int fd;
+
+    if (fid_type == P9_FID_DIR) {
+        fd = dirfd(fs->dir);
+    } else {
+        fd = fs->fd;
+    }
+    return fstat(fd, stbuf);
 }
 
 static int handle_open2(FsContext *fs_ctx, V9fsPath *dir_path, const char *name,
@@ -395,12 +402,21 @@ static int handle_remove(FsContext *ctx, const char *path)
     return -1;
 }
 
-static int handle_fsync(FsContext *ctx, V9fsFidOpenState *fs, int datasync)
+static int handle_fsync(FsContext *ctx, int fid_type,
+                        V9fsFidOpenState *fs, int datasync)
 {
+    int fd;
+
+    if (fid_type == P9_FID_DIR) {
+        fd = dirfd(fs->dir);
+    } else {
+        fd = fs->fd;
+    }
+
     if (datasync) {
-        return qemu_fdatasync(fs->fd);
+        return qemu_fdatasync(fd);
     } else {
-        return fsync(fs->fd);
+        return fsync(fd);
     }
 }
 
diff --git a/hw/9pfs/virtio-9p-local.c b/hw/9pfs/virtio-9p-local.c
index 99ef0cd..371a94d 100644
--- a/hw/9pfs/virtio-9p-local.c
+++ b/hw/9pfs/virtio-9p-local.c
@@ -366,11 +366,18 @@ out:
     return err;
 }
 
-static int local_fstat(FsContext *fs_ctx,
+static int local_fstat(FsContext *fs_ctx, int fid_type,
                        V9fsFidOpenState *fs, struct stat *stbuf)
 {
-    int err;
-    err = fstat(fs->fd, stbuf);
+    int err, fd;
+
+    if (fid_type == P9_FID_DIR) {
+        fd = dirfd(fs->dir);
+    } else {
+        fd = fs->fd;
+    }
+
+    err = fstat(fd, stbuf);
     if (err) {
         return err;
     }
@@ -381,19 +388,19 @@ static int local_fstat(FsContext *fs_ctx,
         mode_t tmp_mode;
         dev_t tmp_dev;
 
-        if (fgetxattr(fs->fd, "user.virtfs.uid",
+        if (fgetxattr(fd, "user.virtfs.uid",
                       &tmp_uid, sizeof(uid_t)) > 0) {
             stbuf->st_uid = tmp_uid;
         }
-        if (fgetxattr(fs->fd, "user.virtfs.gid",
+        if (fgetxattr(fd, "user.virtfs.gid",
                       &tmp_gid, sizeof(gid_t)) > 0) {
             stbuf->st_gid = tmp_gid;
         }
-        if (fgetxattr(fs->fd, "user.virtfs.mode",
+        if (fgetxattr(fd, "user.virtfs.mode",
                       &tmp_mode, sizeof(mode_t)) > 0) {
             stbuf->st_mode = tmp_mode;
         }
-        if (fgetxattr(fs->fd, "user.virtfs.rdev",
+        if (fgetxattr(fd, "user.virtfs.rdev",
                       &tmp_dev, sizeof(dev_t)) > 0) {
                 stbuf->st_rdev = tmp_dev;
         }
@@ -592,12 +599,21 @@ static int local_remove(FsContext *ctx, const char *path)
     return remove(rpath(ctx, path, buffer));
 }
 
-static int local_fsync(FsContext *ctx, V9fsFidOpenState *fs, int datasync)
+static int local_fsync(FsContext *ctx, int fid_type,
+                       V9fsFidOpenState *fs, int datasync)
 {
+    int fd;
+
+    if (fid_type == P9_FID_DIR) {
+        fd = dirfd(fs->dir);
+    } else {
+        fd = fs->fd;
+    }
+
     if (datasync) {
-        return qemu_fdatasync(fs->fd);
+        return qemu_fdatasync(fd);
     } else {
-        return fsync(fs->fd);
+        return fsync(fd);
     }
 }
 
diff --git a/hw/9pfs/virtio-9p-synth.c b/hw/9pfs/virtio-9p-synth.c
index f573616..92e0b09 100644
--- a/hw/9pfs/virtio-9p-synth.c
+++ b/hw/9pfs/virtio-9p-synth.c
@@ -166,7 +166,7 @@ static int v9fs_synth_lstat(FsContext *fs_ctx,
     return 0;
 }
 
-static int v9fs_synth_fstat(FsContext *fs_ctx,
+static int v9fs_synth_fstat(FsContext *fs_ctx, int fid_type,
                             V9fsFidOpenState *fs, struct stat *stbuf)
 {
     V9fsSynthOpenState *synth_open = fs->private;
@@ -414,7 +414,8 @@ static int v9fs_synth_remove(FsContext *ctx, const char *path)
     return -1;
 }
 
-static int v9fs_synth_fsync(FsContext *ctx, V9fsFidOpenState *fs, int datasync)
+static int v9fs_synth_fsync(FsContext *ctx, int fid_type,
+                            V9fsFidOpenState *fs, int datasync)
 {
     errno = ENOSYS;
     return 0;
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2011-12-17 13:31 Aneesh Kumar K.V
  0 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-17 13:31 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers, qemu-stable


Hi Anthony,

This include a signed pull request. I guess you would require a recent
git to use the gpg info.

The following changes since commit 774d5c5b1604b8443a8e42048b370b6c95dbfc40:

  cris: Handle conditional stores on CRISv10 (2011-12-12 11:38:31 +0100)

are available in the git repository at:

  git://repo.or.cz/qemu/v9fs.git tag for-anthony

for you to fetch changes up to db6e84e6cbe728ea5dcecc62d40e4835ef2b1a4b:

  hw/9pfs: Use the correct signed type for different variables (2011-12-13 18:59:17 +0530)

----------------------------------------------------------------
Bug fix series. This should also be merged to 1.0 stable.

----------------------------------------------------------------
Aneesh Kumar K.V (1):
      hw/9pfs: Use the correct signed type for different variables

Stefan Hajnoczi (1):
      hw/9pfs: replace iovec manipulation with QEMUIOVector

 fsdev/file-op-9p.h  |    2 +-
 hw/9pfs/virtio-9p.c |  183 ++++++++++++++++++++-------------------------------
 hw/9pfs/virtio-9p.h |    2 +-
 trace-events        |    8 +-
 4 files changed, 77 insertions(+), 118 deletions(-)

-aneesh

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2011-12-21  7:57 Aneesh Kumar K.V
  2011-12-27 16:36 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2011-12-21  7:57 UTC (permalink / raw)
  To: qemu-devel; +Cc: aliguori

Hi Anthony,

This is the updated pull request after moving the repo to github. I added two
patches to the series. The signed tag for-anthony is updated with updated info

The following changes since commit 3799ce4ab64f578eb818689a276e4f0c73d01fb5:

  sd: Remember to reset .expecting_acmd on reset. (2011-12-21 05:04:21 +0100)

are available in the git repository at:

  git://github.com/kvaneesh/QEMU.git for-upstream

for you to fetch changes up to 058a96ed506d77714bcce3d69b351e364078c080:

  scripts/analyse-9p-simpletrace.py:	Add symbolic names for 9p operations. (2011-12-21 12:37:23 +0530)

----------------------------------------------------------------
(from the branch description for for-upstream local branch)

branch for landing changes for upstream merge

----------------------------------------------------------------
Aneesh Kumar K.V (2):
      hw/9pfs: Use the correct signed type for different variables
      hw/9pfs: iattr_valid flags are kernel internal flags map them to 9p values.

Harsh Prateek Bora (1):
      scripts/analyse-9p-simpletrace.py:	Add symbolic names for 9p operations.

Stefan Hajnoczi (1):
      hw/9pfs: replace iovec manipulation with QEMUIOVector

 fsdev/file-op-9p.h                |    2 +-
 hw/9pfs/virtio-9p.c               |  230 +++++++++++++++----------------------
 hw/9pfs/virtio-9p.h               |    2 +-
 scripts/analyse-9p-simpletrace.py |   75 ++++++++++++-
 trace-events                      |    8 +-
 5 files changed, 174 insertions(+), 143 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2011-12-21  7:57 Aneesh Kumar K.V
@ 2011-12-27 16:36 ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2011-12-27 16:36 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: qemu-devel

On 12/21/2011 01:57 AM, Aneesh Kumar K.V wrote:
> Hi Anthony,
>
> This is the updated pull request after moving the repo to github. I added two
> patches to the series. The signed tag for-anthony is updated with updated info
>
> The following changes since commit 3799ce4ab64f578eb818689a276e4f0c73d01fb5:
>
>    sd: Remember to reset .expecting_acmd on reset. (2011-12-21 05:04:21 +0100)
>
> are available in the git repository at:
>
>    git://github.com/kvaneesh/QEMU.git for-upstream
>
> for you to fetch changes up to 058a96ed506d77714bcce3d69b351e364078c080:
>
>    scripts/analyse-9p-simpletrace.py:	Add symbolic names for 9p operations. (2011-12-21 12:37:23 +0530)

Pulled.  Thanks.

Regards,

Anthony Liguori

>
> ----------------------------------------------------------------
> (from the branch description for for-upstream local branch)
>
> branch for landing changes for upstream merge
>
> ----------------------------------------------------------------
> Aneesh Kumar K.V (2):
>        hw/9pfs: Use the correct signed type for different variables
>        hw/9pfs: iattr_valid flags are kernel internal flags map them to 9p values.
>
> Harsh Prateek Bora (1):
>        scripts/analyse-9p-simpletrace.py:	Add symbolic names for 9p operations.
>
> Stefan Hajnoczi (1):
>        hw/9pfs: replace iovec manipulation with QEMUIOVector
>
>   fsdev/file-op-9p.h                |    2 +-
>   hw/9pfs/virtio-9p.c               |  230 +++++++++++++++----------------------
>   hw/9pfs/virtio-9p.h               |    2 +-
>   scripts/analyse-9p-simpletrace.py |   75 ++++++++++++-
>   trace-events                      |    8 +-
>   5 files changed, 174 insertions(+), 143 deletions(-)
>
>
>
>
>

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2012-01-23 13:02 Aneesh Kumar K.V
  2012-01-23 17:05 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2012-01-23 13:02 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers



The following changes since commit 8c4ec5c0269bda18bb777a64b2008088d1c632dc:

  pxa2xx_keypad: fix unbalanced parenthesis. (2012-01-17 02:14:42 +0100)

are available in the git repository at:

  git://github.com/kvaneesh/QEMU.git for-upstream

for you to fetch changes up to 0700a73cfe166100cb59e28aad2c1fc5e4e952cb:

  hw/9pfs: Update MAINTAINERS file (2012-01-23 12:26:54 +0530)

----------------------------------------------------------------
(from the branch description for for-upstream local branch)

branch for landing changes for upstream merge

----------------------------------------------------------------
Aneesh Kumar K.V (3):
      hw/9pfs: Add new security model mapped-file.
      hw/9pfs: Fix crash when mounting with synthfs
      hw/9pfs: Update MAINTAINERS file

M. Mohan Kumar (2):
      hw/9pfs: Preserve S_ISGID
      fsdev: Fix parameter parsing for proxy helper

 MAINTAINERS                 |    6 +-
 fsdev/file-op-9p.h          |   12 +-
 fsdev/virtfs-proxy-helper.c |   10 +-
 hw/9pfs/cofile.c            |   14 ++
 hw/9pfs/virtio-9p-device.c  |    9 -
 hw/9pfs/virtio-9p-handle.c  |    4 +-
 hw/9pfs/virtio-9p-local.c   |  348 ++++++++++++++++++++++++++++++++++++++++++-
 hw/9pfs/virtio-9p.c         |    2 +-
 qemu-options.hx             |   18 ++-
 9 files changed, 388 insertions(+), 35 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2012-01-23 13:02 Aneesh Kumar K.V
@ 2012-01-23 17:05 ` Anthony Liguori
  2012-01-23 18:25   ` Aneesh Kumar K.V
  0 siblings, 1 reply; 46+ messages in thread
From: Anthony Liguori @ 2012-01-23 17:05 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers

On 01/23/2012 07:02 AM, Aneesh Kumar K.V wrote:
>
>
> The following changes since commit 8c4ec5c0269bda18bb777a64b2008088d1c632dc:
>
>    pxa2xx_keypad: fix unbalanced parenthesis. (2012-01-17 02:14:42 +0100)
>
> are available in the git repository at:
>
>    git://github.com/kvaneesh/QEMU.git for-upstream
>
> for you to fetch changes up to 0700a73cfe166100cb59e28aad2c1fc5e4e952cb:
>
>    hw/9pfs: Update MAINTAINERS file (2012-01-23 12:26:54 +0530)

   CC    libhw64/9pfs/virtio-9p-local.o
cc1: warnings being treated as errors
/home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c: In function 
‘local_set_mapped_file_attr’:
/home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:9: error: ‘uid’ may be used 
uninitialized in this function
/home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:14: error: ‘gid’ may be 
used uninitialized in this function
/home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:19: error: ‘mode’ may be 
used uninitialized in this function
/home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:25: error: ‘rdev’ may be 
used uninitialized in this function
make[1]: *** [9pfs/virtio-9p-local.o] Error 1
make: *** [subdir-libhw64] Error 2

I see a lot of build breakages come into through this tree.  I understand that 
GCC can be fickle with -Werror but there's an easy way to solve this.

Please get your tree added to buildbot and make sure there's a successful 
buildbot run before you do a pull request.

Alternatively, setup multiple VMs to build test yourself.  But please do 
something to check the build a bit more rigorously before sending future PULL 
requests.

Regards,

Anthony Liguori

>
> ----------------------------------------------------------------
> (from the branch description for for-upstream local branch)
>
> branch for landing changes for upstream merge
>
> ----------------------------------------------------------------
> Aneesh Kumar K.V (3):
>        hw/9pfs: Add new security model mapped-file.
>        hw/9pfs: Fix crash when mounting with synthfs
>        hw/9pfs: Update MAINTAINERS file
>
> M. Mohan Kumar (2):
>        hw/9pfs: Preserve S_ISGID
>        fsdev: Fix parameter parsing for proxy helper
>
>   MAINTAINERS                 |    6 +-
>   fsdev/file-op-9p.h          |   12 +-
>   fsdev/virtfs-proxy-helper.c |   10 +-
>   hw/9pfs/cofile.c            |   14 ++
>   hw/9pfs/virtio-9p-device.c  |    9 -
>   hw/9pfs/virtio-9p-handle.c  |    4 +-
>   hw/9pfs/virtio-9p-local.c   |  348 ++++++++++++++++++++++++++++++++++++++++++-
>   hw/9pfs/virtio-9p.c         |    2 +-
>   qemu-options.hx             |   18 ++-
>   9 files changed, 388 insertions(+), 35 deletions(-)
>
>
>

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2012-01-23 17:05 ` Anthony Liguori
@ 2012-01-23 18:25   ` Aneesh Kumar K.V
  0 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2012-01-23 18:25 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: QEMU Developers

On Mon, 23 Jan 2012 11:05:25 -0600, Anthony Liguori <aliguori@us.ibm.com> wrote:
> On 01/23/2012 07:02 AM, Aneesh Kumar K.V wrote:
> >
> >
> > The following changes since commit 8c4ec5c0269bda18bb777a64b2008088d1c632dc:
> >
> >    pxa2xx_keypad: fix unbalanced parenthesis. (2012-01-17 02:14:42 +0100)
> >
> > are available in the git repository at:
> >
> >    git://github.com/kvaneesh/QEMU.git for-upstream
> >
> > for you to fetch changes up to 0700a73cfe166100cb59e28aad2c1fc5e4e952cb:
> >
> >    hw/9pfs: Update MAINTAINERS file (2012-01-23 12:26:54 +0530)
> 
>    CC    libhw64/9pfs/virtio-9p-local.o
> cc1: warnings being treated as errors
> /home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c: In function 
> ‘local_set_mapped_file_attr’:
> /home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:9: error: ‘uid’ may be used 
> uninitialized in this function
> /home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:14: error: ‘gid’ may be 
> used uninitialized in this function
> /home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:19: error: ‘mode’ may be 
> used uninitialized in this function
> /home/anthony/git/qemu/hw/9pfs/virtio-9p-local.c:153:25: error: ‘rdev’ may be 
> used uninitialized in this function
> make[1]: *** [9pfs/virtio-9p-local.o] Error 1
> make: *** [subdir-libhw64] Error 2
> 
> I see a lot of build breakages come into through this tree.  I understand that 
> GCC can be fickle with -Werror but there's an easy way to solve this.
> 
> Please get your tree added to buildbot and make sure there's a successful 
> buildbot run before you do a pull request.

I will do this

> 
> Alternatively, setup multiple VMs to build test yourself.  But please do 
> something to check the build a bit more rigorously before sending future PULL 
> requests.
> 

I actually do build test on ubuntu 11.10, fedora 15, rhel5.7 before pull
request. That usually catch most of the errors like above. 

-aneesh

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2012-01-30 16:14 Aneesh Kumar K.V
  2012-02-07 12:36 ` Aneesh Kumar K.V
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2012-01-30 16:14 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers


Hi Anthony,

I now have a successful build at build bot. So hopefully build breakage
is gone. I also added "remove O_NOATIME" patch which Mohan acked.

-anees

The following changes since commit 8c4ec5c0269bda18bb777a64b2008088d1c632dc:

  pxa2xx_keypad: fix unbalanced parenthesis. (2012-01-17 02:14:42 +0100)

are available in the git repository at:

  git://github.com/kvaneesh/QEMU.git for-upstream

for you to fetch changes up to eed968607d656a218712df47a5e0432c21fd6994:

  hw/9pfs: Remove O_NOATIME flag from 9pfs open() calls in readonly mode (2012-01-30 10:54:17 +0530)

----------------------------------------------------------------
(from the branch description for for-upstream local branch)

branch for landing changes for upstream merge

----------------------------------------------------------------
Aneesh Kumar K.V (3):
      hw/9pfs: Add new security model mapped-file.
      hw/9pfs: Fix crash when mounting with synthfs
      hw/9pfs: Update MAINTAINERS file

Daniel P. Berrange (1):
      hw/9pfs: Remove O_NOATIME flag from 9pfs open() calls in readonly mode

M. Mohan Kumar (2):
      hw/9pfs: Preserve S_ISGID
      fsdev: Fix parameter parsing for proxy helper

 MAINTAINERS                 |    6 +-
 fsdev/file-op-9p.h          |   12 +-
 fsdev/virtfs-proxy-helper.c |   10 +-
 hw/9pfs/cofile.c            |   14 ++
 hw/9pfs/virtio-9p-device.c  |    9 -
 hw/9pfs/virtio-9p-handle.c  |    4 +-
 hw/9pfs/virtio-9p-local.c   |  357 ++++++++++++++++++++++++++++++++++++++++++-
 hw/9pfs/virtio-9p.c         |    3 +-
 qemu-options.hx             |   18 ++-
 9 files changed, 397 insertions(+), 36 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2012-01-30 16:14 Aneesh Kumar K.V
@ 2012-02-07 12:36 ` Aneesh Kumar K.V
  0 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2012-02-07 12:36 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers


Hi Anthony,

Any update on this pull request ? You have merged the MAINTAINERS file
update separately. But that conflict should be easy to fix.

-anesh

On Mon, 30 Jan 2012 21:44:33 +0530, "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> wrote:
> 
> Hi Anthony,
> 
> I now have a successful build at build bot. So hopefully build breakage
> is gone. I also added "remove O_NOATIME" patch which Mohan acked.
> 
> -anees
> 
> The following changes since commit 8c4ec5c0269bda18bb777a64b2008088d1c632dc:
> 
>   pxa2xx_keypad: fix unbalanced parenthesis. (2012-01-17 02:14:42 +0100)
> 
> are available in the git repository at:
> 
>   git://github.com/kvaneesh/QEMU.git for-upstream
> 
> for you to fetch changes up to eed968607d656a218712df47a5e0432c21fd6994:
> 
>   hw/9pfs: Remove O_NOATIME flag from 9pfs open() calls in readonly mode (2012-01-30 10:54:17 +0530)
> 
> ----------------------------------------------------------------
> (from the branch description for for-upstream local branch)
> 
> branch for landing changes for upstream merge
> 
> ----------------------------------------------------------------
> Aneesh Kumar K.V (3):
>       hw/9pfs: Add new security model mapped-file.
>       hw/9pfs: Fix crash when mounting with synthfs
>       hw/9pfs: Update MAINTAINERS file
> 
> Daniel P. Berrange (1):
>       hw/9pfs: Remove O_NOATIME flag from 9pfs open() calls in readonly mode
> 
> M. Mohan Kumar (2):
>       hw/9pfs: Preserve S_ISGID
>       fsdev: Fix parameter parsing for proxy helper
> 
>  MAINTAINERS                 |    6 +-
>  fsdev/file-op-9p.h          |   12 +-
>  fsdev/virtfs-proxy-helper.c |   10 +-
>  hw/9pfs/cofile.c            |   14 ++
>  hw/9pfs/virtio-9p-device.c  |    9 -
>  hw/9pfs/virtio-9p-handle.c  |    4 +-
>  hw/9pfs/virtio-9p-local.c   |  357 ++++++++++++++++++++++++++++++++++++++++++-
>  hw/9pfs/virtio-9p.c         |    3 +-
>  qemu-options.hx             |   18 ++-
>  9 files changed, 397 insertions(+), 36 deletions(-)
> 

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2012-02-26 17:44 Aneesh Kumar K.V
  2012-02-28 15:33 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2012-02-26 17:44 UTC (permalink / raw)
  To: qemu-devel; +Cc: aliguori


Hi Anthony,

Please pull the below VirtFS  update

-aneesh

The following changes since commit 235fe3bfd46b1104575b540d0bc3fdf584030b99:

  qom: add test tools (2012-02-22 12:18:26 -0600)

are available in the git repository at:

  git://github.com/kvaneesh/QEMU.git for-upstream

for you to fetch changes up to 67d6fa53629f1eb3401974d740310c10e03fa1c9:

  hw/9pfs: Endian fixes for virtfs (2012-02-24 14:01:19 +0530)

----------------------------------------------------------------
Benjamin Herrenschmidt (1):
      hw/9pfs: Endian fixes for virtfs

Meador Inge (1):
      ./configure: add option for disabling VirtFS

 Makefile            |    2 ++
 configure           |   25 +++++++++++++++++++------
 hw/9pfs/virtio-9p.c |    8 +++++---
 3 files changed, 26 insertions(+), 9 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2012-02-26 17:44 Aneesh Kumar K.V
@ 2012-02-28 15:33 ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2012-02-28 15:33 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: qemu-devel

On 02/26/2012 11:44 AM, Aneesh Kumar K.V wrote:
> Hi Anthony,
>
> Please pull the below VirtFS  update
>
> -aneesh
>
> The following changes since commit 235fe3bfd46b1104575b540d0bc3fdf584030b99:
>
>    qom: add test tools (2012-02-22 12:18:26 -0600)
>
> are available in the git repository at:
>
>    git://github.com/kvaneesh/QEMU.git for-upstream
>
> for you to fetch changes up to 67d6fa53629f1eb3401974d740310c10e03fa1c9:
>
>    hw/9pfs: Endian fixes for virtfs (2012-02-24 14:01:19 +0530)

Pulled.  Thanks.

Regards,

Anthony Liguori

>
> ----------------------------------------------------------------
> Benjamin Herrenschmidt (1):
>        hw/9pfs: Endian fixes for virtfs
>
> Meador Inge (1):
>        ./configure: add option for disabling VirtFS
>
>   Makefile            |    2 ++
>   configure           |   25 +++++++++++++++++++------
>   hw/9pfs/virtio-9p.c |    8 +++++---
>   3 files changed, 26 insertions(+), 9 deletions(-)
>
>
>

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2012-07-31 17:27 Aneesh Kumar K.V
  2012-08-03 20:45 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2012-07-31 17:27 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: QEMU Developers


Hi Anthony,

I have merged the configure fix which is sent as a part of 

http://thread.gmane.org/gmane.comp.emulators.qemu/160620/focus=160634

The following changes since commit 5e3bc7144edd6e4fa2824944e5eb16c28197dd5a:

  Merge remote-tracking branch 'mst/tags/for_anthony' into staging (2012-07-30 10:00:48 -0500)

are available in the git repository at:


  git://github.com/kvaneesh/QEMU.git for-upstream

for you to fetch changes up to 4cdc0789ec17ce1ce48506cae62035310e932a2e:

  hw/9pfs: Fix assert when disabling migration (2012-07-31 22:01:40 +0530)

----------------------------------------------------------------
Aneesh Kumar K.V (1):
      hw/9pfs: Fix assert when disabling migration

Stefan Weil (1):
      configure: Fix build with capabilities

 configure           |    2 +-
 hw/9pfs/virtio-9p.c |   15 ++++++++++-----
 2 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/configure b/configure
index c65b5f6..309aeac 100755
--- a/configure
+++ b/configure
@@ -2084,7 +2084,7 @@ if test "$cap" != "no" ; then
   cat > $TMPC <<EOF
 #include <stdio.h>
 #include <sys/capability.h>
-int main(void) { cap_t caps; caps = cap_init(); }
+int main(void) { cap_t caps; caps = cap_init(); return caps != NULL; }
 EOF
   if compile_prog "" "-lcap" ; then
     cap=yes
diff --git a/hw/9pfs/virtio-9p.c b/hw/9pfs/virtio-9p.c
index f4a7026..4b52540 100644
--- a/hw/9pfs/virtio-9p.c
+++ b/hw/9pfs/virtio-9p.c
@@ -983,11 +983,16 @@ static void v9fs_attach(void *opaque)
     err += offset;
     trace_v9fs_attach_return(pdu->tag, pdu->id,
                              qid.type, qid.version, qid.path);
-    s->root_fid = fid;
-    /* disable migration */
-    error_set(&s->migration_blocker, QERR_VIRTFS_FEATURE_BLOCKS_MIGRATION,
-              s->ctx.fs_root ? s->ctx.fs_root : "NULL", s->tag);
-    migrate_add_blocker(s->migration_blocker);
+    /*
+     * disable migration if we haven't done already.
+     * attach could get called multiple times for the same export.
+     */
+    if (!s->migration_blocker) {
+        s->root_fid = fid;
+        error_set(&s->migration_blocker, QERR_VIRTFS_FEATURE_BLOCKS_MIGRATION,
+                  s->ctx.fs_root ? s->ctx.fs_root : "NULL", s->tag);
+        migrate_add_blocker(s->migration_blocker);
+    }
 out:
     put_fid(pdu, fidp);
 out_nofid:

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2012-07-31 17:27 Aneesh Kumar K.V
@ 2012-08-03 20:45 ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2012-08-03 20:45 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers

"Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> writes:

> Hi Anthony,
>
> I have merged the configure fix which is sent as a part of 
>
> http://thread.gmane.org/gmane.comp.emulators.qemu/160620/focus=160634
>
> The following changes since commit 5e3bc7144edd6e4fa2824944e5eb16c28197dd5a:
>
>   Merge remote-tracking branch 'mst/tags/for_anthony' into staging (2012-07-30 10:00:48 -0500)
>
> are available in the git repository at:
>
>
>   git://github.com/kvaneesh/QEMU.git for-upstream
>
> for you to fetch changes up to 4cdc0789ec17ce1ce48506cae62035310e932a2e:
>
>   hw/9pfs: Fix assert when disabling migration (2012-07-31 22:01:40 +0530)

Pulled. Thanks.

Regards,

Anthony Liguori

>
> ----------------------------------------------------------------
> Aneesh Kumar K.V (1):
>       hw/9pfs: Fix assert when disabling migration
>
> Stefan Weil (1):
>       configure: Fix build with capabilities
>
>  configure           |    2 +-
>  hw/9pfs/virtio-9p.c |   15 ++++++++++-----
>  2 files changed, 11 insertions(+), 6 deletions(-)
>
> diff --git a/configure b/configure
> index c65b5f6..309aeac 100755
> --- a/configure
> +++ b/configure
> @@ -2084,7 +2084,7 @@ if test "$cap" != "no" ; then
>    cat > $TMPC <<EOF
>  #include <stdio.h>
>  #include <sys/capability.h>
> -int main(void) { cap_t caps; caps = cap_init(); }
> +int main(void) { cap_t caps; caps = cap_init(); return caps != NULL; }
>  EOF
>    if compile_prog "" "-lcap" ; then
>      cap=yes
> diff --git a/hw/9pfs/virtio-9p.c b/hw/9pfs/virtio-9p.c
> index f4a7026..4b52540 100644
> --- a/hw/9pfs/virtio-9p.c
> +++ b/hw/9pfs/virtio-9p.c
> @@ -983,11 +983,16 @@ static void v9fs_attach(void *opaque)
>      err += offset;
>      trace_v9fs_attach_return(pdu->tag, pdu->id,
>                               qid.type, qid.version, qid.path);
> -    s->root_fid = fid;
> -    /* disable migration */
> -    error_set(&s->migration_blocker, QERR_VIRTFS_FEATURE_BLOCKS_MIGRATION,
> -              s->ctx.fs_root ? s->ctx.fs_root : "NULL", s->tag);
> -    migrate_add_blocker(s->migration_blocker);
> +    /*
> +     * disable migration if we haven't done already.
> +     * attach could get called multiple times for the same export.
> +     */
> +    if (!s->migration_blocker) {
> +        s->root_fid = fid;
> +        error_set(&s->migration_blocker, QERR_VIRTFS_FEATURE_BLOCKS_MIGRATION,
> +                  s->ctx.fs_root ? s->ctx.fs_root : "NULL", s->tag);
> +        migrate_add_blocker(s->migration_blocker);
> +    }
>  out:
>      put_fid(pdu, fidp);
>  out_nofid:

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2012-12-05 16:37 Aneesh Kumar K.V
  2012-12-10 16:58 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2012-12-05 16:37 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: QEMU Developers


The following changes since commit 16c6c80ac3a772b42a87b77dfdf0fdac7c607b0e:

  Open up 1.4 development branch (2012-12-03 14:08:40 -0600)

are available in the git repository at:

  git://github.com/kvaneesh/qemu.git for-upstream

for you to fetch changes up to 9fd2ecdc8cb2dc1a8a7c57b6c9c60bc9947b6a73:

  virtfs-proxy-helper: use setresuid and setresgid (2012-12-05 21:55:54 +0530)

----------------------------------------------------------------
Paolo Bonzini (1):
      virtfs-proxy-helper: use setresuid and setresgid

 fsdev/virtfs-proxy-helper.c |   93 +++++++++++++++++++++++++++++--------------
 1 file changed, 64 insertions(+), 29 deletions(-)

diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
index f9a8270..df2a939 100644
--- a/fsdev/virtfs-proxy-helper.c
+++ b/fsdev/virtfs-proxy-helper.c
@@ -272,31 +272,76 @@ static int send_status(int sockfd, struct iovec *iovec, int status)
 /*
  * from man 7 capabilities, section
  * Effect of User ID Changes on Capabilities:
- * 4. If the file system user ID is changed from 0 to nonzero (see setfsuid(2))
- * then the following capabilities are cleared from the effective set:
- * CAP_CHOWN, CAP_DAC_OVERRIDE, CAP_DAC_READ_SEARCH,  CAP_FOWNER, CAP_FSETID,
- * CAP_LINUX_IMMUTABLE  (since  Linux 2.2.30), CAP_MAC_OVERRIDE, and CAP_MKNOD
- * (since Linux 2.2.30). If the file system UID is changed from nonzero to 0,
- * then any of these capabilities that are enabled in the permitted set
- * are enabled in the effective set.
+ * If the effective user ID is changed from nonzero to 0, then the permitted
+ * set is copied to the effective set.  If the effective user ID is changed
+ * from 0 to nonzero, then all capabilities are are cleared from the effective
+ * set.
+ *
+ * The setfsuid/setfsgid man pages warn that changing the effective user ID may
+ * expose the program to unwanted signals, but this is not true anymore: for an
+ * unprivileged (without CAP_KILL) program to send a signal, the real or
+ * effective user ID of the sending process must equal the real or saved user
+ * ID of the target process.  Even when dropping privileges, it is enough to
+ * keep the saved UID to a "privileged" value and virtfs-proxy-helper won't
+ * be exposed to signals.  So just use setresuid/setresgid.
  */
-static int setfsugid(int uid, int gid)
+static int setugid(int uid, int gid, int *suid, int *sgid)
 {
+    int retval;
+
     /*
-     * We still need DAC_OVERRIDE because  we don't change
+     * We still need DAC_OVERRIDE because we don't change
      * supplementary group ids, and hence may be subjected DAC rules
      */
     cap_value_t cap_list[] = {
         CAP_DAC_OVERRIDE,
     };
 
-    setfsgid(gid);
-    setfsuid(uid);
+    *suid = geteuid();
+    *sgid = getegid();
+
+    if (setresgid(-1, gid, *sgid) == -1) {
+        retval = -errno;
+        goto err_out;
+    }
+
+    if (setresuid(-1, uid, *suid) == -1) {
+        retval = -errno;
+        goto err_sgid;
+    }
 
     if (uid != 0 || gid != 0) {
-        return do_cap_set(cap_list, ARRAY_SIZE(cap_list), 0);
+        if (do_cap_set(cap_list, ARRAY_SIZE(cap_list), 0) < 0) {
+            retval = -errno;
+            goto err_suid;
+        }
     }
     return 0;
+
+err_suid:
+    if (setresuid(-1, *suid, *suid) == -1) {
+        abort();
+    }
+err_sgid:
+    if (setresgid(-1, *sgid, *sgid) == -1) {
+        abort();
+    }
+err_out:
+    return retval;
+}
+
+/*
+ * This is used to reset the ugid back with the saved values
+ * There is nothing much we can do checking error values here.
+ */
+static void resetugid(int suid, int sgid)
+{
+    if (setresgid(-1, sgid, sgid) == -1) {
+        abort();
+    }
+    if (setresuid(-1, suid, suid) == -1) {
+        abort();
+    }
 }
 
 /*
@@ -578,18 +623,15 @@ static int do_create_others(int type, struct iovec *iovec)
 
     v9fs_string_init(&path);
     v9fs_string_init(&oldpath);
-    cur_uid = geteuid();
-    cur_gid = getegid();
 
     retval = proxy_unmarshal(iovec, offset, "dd", &uid, &gid);
     if (retval < 0) {
         return retval;
     }
     offset += retval;
-    retval = setfsugid(uid, gid);
+    retval = setugid(uid, gid, &cur_uid, &cur_gid);
     if (retval < 0) {
-        retval = -errno;
-        goto err_out;
+        goto unmarshal_err_out;
     }
     switch (type) {
     case T_MKNOD:
@@ -619,9 +661,10 @@ static int do_create_others(int type, struct iovec *iovec)
     }
 
 err_out:
+    resetugid(cur_uid, cur_gid);
+unmarshal_err_out:
     v9fs_string_free(&path);
     v9fs_string_free(&oldpath);
-    setfsugid(cur_uid, cur_gid);
     return retval;
 }
 
@@ -641,24 +684,16 @@ static int do_create(struct iovec *iovec)
     if (ret < 0) {
         goto unmarshal_err_out;
     }
-    cur_uid = geteuid();
-    cur_gid = getegid();
-    ret = setfsugid(uid, gid);
+    ret = setugid(uid, gid, &cur_uid, &cur_gid);
     if (ret < 0) {
-        /*
-         * On failure reset back to the
-         * old uid/gid
-         */
-        ret = -errno;
-        goto err_out;
+        goto unmarshal_err_out;
     }
     ret = open(path.data, flags, mode);
     if (ret < 0) {
         ret = -errno;
     }
 
-err_out:
-    setfsugid(cur_uid, cur_gid);
+    resetugid(cur_uid, cur_gid);
 unmarshal_err_out:
     v9fs_string_free(&path);
     return ret;

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2012-12-05 16:37 Aneesh Kumar K.V
@ 2012-12-10 16:58 ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2012-12-10 16:58 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers

"Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> writes:

> The following changes since commit 16c6c80ac3a772b42a87b77dfdf0fdac7c607b0e:
>
>   Open up 1.4 development branch (2012-12-03 14:08:40 -0600)
>
> are available in the git repository at:
>
>   git://github.com/kvaneesh/qemu.git for-upstream
>
> for you to fetch changes up to 9fd2ecdc8cb2dc1a8a7c57b6c9c60bc9947b6a73:
>
>   virtfs-proxy-helper: use setresuid and setresgid (2012-12-05 21:55:54 +0530)
>

Pulled. Thanks.

Regards,

Anthony Liguori

> ----------------------------------------------------------------
> Paolo Bonzini (1):
>       virtfs-proxy-helper: use setresuid and setresgid
>
>  fsdev/virtfs-proxy-helper.c |   93 +++++++++++++++++++++++++++++--------------
>  1 file changed, 64 insertions(+), 29 deletions(-)
>
> diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
> index f9a8270..df2a939 100644
> --- a/fsdev/virtfs-proxy-helper.c
> +++ b/fsdev/virtfs-proxy-helper.c
> @@ -272,31 +272,76 @@ static int send_status(int sockfd, struct iovec *iovec, int status)
>  /*
>   * from man 7 capabilities, section
>   * Effect of User ID Changes on Capabilities:
> - * 4. If the file system user ID is changed from 0 to nonzero (see setfsuid(2))
> - * then the following capabilities are cleared from the effective set:
> - * CAP_CHOWN, CAP_DAC_OVERRIDE, CAP_DAC_READ_SEARCH,  CAP_FOWNER, CAP_FSETID,
> - * CAP_LINUX_IMMUTABLE  (since  Linux 2.2.30), CAP_MAC_OVERRIDE, and CAP_MKNOD
> - * (since Linux 2.2.30). If the file system UID is changed from nonzero to 0,
> - * then any of these capabilities that are enabled in the permitted set
> - * are enabled in the effective set.
> + * If the effective user ID is changed from nonzero to 0, then the permitted
> + * set is copied to the effective set.  If the effective user ID is changed
> + * from 0 to nonzero, then all capabilities are are cleared from the effective
> + * set.
> + *
> + * The setfsuid/setfsgid man pages warn that changing the effective user ID may
> + * expose the program to unwanted signals, but this is not true anymore: for an
> + * unprivileged (without CAP_KILL) program to send a signal, the real or
> + * effective user ID of the sending process must equal the real or saved user
> + * ID of the target process.  Even when dropping privileges, it is enough to
> + * keep the saved UID to a "privileged" value and virtfs-proxy-helper won't
> + * be exposed to signals.  So just use setresuid/setresgid.
>   */
> -static int setfsugid(int uid, int gid)
> +static int setugid(int uid, int gid, int *suid, int *sgid)
>  {
> +    int retval;
> +
>      /*
> -     * We still need DAC_OVERRIDE because  we don't change
> +     * We still need DAC_OVERRIDE because we don't change
>       * supplementary group ids, and hence may be subjected DAC rules
>       */
>      cap_value_t cap_list[] = {
>          CAP_DAC_OVERRIDE,
>      };
>  
> -    setfsgid(gid);
> -    setfsuid(uid);
> +    *suid = geteuid();
> +    *sgid = getegid();
> +
> +    if (setresgid(-1, gid, *sgid) == -1) {
> +        retval = -errno;
> +        goto err_out;
> +    }
> +
> +    if (setresuid(-1, uid, *suid) == -1) {
> +        retval = -errno;
> +        goto err_sgid;
> +    }
>  
>      if (uid != 0 || gid != 0) {
> -        return do_cap_set(cap_list, ARRAY_SIZE(cap_list), 0);
> +        if (do_cap_set(cap_list, ARRAY_SIZE(cap_list), 0) < 0) {
> +            retval = -errno;
> +            goto err_suid;
> +        }
>      }
>      return 0;
> +
> +err_suid:
> +    if (setresuid(-1, *suid, *suid) == -1) {
> +        abort();
> +    }
> +err_sgid:
> +    if (setresgid(-1, *sgid, *sgid) == -1) {
> +        abort();
> +    }
> +err_out:
> +    return retval;
> +}
> +
> +/*
> + * This is used to reset the ugid back with the saved values
> + * There is nothing much we can do checking error values here.
> + */
> +static void resetugid(int suid, int sgid)
> +{
> +    if (setresgid(-1, sgid, sgid) == -1) {
> +        abort();
> +    }
> +    if (setresuid(-1, suid, suid) == -1) {
> +        abort();
> +    }
>  }
>  
>  /*
> @@ -578,18 +623,15 @@ static int do_create_others(int type, struct iovec *iovec)
>  
>      v9fs_string_init(&path);
>      v9fs_string_init(&oldpath);
> -    cur_uid = geteuid();
> -    cur_gid = getegid();
>  
>      retval = proxy_unmarshal(iovec, offset, "dd", &uid, &gid);
>      if (retval < 0) {
>          return retval;
>      }
>      offset += retval;
> -    retval = setfsugid(uid, gid);
> +    retval = setugid(uid, gid, &cur_uid, &cur_gid);
>      if (retval < 0) {
> -        retval = -errno;
> -        goto err_out;
> +        goto unmarshal_err_out;
>      }
>      switch (type) {
>      case T_MKNOD:
> @@ -619,9 +661,10 @@ static int do_create_others(int type, struct iovec *iovec)
>      }
>  
>  err_out:
> +    resetugid(cur_uid, cur_gid);
> +unmarshal_err_out:
>      v9fs_string_free(&path);
>      v9fs_string_free(&oldpath);
> -    setfsugid(cur_uid, cur_gid);
>      return retval;
>  }
>  
> @@ -641,24 +684,16 @@ static int do_create(struct iovec *iovec)
>      if (ret < 0) {
>          goto unmarshal_err_out;
>      }
> -    cur_uid = geteuid();
> -    cur_gid = getegid();
> -    ret = setfsugid(uid, gid);
> +    ret = setugid(uid, gid, &cur_uid, &cur_gid);
>      if (ret < 0) {
> -        /*
> -         * On failure reset back to the
> -         * old uid/gid
> -         */
> -        ret = -errno;
> -        goto err_out;
> +        goto unmarshal_err_out;
>      }
>      ret = open(path.data, flags, mode);
>      if (ret < 0) {
>          ret = -errno;
>      }
>  
> -err_out:
> -    setfsugid(cur_uid, cur_gid);
> +    resetugid(cur_uid, cur_gid);
>  unmarshal_err_out:
>      v9fs_string_free(&path);
>      return ret;

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2013-05-29 11:33 Aneesh Kumar K.V
  2013-05-31 18:48 ` Anthony Liguori
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2013-05-29 11:33 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers


The following changes since commit 371386fb60961e0afc02f03c817dff79633e323e:

  Update version for 1.5.0 release. (2013-05-20 08:20:08 -0500)

are available in the git repository at:

  git://github.com/kvaneesh/qemu.git for-upstream

for you to fetch changes up to db431f6adc881a0758512cd765b3108209013512:

  hw/9pfs: Be robust against paths without FS_IOC_GETVERSION (2013-05-28 15:23:12 +0530)

----------------------------------------------------------------
Aneesh Kumar K.V (3):
      hw/9pfs: Fix segfault with 9p2000.u
      hw/9pfs: use O_NOFOLLOW for mapped readlink operation
      hw/9pfs: Use O_NOFOLLOW when opening files on server

Gabriel de Perthuis (1):
      hw/9pfs: Be robust against paths without FS_IOC_GETVERSION

 hw/9pfs/cofile.c          |  4 ++++
 hw/9pfs/virtio-9p-local.c | 50 +++++++++++++++++++++++++++++++++++++++--------
 hw/9pfs/virtio-9p.c       |  2 +-
 3 files changed, 47 insertions(+), 9 deletions(-)

diff --git a/hw/9pfs/cofile.c b/hw/9pfs/cofile.c
index 2efebf3..194c130 100644
--- a/hw/9pfs/cofile.c
+++ b/hw/9pfs/cofile.c
@@ -38,6 +38,10 @@ int v9fs_co_st_gen(V9fsPDU *pdu, V9fsPath *path, mode_t st_mode,
             });
         v9fs_path_unlock(s);
     }
+    /* The ioctl may not be supported depending on the path */
+    if (err == -ENOTTY) {
+        err = 0;
+    }
     return err;
 }
 
diff --git a/hw/9pfs/virtio-9p-local.c b/hw/9pfs/virtio-9p-local.c
index 6ece6f7..fc93e9e 100644
--- a/hw/9pfs/virtio-9p-local.c
+++ b/hw/9pfs/virtio-9p-local.c
@@ -59,6 +59,33 @@ static const char *local_mapped_attr_path(FsContext *ctx,
     return buffer;
 }
 
+static FILE *local_fopen(const char *path, const char *mode)
+{
+    int fd, o_mode = 0;
+    FILE *fp;
+    int flags = O_NOFOLLOW;
+    /*
+     * only supports two modes
+     */
+    if (mode[0] == 'r') {
+        flags |= O_RDONLY;
+    } else if (mode[0] == 'w') {
+        flags |= O_WRONLY | O_TRUNC | O_CREAT;
+        o_mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH;
+    } else {
+        return NULL;
+    }
+    fd = open(path, flags, o_mode);
+    if (fd == -1) {
+        return NULL;
+    }
+    fp = fdopen(fd, mode);
+    if (!fp) {
+        close(fd);
+    }
+    return fp;
+}
+
 #define ATTR_MAX 100
 static void local_mapped_file_attr(FsContext *ctx, const char *path,
                                    struct stat *stbuf)
@@ -68,7 +95,7 @@ static void local_mapped_file_attr(FsContext *ctx, const char *path,
     char attr_path[PATH_MAX];
 
     local_mapped_attr_path(ctx, path, attr_path);
-    fp = fopen(attr_path, "r");
+    fp = local_fopen(attr_path, "r");
     if (!fp) {
         return;
     }
@@ -152,7 +179,7 @@ static int local_set_mapped_file_attr(FsContext *ctx,
     char attr_path[PATH_MAX];
     int uid = -1, gid = -1, mode = -1, rdev = -1;
 
-    fp = fopen(local_mapped_attr_path(ctx, path, attr_path), "r");
+    fp = local_fopen(local_mapped_attr_path(ctx, path, attr_path), "r");
     if (!fp) {
         goto create_map_file;
     }
@@ -179,7 +206,7 @@ create_map_file:
     }
 
 update_map_file:
-    fp = fopen(attr_path, "w");
+    fp = local_fopen(attr_path, "w");
     if (!fp) {
         ret = -1;
         goto err_out;
@@ -284,7 +311,7 @@ static ssize_t local_readlink(FsContext *fs_ctx, V9fsPath *fs_path,
     if ((fs_ctx->export_flags & V9FS_SM_MAPPED) ||
         (fs_ctx->export_flags & V9FS_SM_MAPPED_FILE)) {
         int fd;
-        fd = open(rpath(fs_ctx, path, buffer), O_RDONLY);
+        fd = open(rpath(fs_ctx, path, buffer), O_RDONLY | O_NOFOLLOW);
         if (fd == -1) {
             return -1;
         }
@@ -316,7 +343,7 @@ static int local_open(FsContext *ctx, V9fsPath *fs_path,
     char buffer[PATH_MAX];
     char *path = fs_path->data;
 
-    fs->fd = open(rpath(ctx, path, buffer), flags);
+    fs->fd = open(rpath(ctx, path, buffer), flags | O_NOFOLLOW);
     return fs->fd;
 }
 
@@ -601,6 +628,11 @@ static int local_open2(FsContext *fs_ctx, V9fsPath *dir_path, const char *name,
     V9fsString fullname;
     char buffer[PATH_MAX];
 
+    /*
+     * Mark all the open to not follow symlinks
+     */
+    flags |= O_NOFOLLOW;
+
     v9fs_string_init(&fullname);
     v9fs_string_sprintf(&fullname, "%s/%s", dir_path->data, name);
     path = fullname.data;
@@ -676,8 +708,9 @@ static int local_symlink(FsContext *fs_ctx, const char *oldpath,
     if (fs_ctx->export_flags & V9FS_SM_MAPPED) {
         int fd;
         ssize_t oldpath_size, write_size;
-        fd = open(rpath(fs_ctx, newpath, buffer), O_CREAT|O_EXCL|O_RDWR,
-                SM_LOCAL_MODE_BITS);
+        fd = open(rpath(fs_ctx, newpath, buffer),
+                  O_CREAT|O_EXCL|O_RDWR|O_NOFOLLOW,
+                  SM_LOCAL_MODE_BITS);
         if (fd == -1) {
             err = fd;
             goto out;
@@ -705,7 +738,8 @@ static int local_symlink(FsContext *fs_ctx, const char *oldpath,
     } else if (fs_ctx->export_flags & V9FS_SM_MAPPED_FILE) {
         int fd;
         ssize_t oldpath_size, write_size;
-        fd = open(rpath(fs_ctx, newpath, buffer), O_CREAT|O_EXCL|O_RDWR,
+        fd = open(rpath(fs_ctx, newpath, buffer),
+                  O_CREAT|O_EXCL|O_RDWR|O_NOFOLLOW,
                   SM_LOCAL_MODE_BITS);
         if (fd == -1) {
             err = fd;
diff --git a/hw/9pfs/virtio-9p.c b/hw/9pfs/virtio-9p.c
index 296f66f..8cbb8ae 100644
--- a/hw/9pfs/virtio-9p.c
+++ b/hw/9pfs/virtio-9p.c
@@ -658,7 +658,7 @@ static mode_t v9mode_to_mode(uint32_t mode, V9fsString *extension)
         ret |= S_IFIFO;
     }
     if (mode & P9_STAT_MODE_DEVICE) {
-        if (extension && extension->data[0] == 'c') {
+        if (extension->size && extension->data[0] == 'c') {
             ret |= S_IFCHR;
         } else {
             ret |= S_IFBLK;

^ permalink raw reply related	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2013-05-29 11:33 Aneesh Kumar K.V
@ 2013-05-31 18:48 ` Anthony Liguori
  0 siblings, 0 replies; 46+ messages in thread
From: Anthony Liguori @ 2013-05-31 18:48 UTC (permalink / raw)
  To: Aneesh Kumar K.V, Anthony Liguori, QEMU Developers

Pulled.  Thanks.

Regards,

Anthony Liguori

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2014-02-05  7:14 Aneesh Kumar K.V
  2014-02-05  7:58 ` Aneesh Kumar K.V
                   ` (2 more replies)
  0 siblings, 3 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2014-02-05  7:14 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers


Hi Anthony,

Please pull the below update for VirtFS

The following changes since commit 2f61120c10da9128357510debc8e66880cd2bfdc:

  Merge remote-tracking branch 'qmp-unstable/queue/qmp' into staging (2014-02-01 23:32:31 +0000)

are available in the git repository at:


  https://github.com/kvaneesh/qemu.git for-upstream

for you to fetch changes up to f8b7ee38b3ed4ec2da5cc0529cf0cf82c8589805:

  hw/9pfs: fix P9_STATS_GEN handling (2014-02-02 22:09:16 +0530)

----------------------------------------------------------------
Kirill A. Shutemov (4):
      hw/9pfs: fix error handing in local_ioc_getversion()
      hw/9pfs: handle undefined FS_IOC_GETVERSION case in handle_ioc_getversion()
      hw/9pfs: make get_st_gen() return ENOTTY error on special files
      hw/9pfs: fix P9_STATS_GEN handling

 hw/9pfs/cofile.c           |  4 ----
 hw/9pfs/virtio-9p-handle.c |  8 +++++++-
 hw/9pfs/virtio-9p-local.c  | 10 ++++++----
 hw/9pfs/virtio-9p-proxy.c  |  3 ++-
 hw/9pfs/virtio-9p.c        | 12 ++++++++++--
 5 files changed, 25 insertions(+), 12 deletions(-)

 -aneesh

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-02-05  7:14 Aneesh Kumar K.V
@ 2014-02-05  7:58 ` Aneesh Kumar K.V
  2014-02-10 18:48 ` Peter Maydell
  2014-02-10 19:21 ` Andreas Färber
  2 siblings, 0 replies; 46+ messages in thread
From: Aneesh Kumar K.V @ 2014-02-05  7:58 UTC (permalink / raw)
  To: Anthony Liguori, QEMU Developers


Adding the correct email address for Anthony.

-aneesh

"Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> writes:

> Hi Anthony,
>
> Please pull the below update for VirtFS
>
> The following changes since commit 2f61120c10da9128357510debc8e66880cd2bfdc:
>
>   Merge remote-tracking branch 'qmp-unstable/queue/qmp' into staging (2014-02-01 23:32:31 +0000)
>
> are available in the git repository at:
>
>
>   https://github.com/kvaneesh/qemu.git for-upstream
>
> for you to fetch changes up to f8b7ee38b3ed4ec2da5cc0529cf0cf82c8589805:
>
>   hw/9pfs: fix P9_STATS_GEN handling (2014-02-02 22:09:16 +0530)
>
> ----------------------------------------------------------------
> Kirill A. Shutemov (4):
>       hw/9pfs: fix error handing in local_ioc_getversion()
>       hw/9pfs: handle undefined FS_IOC_GETVERSION case in handle_ioc_getversion()
>       hw/9pfs: make get_st_gen() return ENOTTY error on special files
>       hw/9pfs: fix P9_STATS_GEN handling
>
>  hw/9pfs/cofile.c           |  4 ----
>  hw/9pfs/virtio-9p-handle.c |  8 +++++++-
>  hw/9pfs/virtio-9p-local.c  | 10 ++++++----
>  hw/9pfs/virtio-9p-proxy.c  |  3 ++-
>  hw/9pfs/virtio-9p.c        | 12 ++++++++++--
>  5 files changed, 25 insertions(+), 12 deletions(-)
>
>  -aneesh

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-02-05  7:14 Aneesh Kumar K.V
  2014-02-05  7:58 ` Aneesh Kumar K.V
@ 2014-02-10 18:48 ` Peter Maydell
  2014-02-10 19:21 ` Andreas Färber
  2 siblings, 0 replies; 46+ messages in thread
From: Peter Maydell @ 2014-02-10 18:48 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: Anthony Liguori, QEMU Developers

On 5 February 2014 07:14, Aneesh Kumar K.V
<aneesh.kumar@linux.vnet.ibm.com> wrote:
>
> Hi Anthony,
>
> Please pull the below update for VirtFS
>
> The following changes since commit 2f61120c10da9128357510debc8e66880cd2bfdc:
>
>   Merge remote-tracking branch 'qmp-unstable/queue/qmp' into staging (2014-02-01 23:32:31 +0000)
>
> are available in the git repository at:
>
>
>   https://github.com/kvaneesh/qemu.git for-upstream
>
> for you to fetch changes up to f8b7ee38b3ed4ec2da5cc0529cf0cf82c8589805:
>
>   hw/9pfs: fix P9_STATS_GEN handling (2014-02-02 22:09:16 +0530)

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-02-05  7:14 Aneesh Kumar K.V
  2014-02-05  7:58 ` Aneesh Kumar K.V
  2014-02-10 18:48 ` Peter Maydell
@ 2014-02-10 19:21 ` Andreas Färber
  2014-02-10 19:43   ` Peter Maydell
  2 siblings, 1 reply; 46+ messages in thread
From: Andreas Färber @ 2014-02-10 19:21 UTC (permalink / raw)
  To: Aneesh Kumar K.V, Peter Maydell; +Cc: QEMU Developers, Anthony Liguori

Hi Aneesh,

Please remember to label the pull request [PULL 0/m] and to thread the
actual commits as [PULL n/m]. We had to adopt our scripts, too.

Peter, please either enforce those rules or drop them for all of us!

Thanks,
Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-02-10 19:21 ` Andreas Färber
@ 2014-02-10 19:43   ` Peter Maydell
  2014-02-10 19:48     ` Andreas Färber
  0 siblings, 1 reply; 46+ messages in thread
From: Peter Maydell @ 2014-02-10 19:43 UTC (permalink / raw)
  To: Andreas Färber; +Cc: Aneesh Kumar K.V, Anthony Liguori, QEMU Developers

On 10 February 2014 19:21, Andreas Färber <afaerber@suse.de> wrote:
> Please remember to label the pull request [PULL 0/m] and to thread the
> actual commits as [PULL n/m]. We had to adopt our scripts, too.
>
> Peter, please either enforce those rules or drop them for all of us!

My workflow for applying pull requests doesn't technically
require this or check for it, and so I'm not going to
"enforce" this, since I might well not notice (and in this
case didn't). The rule is not for my benefit when applying
pulls, but for people who might be CC'd on patches forming
part of a pull request and who would otherwise not be able
to tell whether they could reasonably ignore them.

As usual we should:
(a) document our best practice:
 http://wiki.qemu.org/Contribute/SubmitAPullRequest
(b) politely nudge people if they have not followed it
 (and anybody who is adversely affected should feel free
 to do that; I don't have any particular greater standing
 here than you do); since this is pretty much always simply
 an occasional contributor who wasn't aware of something,
 a gentle nudge should be sufficient
(c) be open to reconsidering our practices if on balance the
 burden turns out to be greater than the benefit. (In this
 case personally I think the rule is a useful one.)

It's inevitably the case that some of our process isn't
enforced by technical means and so there will be occasional
accidental violations; we should in general assume good
faith. I'm not going to punitively refuse to apply pull
requests simply because they don't meet every detail of
what we prefer to do (though of course I will and
already have refused pulls which fail on significant points
like lack of signoff or review).

thanks
-- PMM

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-02-10 19:43   ` Peter Maydell
@ 2014-02-10 19:48     ` Andreas Färber
  2014-02-10 19:51       ` Peter Maydell
  0 siblings, 1 reply; 46+ messages in thread
From: Andreas Färber @ 2014-02-10 19:48 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Aneesh Kumar K.V, Anthony Liguori, QEMU Developers

Am 10.02.2014 20:43, schrieb Peter Maydell:
> On 10 February 2014 19:21, Andreas Färber <afaerber@suse.de> wrote:
>> Please remember to label the pull request [PULL 0/m] and to thread the
>> actual commits as [PULL n/m]. We had to adopt our scripts, too.
>>
>> Peter, please either enforce those rules or drop them for all of us!
> 
> My workflow for applying pull requests doesn't technically
> require this or check for it, and so I'm not going to
[snip]

Anthony said that his "patches" tool relies on the 0/x, and I thought
you were using the same...

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-02-10 19:48     ` Andreas Färber
@ 2014-02-10 19:51       ` Peter Maydell
  0 siblings, 0 replies; 46+ messages in thread
From: Peter Maydell @ 2014-02-10 19:51 UTC (permalink / raw)
  To: Andreas Färber; +Cc: Aneesh Kumar K.V, Anthony Liguori, QEMU Developers

On 10 February 2014 19:48, Andreas Färber <afaerber@suse.de> wrote:
> Am 10.02.2014 20:43, schrieb Peter Maydell:
>> On 10 February 2014 19:21, Andreas Färber <afaerber@suse.de> wrote:
>>> Please remember to label the pull request [PULL 0/m] and to thread the
>>> actual commits as [PULL n/m]. We had to adopt our scripts, too.
>>>
>>> Peter, please either enforce those rules or drop them for all of us!
>>
>> My workflow for applying pull requests doesn't technically
>> require this or check for it, and so I'm not going to
> [snip]
>
> Anthony said that his "patches" tool relies on the 0/x, and I thought
> you were using the same...

I was, but since the patches db isn't currently updating I
wrote a script which drives git directly and just wants the
"repo-url branchname" bit from the cover letter (and I find
the cover letters by textual search for the magic words that
git puts in pull requests).

thanks
-- PMM

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2014-03-07 15:16 Aneesh Kumar K.V
  2014-03-08 12:52 ` Peter Maydell
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2014-03-07 15:16 UTC (permalink / raw)
  To: anthony, peter.maydell; +Cc: qemu-devel

Hi,

Please pull the below update for VirtFS


The following changes since commit d5001cf787ad0514839a81d0f2e771e01e076e21:

  xilinx: Delete hw/include/xilinx.h (2014-02-26 14:54:45 +1000)

are available in the git repository at:

  https://github.com/kvaneesh/qemu.git for-upstream

for you to fetch changes up to 993c91a0e996346c7ee8fa2ca310cc76edb59e17:

  hw/9pfs: Include virtio-9p-device.o in build (2014-03-04 09:20:49 +0530)

----------------------------------------------------------------
Aneesh Kumar K.V (1):
      hw/9pfs: Include virtio-9p-device.o in build

Chen Gang (3):
      hw/9pfs/virtio-9p-local.c: move v9fs_string_free() to below "err_out:"
      hw/9pfs/virtio-9p-local.c: use snprintf() instead of sprintf()
      hw/9pfs: use g_strdup_printf() instead of PATH_MAX limitation

Markus Armbruster (1):
      fsdev: Fix overrun after readlink() fills buffer completely

 Makefile.objs                  |   5 -
 fsdev/Makefile.objs            |   4 +-
 fsdev/virtfs-proxy-helper.c    |   2 +-
 hw/9pfs/cofs.c                 |  48 +++++--
 hw/9pfs/virtio-9p-handle.c     |   9 +-
 hw/9pfs/virtio-9p-local.c      | 288 +++++++++++++++++++++++++++--------------
 hw/9pfs/virtio-9p-posix-acl.c  |  52 ++++++--
 hw/9pfs/virtio-9p-xattr-user.c |  27 +++-
 hw/9pfs/virtio-9p-xattr.c      |   9 +-
 hw/9pfs/virtio-9p-xattr.h      |  27 +++-
 hw/9pfs/virtio-9p.h            |   6 +-
 hw/Makefile.objs               |   2 +-
 12 files changed, 322 insertions(+), 157 deletions(-)

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-03-07 15:16 Aneesh Kumar K.V
@ 2014-03-08 12:52 ` Peter Maydell
  0 siblings, 0 replies; 46+ messages in thread
From: Peter Maydell @ 2014-03-08 12:52 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers, Anthony Liguori

On 7 March 2014 15:16, Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> wrote:
> Hi,
>
> Please pull the below update for VirtFS
>
>
> The following changes since commit d5001cf787ad0514839a81d0f2e771e01e076e21:
>
>   xilinx: Delete hw/include/xilinx.h (2014-02-26 14:54:45 +1000)
>
> are available in the git repository at:
>
>   https://github.com/kvaneesh/qemu.git for-upstream
>
> for you to fetch changes up to 993c91a0e996346c7ee8fa2ca310cc76edb59e17:
>
>   hw/9pfs: Include virtio-9p-device.o in build (2014-03-04 09:20:49 +0530)

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2014-09-04 16:01 Aneesh Kumar K.V
  2014-09-04 18:21 ` Peter Maydell
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2014-09-04 16:01 UTC (permalink / raw)
  To: anthony, peter.maydell; +Cc: qemu-devel, Aneesh Kumar K.V

The following changes since commit 30eaca3acdf17d7bcbd1213eb149c02037edfb0b:

  Merge remote-tracking branch 'remotes/spice/tags/pull-spice-20140902-1' into staging (2014-09-02 10:26:10 +0100)

are available in the git repository at:


  https://github.com/kvaneesh/qemu.git for-upstream

for you to fetch changes up to 840a1bf2832f5783d1070547fcb460216fc219e5:

  hw/9pfs: Don't return type from host in readdir on local 9p filesystem (2014-09-04 10:51:13 -0500)

----------------------------------------------------------------
Aneesh Kumar K.V (1):
      hw/9pfs: Use little-endian format for xattr values

Bastian Blank (1):
      hw/9pfs: Don't return type from host in readdir on local 9p filesystem

 hw/9pfs/virtio-9p-local.c | 49 +++++++++++++++++++++++------------------------
 1 file changed, 24 insertions(+), 25 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2014-09-04 16:01 Aneesh Kumar K.V
@ 2014-09-04 18:21 ` Peter Maydell
  0 siblings, 0 replies; 46+ messages in thread
From: Peter Maydell @ 2014-09-04 18:21 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers, Anthony Liguori

On 4 September 2014 17:01, Aneesh Kumar K.V
<aneesh.kumar@linux.vnet.ibm.com> wrote:
> The following changes since commit 30eaca3acdf17d7bcbd1213eb149c02037edfb0b:
>
>   Merge remote-tracking branch 'remotes/spice/tags/pull-spice-20140902-1' into staging (2014-09-02 10:26:10 +0100)
>
> are available in the git repository at:
>
>
>   https://github.com/kvaneesh/qemu.git for-upstream
>
> for you to fetch changes up to 840a1bf2832f5783d1070547fcb460216fc219e5:
>
>   hw/9pfs: Don't return type from host in readdir on local 9p filesystem (2014-09-04 10:51:13 -0500)
>
> ----------------------------------------------------------------
> Aneesh Kumar K.V (1):
>       hw/9pfs: Use little-endian format for xattr values
>
> Bastian Blank (1):
>       hw/9pfs: Don't return type from host in readdir on local 9p filesystem
>
>  hw/9pfs/virtio-9p-local.c | 49 +++++++++++++++++++++++------------------------
>  1 file changed, 24 insertions(+), 25 deletions(-)
>
> --
> 1.9.1

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2015-03-16 10:09 Aneesh Kumar K.V
  2015-03-16 13:55 ` Peter Maydell
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2015-03-16 10:09 UTC (permalink / raw)
  To: anthony, peter.maydell; +Cc: qemu-devel, Aneesh Kumar K.V


Hi,

Please pull the below update for VirtFS

The following changes since commit ee74801035b0b5f1fdfd4e31d3a53f511f91c804:

  Merge remote-tracking branch 'remotes/lalrae/tags/mips-20150311' into staging (2015-03-11 18:22:15 +0000)

are available in the git repository at:

  https://github.com/kvaneesh/qemu.git for-upstream

for you to fetch changes up to 4ed7b2c3a78f785a1bcbe575e08c379b166723e3:

  virtio: Fix memory leaks reported by Coverity (2015-03-16 13:32:24 +0530)

----------------------------------------------------------------
Michael Tokarev (2):
      9pfs-local: simplify/optimize local_mapped_attr_path()
      9pfs-proxy: tiny cleanups in proxy_pwritev and proxy_preadv

Shannon Zhao (3):
      hw/9pfs/virtio-9p-posix-acl: Fix out-of-bounds access
      fsdev/virtfs-proxy-helper: Fix improper use of negative value
      virtfs-proxy: Fix possible overflow

Stefan Weil (1):
      virtio: Fix memory leaks reported by Coverity

 fsdev/virtfs-proxy-helper.c   |  4 ++++
 hw/9pfs/virtio-9p-local.c     | 52 ++++++++++++++++---------------------------
 hw/9pfs/virtio-9p-posix-acl.c |  2 +-
 hw/9pfs/virtio-9p-proxy.c     | 22 +++++++++---------
 4 files changed, 36 insertions(+), 44 deletions(-)

-- 
2.1.0

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2015-03-16 10:09 Aneesh Kumar K.V
@ 2015-03-16 13:55 ` Peter Maydell
  0 siblings, 0 replies; 46+ messages in thread
From: Peter Maydell @ 2015-03-16 13:55 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers, Anthony Liguori

On 16 March 2015 at 10:09, Aneesh Kumar K.V
<aneesh.kumar@linux.vnet.ibm.com> wrote:
>
> Hi,
>
> Please pull the below update for VirtFS
>
> The following changes since commit ee74801035b0b5f1fdfd4e31d3a53f511f91c804:
>
>   Merge remote-tracking branch 'remotes/lalrae/tags/mips-20150311' into staging (2015-03-11 18:22:15 +0000)
>
> are available in the git repository at:
>
>   https://github.com/kvaneesh/qemu.git for-upstream
>
> for you to fetch changes up to 4ed7b2c3a78f785a1bcbe575e08c379b166723e3:

Nudge: this is not a signed pull request. I am currently still
accepting and applying these, but after 2.3 is out I plan to
start rejecting them. You should update your workflow (ask me
if you're not sure how, it's not too much different).

>   virtio: Fix memory leaks reported by Coverity (2015-03-16 13:32:24 +0530)

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 46+ messages in thread

* [Qemu-devel] [PULL] VirtFS update
@ 2015-06-16 15:29 Aneesh Kumar K.V
  2015-06-17 11:26 ` Peter Maydell
  0 siblings, 1 reply; 46+ messages in thread
From: Aneesh Kumar K.V @ 2015-06-16 15:29 UTC (permalink / raw)
  To: anthony, peter.maydell; +Cc: qemu-devel, Aneesh Kumar K.V

The following changes since commit 93f6d1c16036aaf34055d16f54ea770fb8d6d280:

  Merge remote-tracking branch 'remotes/kraxel/tags/pull-vga-20150615-1' into staging (2015-06-16 10:35:43 +0100)

are available in the git repository at:

  https://github.com/kvaneesh/qemu.git tags/for-upstream-signed

for you to fetch changes up to f8d30a4f96d6c3a12e692d2e69b8fe4734b916c6:

  virtfs-proxy-helper: fail gracefully if socket path is too long (2015-06-16 20:32:29 +0530)

----------------------------------------------------------------
VirtFS update:

* Fix for virtfs-proxy-helper crash
* Gracefully handle the error condition on input validation in virtfs-proxy-helper

----------------------------------------------------------------
Stefan Hajnoczi (2):
      virtfs-proxy-helper: add missing long option terminator
      virtfs-proxy-helper: fail gracefully if socket path is too long

 fsdev/virtfs-proxy-helper.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 46+ messages in thread

* Re: [Qemu-devel] [PULL] VirtFS update
  2015-06-16 15:29 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
@ 2015-06-17 11:26 ` Peter Maydell
  0 siblings, 0 replies; 46+ messages in thread
From: Peter Maydell @ 2015-06-17 11:26 UTC (permalink / raw)
  To: Aneesh Kumar K.V; +Cc: QEMU Developers, Anthony Liguori

On 16 June 2015 at 16:29, Aneesh Kumar K.V
<aneesh.kumar@linux.vnet.ibm.com> wrote:
> The following changes since commit 93f6d1c16036aaf34055d16f54ea770fb8d6d280:
>
>   Merge remote-tracking branch 'remotes/kraxel/tags/pull-vga-20150615-1' into staging (2015-06-16 10:35:43 +0100)
>
> are available in the git repository at:
>
>   https://github.com/kvaneesh/qemu.git tags/for-upstream-signed
>
> for you to fetch changes up to f8d30a4f96d6c3a12e692d2e69b8fe4734b916c6:
>
>   virtfs-proxy-helper: fail gracefully if socket path is too long (2015-06-16 20:32:29 +0530)
>
> ----------------------------------------------------------------
> VirtFS update:
>
> * Fix for virtfs-proxy-helper crash
> * Gracefully handle the error condition on input validation in virtfs-proxy-helper
>
> ----------------------------------------------------------------

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 46+ messages in thread

end of thread, other threads:[~2015-06-17 11:26 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-12-05  9:04 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
2011-12-05  9:04 ` [Qemu-devel] [PATCH 1/5] hw/9pfs: Improve portability to older systems Aneesh Kumar K.V
2011-12-05  9:04 ` [Qemu-devel] [PATCH 2/5] hw/9pfs: use migration blockers to prevent live migration when virtfs export path is mounted Aneesh Kumar K.V
2011-12-05  9:04 ` [Qemu-devel] [PATCH 3/5] hw/9pfs: Reset server state during TVERSION Aneesh Kumar K.V
2011-12-05  9:04 ` [Qemu-devel] [PATCH 4/5] hw/9pfs: Add qdev.reset callback for virtio-9p-pci device Aneesh Kumar K.V
2011-12-05  9:04 ` [Qemu-devel] [PATCH 5/5] hw/9pfs: Use the correct file descriptor in Fsdriver Callback Aneesh Kumar K.V
  -- strict thread matches above, loose matches on Subject: below --
2015-06-16 15:29 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
2015-06-17 11:26 ` Peter Maydell
2015-03-16 10:09 Aneesh Kumar K.V
2015-03-16 13:55 ` Peter Maydell
2014-09-04 16:01 Aneesh Kumar K.V
2014-09-04 18:21 ` Peter Maydell
2014-03-07 15:16 Aneesh Kumar K.V
2014-03-08 12:52 ` Peter Maydell
2014-02-05  7:14 Aneesh Kumar K.V
2014-02-05  7:58 ` Aneesh Kumar K.V
2014-02-10 18:48 ` Peter Maydell
2014-02-10 19:21 ` Andreas Färber
2014-02-10 19:43   ` Peter Maydell
2014-02-10 19:48     ` Andreas Färber
2014-02-10 19:51       ` Peter Maydell
2013-05-29 11:33 Aneesh Kumar K.V
2013-05-31 18:48 ` Anthony Liguori
2012-12-05 16:37 Aneesh Kumar K.V
2012-12-10 16:58 ` Anthony Liguori
2012-07-31 17:27 Aneesh Kumar K.V
2012-08-03 20:45 ` Anthony Liguori
2012-02-26 17:44 Aneesh Kumar K.V
2012-02-28 15:33 ` Anthony Liguori
2012-01-30 16:14 Aneesh Kumar K.V
2012-02-07 12:36 ` Aneesh Kumar K.V
2012-01-23 13:02 Aneesh Kumar K.V
2012-01-23 17:05 ` Anthony Liguori
2012-01-23 18:25   ` Aneesh Kumar K.V
2011-12-21  7:57 Aneesh Kumar K.V
2011-12-27 16:36 ` Anthony Liguori
2011-12-17 13:31 Aneesh Kumar K.V
2011-11-02 10:22 [Qemu-devel] [PULL] Virtfs update Aneesh Kumar K.V
2011-11-02 12:42 ` Anthony Liguori
2011-11-02 14:09   ` Aneesh Kumar K.V
2011-11-03 13:09     ` Anthony Liguori
2011-11-02 15:55   ` Markus Armbruster
2011-09-27  9:11 [Qemu-devel] [PULL] VirtFS update Aneesh Kumar K.V
2011-09-29 20:05 ` Anthony Liguori
2011-09-13 13:27 Aneesh Kumar K.V
2011-09-15 19:10 ` Anthony Liguori

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).