diff mbox

[v10-fix,1/1] fixup! Add the vhost-user netdev backend to the command line

Message ID 20140610141631.27328.63686.stgit@3820
State New
Headers show

Commit Message

Nikolay Nikolaev June 10, 2014, 2:17 p.m. UTC
Fixes remarks:
 - rever vhost-force to vhostforce (consistent with tap)
 - removed has_unsupported member from VhostUserChardevProps
 - removed double error reporting when parsing chardev options

Signed-off-by: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com>
---
 net/vhost-user.c |   18 ++++++------------
 qapi-schema.json |    4 ++--
 2 files changed, 8 insertions(+), 14 deletions(-)

Comments

Eric Blake June 10, 2014, 2:25 p.m. UTC | #1
On 06/10/2014 08:17 AM, Nikolay Nikolaev wrote:
> Fixes remarks:
>  - rever vhost-force to vhostforce (consistent with tap)

s/rever/change/

>  - removed has_unsupported member from VhostUserChardevProps
>  - removed double error reporting when parsing chardev options
> 
> Signed-off-by: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com>
> ---
>  net/vhost-user.c |   18 ++++++------------
>  qapi-schema.json |    4 ++--
>  2 files changed, 8 insertions(+), 14 deletions(-)

Reviewed-by: Eric Blake <eblake@redhat.com>
Michael S. Tsirkin June 11, 2014, 3:38 p.m. UTC | #2
On Tue, Jun 10, 2014 at 05:17:05PM +0300, Nikolay Nikolaev wrote:
> Fixes remarks:
>  - rever vhost-force to vhostforce (consistent with tap)
>  - removed has_unsupported member from VhostUserChardevProps
>  - removed double error reporting when parsing chardev options
> 
> Signed-off-by: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com>

Applied, thanks everyone.
Pls take a look at the vhost branch and confirm everything's
in order before I merge this upstream.

Note: you don't need 1/1 if there's a single patch.

