summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorLu Qiuwen <[email protected]>2023-06-07 09:46:18 +0800
committerLu Qiuwen <[email protected]>2023-06-07 09:46:18 +0800
commit6508dfaec46e3c838a5331489d8f366c948b4488 (patch)
tree13bfa90bc0858780190022cda1eeeb52f4c1d57a /app
parent8ac169b1f1f51e0674119eafeafc8fed402ed4fd (diff)
增加对AMD ZEN1架构的支持。
Diffstat (limited to 'app')
-rw-r--r--app/src/marsio.c5
-rw-r--r--app/src/rawio.c17
2 files changed, 7 insertions, 15 deletions
diff --git a/app/src/marsio.c b/app/src/marsio.c
index 7c4bf17..aca139f 100644
--- a/app/src/marsio.c
+++ b/app/src/marsio.c
@@ -754,6 +754,7 @@ struct mr_vdev * marsio_open_device(struct mr_instance * instance, const char *
struct rte_mp_msg mp_req_msg = {};
struct rte_mp_reply mp_reply = {};
struct ctrl_msg_vdev_open_request * req_msg = (struct ctrl_msg_vdev_open_request *)mp_req_msg.param;
+ struct mr_vdev * mr_vdev = NULL;
snprintf((char *)req_msg->devsym, sizeof(req_msg->devsym) - 1, "%s", devsym);
snprintf((char *)req_msg->appsym, sizeof(req_msg->appsym) - 1, "%s", instance->appsym);
@@ -762,7 +763,7 @@ struct mr_vdev * marsio_open_device(struct mr_instance * instance, const char *
const struct timespec wait_timespec = {
.tv_nsec = 0,
- .tv_sec = 1,
+ .tv_sec = 30,
};
/* make request and wait the response */
@@ -786,7 +787,7 @@ struct mr_vdev * marsio_open_device(struct mr_instance * instance, const char *
goto errout;
}
- struct mr_vdev * mr_vdev = &instance->vdevs[instance->nr_vdevs];
+ mr_vdev = &instance->vdevs[instance->nr_vdevs];
mr_vdev->vdi = (struct vdev_instance *)msg_resp->ptr_vdi;
mr_vdev->nr_rxstream = msg_resp->nr_rxstream;
mr_vdev->nr_txstream = msg_resp->nr_txstream;
diff --git a/app/src/rawio.c b/app/src/rawio.c
index 4eaba21..492c55d 100644
--- a/app/src/rawio.c
+++ b/app/src/rawio.c
@@ -187,9 +187,11 @@ int marsio_send_burst_with_options(struct mr_sendpath * sendpath, queue_id_t sid
distributer_caculate(sendpath->instance->dist_object, __mbufs, nr_mbufs);
}
- hash_t hash[1];
+ hash_t hash[MR_BURST_MAX];
for (int i = 0; i < nr_mbufs; i++)
+ {
hash[i] = __mbufs[i]->hash.usr;
+ }
/* 线程运行情况统计 */
if (thread_info.instance != NULL)
@@ -199,18 +201,7 @@ int marsio_send_burst_with_options(struct mr_sendpath * sendpath, queue_id_t sid
thread_info.instance->stat[tid].packet_send_length = packet_total_len(__mbufs, nr_mbufs);
}
- /* 提交到队列前,应用不再具有访问权限,对mbuf进行保护 */
- PROTECT_rte_mbuf_poison_bulk(__mbufs, nr_mbufs);
-
- if (options & MARSIO_SEND_OPT_CTRL)
- {
- vnode_mirror_enqueue_bulk(sendpath->target_vdi->vnode_ltx_prod, sid, __mbufs, hash, nr_mbufs);
- }
- else
- {
- vnode_mirror_enqueue_bulk(sendpath->target_vdi->vnode_tx_prod, sid, __mbufs, hash, nr_mbufs);
- }
-
+ vnode_mirror_enqueue_bulk(sendpath->target_vdi->vnode_tx_prod, sid, __mbufs, hash, nr_mbufs);
return RT_SUCCESS;
}