On 06/07/2018 07:43 AM, Tiwei Bie wrote:
On Wed, Jun 06, 2018 at 02:31:24PM +0200, Maxime Coquelin wrote:
[...]
+
+static int
+virtio_dev_args(struct rte_eth_dev *dev)
+{
+       struct rte_kvargs *kvlist;
+       struct rte_devargs *devargs;
+       const char *valid_args[] = {
+               VIRTIO_SIMPLE_TX_SUPPORT,
+               NULL,
+       };
+       int ret;
+       int i;
+
+       devargs = dev->device->devargs;
+       if (!devargs)
+               return 0; /* return success */
+
+       kvlist = rte_kvargs_parse(devargs->args, valid_args);
+       if (kvlist == NULL)
+               return -EINVAL;

Virtio-user has defined some other mandatory devargs.
The parse will fail when other devargs have been
specified.

Ok, so IIUC, just returning 0 here should do the trick, right?

+
+        /* Process parameters. */
+       for (i = 0; (valid_args[i] != NULL); ++i) {

There is an extra space before the comment.
The () around `valid_args[i] != NULL` isn't necessary.

Fixed.

+               if (rte_kvargs_count(kvlist, valid_args[i])) {
+                       ret = rte_kvargs_process(kvlist, valid_args[i],
+                                                virtio_dev_args_check, dev);
+                       if (ret) {
+                               rte_kvargs_free(kvlist);
+                               return ret;
+                       }
+               }
+       }
+       rte_kvargs_free(kvlist);
+
+       return 0;
+}
+
[...]


Thanks!
Maxime

Reply via email to