> ---
>  net/vhost-user.c |   18 ++++++------------
>  qapi-schema.json |    4 ++--
>  2 files changed, 8 insertions(+), 14 deletions(-)
> 
> diff --git a/net/vhost-user.c b/net/vhost-user.c
> index 32b78fb..24e050c 100644
> --- a/net/vhost-user.c
> +++ b/net/vhost-user.c
> @@ -26,7 +26,6 @@ typedef struct VhostUserChardevProps {
>      bool is_socket;
>      bool is_unix;
>      bool is_server;
> -    bool has_unsupported;
>  } VhostUserChardevProps;
>  
>  VHostNetState *vhost_user_get_vhost_net(NetClientState *nc)
> @@ -172,7 +171,6 @@ static int net_vhost_chardev_opts(const char *name, const char *value,
>          error_report("vhost-user does not support a chardev"
>                       " with the following option:\n %s = %s",
>                       name, value);
> -        props->has_unsupported = true;
>          return -1;
>      }
>      return 0;
> @@ -190,7 +188,9 @@ static CharDriverState *net_vhost_parse_chardev(const NetdevVhostUserOptions *op
>  
>      /* inspect chardev opts */
>      memset(&props, 0, sizeof(props));
> -    qemu_opt_foreach(chr->opts, net_vhost_chardev_opts, &props, false);
> +    if (qemu_opt_foreach(chr->opts, net_vhost_chardev_opts, &props, true) != 0) {
> +        return NULL;
> +    }
>  
>      if (!props.is_socket || !props.is_unix) {
>          error_report("chardev \"%s\" is not a unix socket",
> @@ -198,12 +198,6 @@ static CharDriverState *net_vhost_parse_chardev(const NetdevVhostUserOptions *op
>          return NULL;
>      }
>  
> -    if (props.has_unsupported) {
> -        error_report("chardev \"%s\" has an unsupported option",
> -                opts->chardev);
> -        return NULL;
> -    }
> -
>      qemu_chr_fe_claim_no_fail(chr);
>  
>      return chr;
> @@ -253,9 +247,9 @@ int net_init_vhost_user(const NetClientOptions *opts, const char *name,
>          return -1;
>      }
>  
> -    /* vhost-force for non-MSIX */
> -    if (vhost_user_opts->has_vhost_force) {
> -        vhostforce = vhost_user_opts->vhost_force;
> +    /* vhostforce for non-MSIX */
> +    if (vhost_user_opts->has_vhostforce) {
> +        vhostforce = vhost_user_opts->vhostforce;
>      } else {
>          vhostforce = false;
>      }
> diff --git a/qapi-schema.json b/qapi-schema.json
> index f062ce9..0837fc5 100644
> --- a/qapi-schema.json
> +++ b/qapi-schema.json
> @@ -3273,14 +3273,14 @@
>  #
>  # @chardev: name of a unix socket chardev
>  #
> -# @vhost-force: #optional vhost on for non-MSIX virtio guests (default: false).
> +# @vhostforce: #optional vhost on for non-MSIX virtio guests (default: false).
>  #
>  # Since 2.1
>  ##
>  { 'type': 'NetdevVhostUserOptions',
>    'data': {
>      'chardev':        'str',
> -    '*vhost-force':    'bool' } }
> +    '*vhostforce':    'bool' } }
>  
>  ##
>  # @NetClientOptions
Nikolay Nikolaev June 11, 2014, 10:33 p.m. UTC | #3
Hello,



On Wed, Jun 11, 2014 at 6:38 PM, Michael S. Tsirkin <mst@redhat.com> wrote:
> On Tue, Jun 10, 2014 at 05:17:05PM +0300, Nikolay Nikolaev wrote:
>> Fixes remarks:
>>  - rever vhost-force to vhostforce (consistent with tap)
>>  - removed has_unsupported member from VhostUserChardevProps
>>  - removed double error reporting when parsing chardev options
>>
>> Signed-off-by: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com>
>
> Applied, thanks everyone.
> Pls take a look at the vhost branch and confirm everything's
> in order before I merge this upstream.
>

I have checked out git://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git,
branch 'vhost' and rebased on top of branch 'numa' in order to test
it.
However I found out that instead of "-object memory-file" I have to
use "-object memory-backend-file". If this is the syntax that is going
to stay then I'll have to send fixups to 12, 15 and 18. Please
confirm.

regards,
Nikolay Nikolaev

> Note: you don't need 1/1 if there's a single patch.
>
>> ---
>>  net/vhost-user.c |   18 ++++++------------
>>  qapi-schema.json |    4 ++--
>>  2 files changed, 8 insertions(+), 14 deletions(-)
>>
>> diff --git a/net/vhost-user.c b/net/vhost-user.c
>> index 32b78fb..24e050c 100644
>> --- a/net/vhost-user.c
>> +++ b/net/vhost-user.c
>> @@ -26,7 +26,6 @@ typedef struct VhostUserChardevProps {
>>      bool is_socket;
>>      bool is_unix;
>>      bool is_server;
>> -    bool has_unsupported;
>>  } VhostUserChardevProps;
>>
>>  VHostNetState *vhost_user_get_vhost_net(NetClientState *nc)
>> @@ -172,7 +171,6 @@ static int net_vhost_chardev_opts(const char *name, const char *value,
>>          error_report("vhost-user does not support a chardev"
>>                       " with the following option:\n %s = %s",
>>                       name, value);
>> -        props->has_unsupported = true;
>>          return -1;
>>      }
>>      return 0;
>> @@ -190,7 +188,9 @@ static CharDriverState *net_vhost_parse_chardev(const NetdevVhostUserOptions *op
>>
>>      /* inspect chardev opts */
>>      memset(&props, 0, sizeof(props));
>> -    qemu_opt_foreach(chr->opts, net_vhost_chardev_opts, &props, false);
>> +    if (qemu_opt_foreach(chr->opts, net_vhost_chardev_opts, &props, true) != 0) {
>> +        return NULL;
>> +    }
>>
>>      if (!props.is_socket || !props.is_unix) {
>>          error_report("chardev \"%s\" is not a unix socket",
>> @@ -198,12 +198,6 @@ static CharDriverState *net_vhost_parse_chardev(const NetdevVhostUserOptions *op
>>          return NULL;
>>      }
>>
>> -    if (props.has_unsupported) {
>> -        error_report("chardev \"%s\" has an unsupported option",
>> -                opts->chardev);
>> -        return NULL;
>> -    }
>> -
>>      qemu_chr_fe_claim_no_fail(chr);
>>
>>      return chr;
>> @@ -253,9 +247,9 @@ int net_init_vhost_user(const NetClientOptions *opts, const char *name,
>>          return -1;
>>      }
>>
>> -    /* vhost-force for non-MSIX */
>> -    if (vhost_user_opts->has_vhost_force) {
>> -        vhostforce = vhost_user_opts->vhost_force;
>> +    /* vhostforce for non-MSIX */
>> +    if (vhost_user_opts->has_vhostforce) {
>> +        vhostforce = vhost_user_opts->vhostforce;
>>      } else {
>>          vhostforce = false;
>>      }
>> diff --git a/qapi-schema.json b/qapi-schema.json
>> index f062ce9..0837fc5 100644
>> --- a/qapi-schema.json
>> +++ b/qapi-schema.json
>> @@ -3273,14 +3273,14 @@
>>  #
>>  # @chardev: name of a unix socket chardev
>>  #
>> -# @vhost-force: #optional vhost on for non-MSIX virtio guests (default: false).
>> +# @vhostforce: #optional vhost on for non-MSIX virtio guests (default: false).
>>  #
>>  # Since 2.1
>>  ##
>>  { 'type': 'NetdevVhostUserOptions',
>>    'data': {
>>      'chardev':        'str',
>> -    '*vhost-force':    'bool' } }
>> +    '*vhostforce':    'bool' } }
>>
>>  ##
>>  # @NetClientOptions
>
> --
> You received this message because you are subscribed to the Google Groups "Snabb Switch development" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to snabb-devel+unsubscribe@googlegroups.com.
> To post to this group, send an email to snabb-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/snabb-devel.
diff mbox

Patch

diff --git a/net/vhost-user.c b/net/vhost-user.c
index 32b78fb..24e050c 100644
--- a/net/vhost-user.c
+++ b/net/vhost-user.c
@@ -26,7 +26,6 @@  typedef struct VhostUserChardevProps {
     bool is_socket;
     bool is_unix;
     bool is_server;
-    bool has_unsupported;
 } VhostUserChardevProps;
 
 VHostNetState *vhost_user_get_vhost_net(NetClientState *nc)
@@ -172,7 +171,6 @@  static int net_vhost_chardev_opts(const char *name, const char *value,
         error_report("vhost-user does not support a chardev"
                      " with the following option:\n %s = %s",
                      name, value);
-        props->has_unsupported = true;
         return -1;
     }
     return 0;
@@ -190,7 +188,9 @@  static CharDriverState *net_vhost_parse_chardev(const NetdevVhostUserOptions *op
 
     /* inspect chardev opts */
     memset(&props, 0, sizeof(props));
-    qemu_opt_foreach(chr->opts, net_vhost_chardev_opts, &props, false);
+    if (qemu_opt_foreach(chr->opts, net_vhost_chardev_opts, &props, true) != 0) {
+        return NULL;
+    }
 
     if (!props.is_socket || !props.is_unix) {
         error_report("chardev \"%s\" is not a unix socket",
@@ -198,12 +198,6 @@  static CharDriverState *net_vhost_parse_chardev(const NetdevVhostUserOptions *op
         return NULL;
     }
 
-    if (props.has_unsupported) {
-        error_report("chardev \"%s\" has an unsupported option",
-                opts->chardev);
-        return NULL;
-    }
-
     qemu_chr_fe_claim_no_fail(chr);
 
     return chr;
@@ -253,9 +247,9 @@  int net_init_vhost_user(const NetClientOptions *opts, const char *name,
         return -1;
     }
 
-    /* vhost-force for non-MSIX */
-    if (vhost_user_opts->has_vhost_force) {
-        vhostforce = vhost_user_opts->vhost_force;
+    /* vhostforce for non-MSIX */
+    if (vhost_user_opts->has_vhostforce) {
+        vhostforce = vhost_user_opts->vhostforce;
     } else {
         vhostforce = false;
     }
diff --git a/qapi-schema.json b/qapi-schema.json
index f062ce9..0837fc5 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -3273,14 +3273,14 @@ 
 #
 # @chardev: name of a unix socket chardev
 #
-# @vhost-force: #optional vhost on for non-MSIX virtio guests (default: false).
+# @vhostforce: #optional vhost on for non-MSIX virtio guests (default: false).
 #
 # Since 2.1
 ##
 { 'type': 'NetdevVhostUserOptions',
   'data': {
     'chardev':        'str',
-    '*vhost-force':    'bool' } }
+    '*vhostforce':    'bool' } }
 
 ##
 # @NetClientOptions