git.droids-corp.org
/
dpdk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
net/bnxt: support 58818 chip family
[dpdk.git]
/
examples
/
vhost
/
ioat.c
diff --git
a/examples/vhost/ioat.c
b/examples/vhost/ioat.c
index
b2c74f6
..
71d8a1f
100644
(file)
--- a/
examples/vhost/ioat.c
+++ b/
examples/vhost/ioat.c
@@
-1,9
+1,11
@@
/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(c) 2010-2020 Intel Corporation
*/
/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(c) 2010-2020 Intel Corporation
*/
+
+#include <sys/uio.h>
+#ifdef RTE_RAW_IOAT
#include <rte_rawdev.h>
#include <rte_ioat_rawdev.h>
#include <rte_rawdev.h>
#include <rte_ioat_rawdev.h>
-#include <sys/uio.h>
#include "ioat.h"
#include "main.h"
#include "ioat.h"
#include "main.h"
@@
-36,7
+38,7
@@
open_ioat(const char *value)
int ret = 0;
uint16_t i = 0;
char *dma_arg[MAX_VHOST_DEVICE];
int ret = 0;
uint16_t i = 0;
char *dma_arg[MAX_VHOST_DEVICE];
-
uint8_
t args_nr;
+
in
t args_nr;
while (isblank(*addrs))
addrs++;
while (isblank(*addrs))
addrs++;
@@
-54,9
+56,18
@@
open_ioat(const char *value)
}
args_nr = rte_strsplit(substr, strlen(substr),
dma_arg, MAX_VHOST_DEVICE, ',');
}
args_nr = rte_strsplit(substr, strlen(substr),
dma_arg, MAX_VHOST_DEVICE, ',');
- do {
+ if (args_nr <= 0) {
+ ret = -1;
+ goto out;
+ }
+ while (i < args_nr) {
char *arg_temp = dma_arg[i];
char *arg_temp = dma_arg[i];
- rte_strsplit(arg_temp, strlen(arg_temp), ptrs, 2, '@');
+ uint8_t sub_nr;
+ sub_nr = rte_strsplit(arg_temp, strlen(arg_temp), ptrs, 2, '@');
+ if (sub_nr != 2) {
+ ret = -1;
+ goto out;
+ }
start = strstr(ptrs[0], "txd");
if (start == NULL) {
start = strstr(ptrs[0], "txd");
if (start == NULL) {
@@
-105,7
+116,7
@@
open_ioat(const char *value)
dma_info->nr++;
i++;
dma_info->nr++;
i++;
- }
while (i < args_nr);
+ }
out:
free(input);
return ret;
out:
free(input);
return ret;
@@
-199,3
+210,5
@@
ioat_check_completed_copies_cb(int vid, uint16_t queue_id,
/* Opaque data is not supported */
return -1;
}
/* Opaque data is not supported */
return -1;
}
+
+#endif /* RTE_RAW_IOAT */