qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 2/2] [virtio-9p] Implement TLERROR/RLERROR.


From: Arun R Bharadwaj
Subject: Re: [Qemu-devel] [PATCH 2/2] [virtio-9p] Implement TLERROR/RLERROR.
Date: Tue, 13 Jul 2010 18:57:13 +0530
User-agent: Mutt/1.5.20 (2009-06-14)

* Aneesh Kumar K.V <address@hidden> [2010-07-13 18:41:18]:

> On Tuesday 13 July 2010 04:26 PM, Arun R Bharadwaj wrote:
> >* Arun R Bharadwaj<address@hidden>  [2010-07-13 16:24:41]:
> >
> >This patch implements TLERROR/RLERROR in the qemu 9P server.
> >
> >Signed-off-by: Arun R Bharadwaj<address@hidden>
> >---
> >  hw/virtio-9p.c |   19 +++++++++++++------
> >  hw/virtio-9p.h |    2 ++
> >  2 files changed, 15 insertions(+), 6 deletions(-)
> >
> >Index: qemu/hw/virtio-9p.h
> >===================================================================
> >--- qemu.orig/hw/virtio-9p.h
> >+++ qemu/hw/virtio-9p.h
> >@@ -13,6 +13,8 @@
> >  #define VIRTIO_9P_MOUNT_TAG 0
> >
> >  enum {
> >+    P9_TLERROR = 6,
> >+    P9_RLERROR,
> >      P9_TVERSION = 100,
> >      P9_RVERSION,
> >      P9_TAUTH = 102,
> >Index: qemu/hw/virtio-9p.c
> >===================================================================
> >--- qemu.orig/hw/virtio-9p.c
> >+++ qemu/hw/virtio-9p.c
> >@@ -744,17 +744,24 @@ static void complete_pdu(V9fsState *s, V
> >      int8_t id = pdu->id + 1; /* Response */
> >
> >      if (len<  0) {
> >-        V9fsString str;
> >          int err = -len;
> >+        len = 7;
> >
> >-        str.data = strerror(err);
> >-        str.size = strlen(str.data);
> >+        if (s->proto_version != V9FS_PROTO_2000L) {
> >+            V9fsString str;
> >+
> >+            str.data = strerror(err);
> >+            str.size = strlen(str.data);
> >+
> >+            len += pdu_marshal(pdu, len, "s",&str);
> >+            id = P9_RERROR;
> >+        }
> >
> >-        len = 7;
> >-        len += pdu_marshal(pdu, len, "s",&str);
> >          len += pdu_marshal(pdu, len, "d", err);
> >
> >-        id = P9_RERROR;
> >+        if (s->proto_version == V9FS_PROTO_2000L) {
> >+            id = P9_RLERROR;
> >+        }
> >      }
> 
> I guess this can go in the else part of the above if loop
> ie
> 
> if (s->proto_version != V9FS_PROTO_2000L) {
> 
>  id = P9_RERROR;
> } else {
> id = P9_RLERROR;
> }
> 

Sure. That works fine.

> 
> -aneesh



reply via email to

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